Skip to content

Latest commit

 

History

History
546 lines (290 loc) · 33.2 KB

CHANGELOG.md

File metadata and controls

546 lines (290 loc) · 33.2 KB

Release Notes

0.40.0 (2023-12-17)

⚠ BREAKING CHANGES

  • The enum WriteRel::OutputMode had an option change from OUTPUT_MODE_MODIFIED_TUPLES to OUTPUT_MODE_MODIFIED_RECORDS
  • The message AggregateFunction.ReferenceRel has moved to ReferenceRel.

Features

0.39.0 (2023-11-26)

⚠ BREAKING CHANGES

    • Map keys may be repeated.
  • Map keys must not be NULL.
  • The map key type may be nullable.

This is based on the current restrictions found in the wild.

DuckDB, Velox, Spark, and Acero all reject attempts to provide NULL as a key.

Despite DuckDB specifically calling out that keys must be unique in its implementation other implementations such as Velox and Acero do not require the key to be unique so we cannot require the map key to be 1:1 with map values.

Features

  • support for simple extensions dependencies (#265) (f0ecf54)

Documentation

0.38.0 (2023-11-05)

Features

  • add least and greatest functions to functions_comparison.yml (#247) (b3071bc)

0.37.0 (2023-10-22)

Features

0.36.0 (2023-10-08)

Features

0.35.0 (2023-10-01)

⚠ BREAKING CHANGES

  • nullability of is_not_distinct_from has changed
  • The minimum precision for floating point numbers is now mandated.

Features

  • add approval guidelines for documentation updates (#553) (da4b32a)
  • add geometric data types and functions (#543) (db52bbd)
  • add geometry editor functions (#554) (727467c)
  • adding geometry accessor functions (#552) (784fa9b)
  • explicitly reference IEEE 754 and mandate precision as well as range (#449) (54e3d52), closes #447

Bug Fixes

  • specify nullability for is_not_distinct_from (#555) (30773b2)

0.34.0 (2023-09-17)

Features

0.33.0 (2023-08-27)

Features

0.32.0 (2023-08-21)

⚠ BREAKING CHANGES

  • plans referencing functions using simple names (e.g. not vs not:bool) will no longer be valid.

Features

  • add ExchangeRel as a type in Rel (#518) (89b0c62)
  • add expand rel (#368) (98380b0)
  • add options to substring for start parameter being negative (#508) (281dc0f)
  • add windowrel support in proto (#399) (bd14e0e)
  • require compound functions names in extension references (#537) (2503beb)

0.31.0 (2023-07-02)

Features

  • add a two-arg variant of substring (#513) (a6ead70)
  • add timestamp types to max/min function (#511) (6943400)

0.30.0 (2023-05-14)

⚠ BREAKING CHANGES

  • This adds an option to control indexing of components

Features

0.29.0 (2023-04-23)

⚠ BREAKING CHANGES

  • text: mark name and structure property of type extension item as required (#495)

Bug Fixes

  • referenced simple extension in tutorial (set instead of string) (#494) (b5d7ed2)
  • text: mark name and structure property of type extension item as required (#495) (7246102)

0.28.2 (2023-04-16)

Bug Fixes

  • separate strptime to fix spec violation (#493) (8c230af)

0.28.1 (2023-04-09)

Bug Fixes

0.28.0 (2023-04-02)

Features

0.27.0 (2023-03-26)

⚠ BREAKING CHANGES

  • group argument added to regexp_match_substring function

Add regexp_match_substring_all function

Resolves substrait-io#466

Features

  • add regexp_match_substring_all function to yaml (#469) (b4d81fb)

Bug Fixes

  • ci: fix link to conventional commits spec (#482) (45b4e48)
  • remove duplication in simple extensions schema (#404) (b7df38d)

0.26.0 (2023-03-05)

Features

  • add script to re-namespace .proto files for internal use in public libraries (#207) (a6f24db)
  • add temporal functions (#272) (beb104b), closes #222

0.25.0 (2023-02-26)

⚠ BREAKING CHANGES

  • (add/subtract)ing an interval to a timestamp_tz now requires a time zone and returns a timestamp_tz

Bug Fixes

  • correct return of temporal add and subtract and add timezone parameter (#337) (1b184cc)
  • extension: fix typo in scalar function argument type (#445) (7d7ddf1)

0.24.0 (2023-02-12)

Features

0.23.0 (2023-01-22)

Features

  • add extended expression for expression only evaluation (#405) (d35f0ed)
  • spec: add physical plans for hashJoin and mergeJoin (#336) (431651e)

Bug Fixes

  • update extension yaml files to match type-syntax spec (#423) (0608878)

0.22.0 (2022-12-18)

Features

  • add bitwise NOT, AND, OR & XOR functions (#370) (81e34d4)

0.21.1 (2022-12-04)

Bug Fixes

  • rename regex_string_split to regexp_string_split (#393) (f9f4967)

0.21.0 (2022-11-27)

Features

  • add nested type constructor expressions (#351) (b64d30b)
  • add title to simple extensions schema (#387) (2819ecc)

0.20.0 (2022-11-20)

⚠ BREAKING CHANGES

  • optional arguments are no longer allowed to be specified as a part of FunctionArgument messages. Instead they are now specified separately as part of the function invocation.
  • optional arguments are now specified separately from required arguments in the YAML specification.

Co-authored-by: Benjamin Kietzman bengilgit@gmail.com

Co-authored-by: Benjamin Kietzman bengilgit@gmail.com

Features

  • add best effort filter to read rel and clarify that the pre-masked schema should be used (#271) (4beff87)
  • optional args are now specified separately from required args (#342) (bd29ea3)

0.19.0 (2022-11-06)

Features

Bug Fixes

  • rename version fields which conflict with sysmacros (#362) (4170bf1)

0.18.0 (2022-10-09)

Features

  • attach Substrait version number to plans (#347) (2d1bb9d)

0.17.0 (2022-10-02)

Features

  • support non-struct type class structure (#328) (dd7f9f0)

0.16.0 (2022-09-25)

Features

0.15.0 (2022-09-18)

⚠ BREAKING CHANGES

  • options were added to division and logarithmic functions.

Features

  • add options for behaviour when dividing by zero or calculating log zero (#329) (1c170c8)

Bug Fixes

  • naming: add missing arg names in functions_aggregate_*.yaml (#316) (fb92997)

0.14.0 (2022-09-11)

⚠ BREAKING CHANGES

  • option argument added to std_dev and variance aggregate functions

Features

  • add bool_and and bool_or aggregate functions (#314) (52fa523)
  • add corr and mode aggregation functions (#296) (96b13d7)
  • add median and count_distinct aggregation functions (#278) (9be62e5)
  • add population option to variance and standard deviation functions (#295) (c47fffa)
  • add quantile aggregate function (#279) (de6bc9f)
  • add string_agg aggregate function (#297) (fbe5e09)

Bug Fixes

  • mark string_agg aggregate as being sensitive to input order (#312) (683faaa)
  • naming: add missing arg names in functions_arithmetic.yaml (#315) (d433a06)
  • naming: add missing arg names in functions_datetime.yaml (#318) (b7347d1)
  • naming: add missing arg names in functions_logarithmic.yaml and functions_set.yaml (#319) (1c14d27)
  • naming: add/replace arg names in functions_boolean.yaml (#317) (809a2f4)
  • revert addition of count_distinct aggregate function (#311) (90d7c0d)

0.13.0 (2022-09-04)

⚠ BREAKING CHANGES

  • nullability behavior of is_nan, is_finite, and is_infinite has changed
  • compound name for concat has changed to concat:str and concat:vchar (one argument) to make it 1+ variadic

Features

0.12.0 (2022-08-28)

Features

0.11.0 (2022-08-21)

Features

0.10.0 (2022-08-14)

Features

  • add and_not boolean function (#276) (8af3fe0)
  • add is_finite and is_infinite (#286) (01d5428)
  • add support for DDL and INSERT/DELETE/UPDATE operations (#252) (cbb6c26)

0.9.0 (2022-07-31)

⚠ BREAKING CHANGES

  • arithmetic: Options SILENT, SATURATE, ERROR are no longer valid for use with floating point arguments to add, subtract, multiply or divide
  • function argument bindings were open to interpretation before, and were often produced incorrectly; therefore, this change semantically shifts some responsibilities from the consumers to the producers.
  • the grouping set index column now only exists if there is more than one grouping set.
  • Existing plans that are modeling cast with the cast function (as opposed to the cast expression) will no longer be valid. All producers/consumers should use the cast expression type.

Features

  • add functions for arithmetic, rounding, logarithmic, and string transformations (#245) (f7c5da5)
  • add standard deviation functions (#257) (1339534)
  • add string containment functions (#256) (d6b9b34)
  • add string trimming and padding functions (#248) (8a8f65d)
  • add trigonometry functions (#241) (d83d566)
  • add variance function (#263) (b6c3772)
  • arithmetic: add abs and sign to scalar function extensions (#244) (1b9a45f)
  • support window functions (#224) (4b2072a)

Bug Fixes

Documentation

Code Refactoring

  • arithmetic: specify FP overflow and domain options for remaining ops (#269) (de64a3c)

0.8.0 (2022-07-17)

⚠ BREAKING CHANGES

  • The signature of divide functions for multiple types now specify an enumeration prior to specifying operands.

Bug Fixes

  • add overflow behavior to integer division (#223) (cf552d7)

0.7.0 (2022-07-11)

Features

  • introduce compound (parameterizable) extension types and variations (#196) (a79eb07)

0.6.0 (2022-06-26)

Features

  • add contains, starts_with and ends_with functions definitions (#228) (a5fa851)

Bug Fixes

0.5.0 (2022-06-12)

⚠ BREAKING CHANGES

  • The substrait/ReadRel/LocalFiles/format field is deprecated. This will cause a hard break in compatibility. Newer consumers will not be able to read older files. Older consumers will not be able to read newer files. One should now express format concepts using the file_format oneof field.

Co-authored-by: Jacques Nadeau jacques@apache.org

Features

  • add aggregate function min/max support (#219) (48b6b12)
  • add Arrow and Orc file formats (#169) (43be00a)
  • support nullable and non-default variation user-defined types (#217) (5851b02)

0.4.0 (2022-06-05)

⚠ BREAKING CHANGES

  • there was an accidental inclusion of a binary not function with unspecified behavior. This function was removed. Use the unary not function to return the compliment of an input argument.

Bug Fixes

  • remove not function that expects two arguments (#182) (e06067c)

0.3.0 (2022-05-22)

Features

  • support type function arguments in protobuf (#161) (df98816)
  • define APPROX_COUNT_DISTINCT in new yaml for approximate aggregate functions (#204) (8e206b9)
  • literals for extension types (#197) (296c266)
  • support fractional seconds for interval_day literals (#199) (129e52f)

0.2.0 (2022-05-15)

Features

  • add flag FailureBehavior in Cast expression (#186) (a3d3b2f)
  • add invocation property to AggregateFunction message for specifying distinct vs all (#191) (373b33f)

0.1.2 (2022-05-01)

Bug Fixes

  • docs: use conventionalcommits to show breaking changes first (#181) (b7f2587)

0.1.1 (2022-04-28)

Bug Fixes

  • ci: cd into buf-configured proto directory (#180) (78c0781)

0.1.0 (2022-04-28)

Bug Fixes

Features