Recent Releases of substrait

substrait - v0.74.1

0.74.1 (2025-08-10)

Bug Fixes

  • make simple extensions schema accessible at specified URL (#848) (c0c74ea)
  • typo on window functions site page (#825) (36c1fd8)

- Python
Published by substrait-project-bot[bot] 7 months ago

substrait - v0.74.0

0.74.0 (2025-06-22)

Features

- Python
Published by substrait-project-bot[bot] 8 months ago

substrait - v0.73.0

0.73.0 (2025-06-01)

Features

  • specify build input of hash join operator (#810) (0c4b658)

- Python
Published by substrait-project-bot[bot] 9 months ago

substrait - v0.72.0

0.72.0 (2025-05-04)

⚠ BREAKING CHANGES

  • direct output order of semi/anti/mark joins no longer includes invalid side (i.e., right of lefty joins, and left of righty joins).
  • single join raises runtime error if there more than one matching rows to adhere to the original proposed usage (unnesting scalar subqueries).

Problems

  1. Semi-joins and anti-joins are one-sided and fields from the other side of joins are not valid. The Direct Output Order in the document is okay for other types of joins but not in one-side joins.
  2. Single joins are proposed to be used unnesting scalar subqueries where exactly 1 row is expected. The current documentation citing the paper and behavior although relaxed the behavior so that the implementation can silently produce wrong result.

What this PR do?

  1. Clarify the direct output order by explicitly stating the semi, anti, and mark joins. Introducing Input Order (the previous Direct Output Order) so that all the properties referencing Input Order to reduce ambiguity.
  2. Single joins expecting at most one row for each join key. Otherwise, runtime error. This behavior can be extended in the future if such generalization is justified with correct use cases.

Features

  • add description field to types definition in schema (#811) (a4e3a82)
  • clarify behavior and direct output order of joins (#803) (fe3f1c6)

- Python
Published by substrait-project-bot[bot] 10 months ago

substrait - v0.71.0

0.71.0 (2025-04-20)

⚠ BREAKING CHANGES

  • go_package now points to substrait-protobuf

Build System

  • update go_package of .proto files to substrait-protobuf (#804) (f081cb4)

- Python
Published by substrait-project-bot[bot] 10 months ago

substrait - v0.70.0

0.70.0 (2025-04-13)

⚠ BREAKING CHANGES

  • Hash Equijoin no longer preserves ordering for inner joins

The original Property Maintenance of hash join operator is following.

Orderedness of the left set is maintained in INNER join cases, otherwise it is eliminated.

This holds ONLY very specific implementation of a hash join, for instance, when build side input completely fits in memory, and probe side input is streamed in single thread. It is also strange why INNER JOIN is specifically called out because other joins can preserve order of probe (LEFT) when build (RIGHT) fits in memory.

Nonetheless, if you throw some kicks and chops, this order preserving claim quickly falls apart unless implementation does some non-trivial work under following scenarios.

  • build does not fit in memory (i.e., spill to storage)
  • parallel probe

So in general, we should not say hash join preserves order of probe. It may assuming a specific implementation under particular conditions, which is more of optimization or hint territory.

Features

  • remove ordering guarantees from Hash Equijoin operator (#796) (7408bbd)

- Python
Published by substrait-project-bot[bot] 11 months ago

substrait - v0.69.0

0.69.0 (2025-03-16)

Features

- Python
Published by substrait-project-bot[bot] 12 months ago

substrait - v0.68.0

0.68.0 (2025-03-09)

Features

  • add max:pts variant to functions_datetime (#763) (d387335)

Bug Fixes

  • minor docs build issues and warnings (#792) (10d53ca)
  • update github actions workflows for building website (#791) (996144c)

- Python
Published by substrait-project-bot[bot] 12 months ago

substrait - v0.67.0

0.67.0 (2025-02-16)

Features

  • add dynamic parameter expression (#780) (fdf1b38)
  • support picoseconds in precisionTimestamp and precistionTimestampTZ (#777) (dbce0bd)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.66.1

0.66.1 (2025-02-09)

Bug Fixes

  • add is_null for scalar types in testcase grammar (#779) (a30b3e2)
  • test coverage miscounting window functions (#784) (5932eb9)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.66.0

0.66.0 (2025-02-02)

Features

  • add advanced extension field to DdlRel, WriteRel, and UpdateRel (#766) (a428f96)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.65.0

0.65.0 (2025-01-26)

Features

  • add the test coverage baseline as a json file (#774) (dfbe734)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.64.0

0.64.0 (2025-01-12)

Features

  • additional boolean comparison functions (#764) (2d8b1b6)
  • introduce Iceberg table type using metadata file (#758) (7434e2f)
  • run pytest in pr workflow to check function test coverage (#765) (7bfc37c)

Bug Fixes

  • bump flake8 version to 7.0.0 (#768) (57770b6)
  • update the doc to clarify that function names are case-sensitive (#757) (203e6e4)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.63.1

0.63.1 (2024-12-22)

Bug Fixes

  • change the type of the bool_and testcase to aggregate (#756) (50f1a2e)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.63.0

0.63.0 (2024-12-15)

⚠ BREAKING CHANGES

  • The encoding of FetchRel has changed in a strictly backwards incompatible way. The change involves transitioning offset and count from a standalone int64 field to a oneof structure, where the original int64 field is marked as deprecated, and a new field of Expression type is introduced. Using a oneof may cause ambiguity between unset and set-to-zero states in older messages. However, the fields are defined such that their logical meaning remains indistinguishable, ensuring consistency across encodings.

Features

  • add expression support for count and offset in the fetch operator (#748) (bd4b431)
  • add simple linking to the examples (#702) (4c00b1c)
  • support missing variants for regexp string functions (#750) (3410a3e)

- Python
Published by substrait-project-bot[bot] about 1 year ago

substrait - v0.62.0

0.62.0 (2024-11-24)

Features

Bug Fixes

  • fix function lookup in coverage tool (#744) (3d2ff77)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.61.0

0.61.0 (2024-11-17)

Features

  • add substrait test files to go embedded fs (#740) (e3a7773)
  • handle parsing of list arguments in func testcases (#737) (1f9c710)
  • update operator to update a table (#734) (adb1079)

Bug Fixes

  • misc fixes and cleanup to func testcase grammar (#742) (ea994c2)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.60.0

0.60.0 (2024-11-10)

Features

  • add antlr grammar for test file format (#728) (752aa63)
  • add CreateMode for CTAS in WriteRel (#715) (2e13d0b)
  • update test file format to support aggregate functions (#736) (c18c0c1)

Bug Fixes

  • typo in site/docs/tutorial/sqltosubstrait.md (#735) (9cccb04)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.59.0

0.59.0 (2024-11-03)

⚠ BREAKING CHANGES

  • changes the message type for Expressions field in VirtualTable

Features

Bug Fixes

  • virtualTable expression should represent a row of expression (#727) (a2df42c)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.58.0

0.58.0 (2024-10-13)

Features

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.57.1

0.57.1 (2024-10-06)

Bug Fixes

  • add missing udt identifier in functions_geometry (#716) (f1cedd2)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.57.0

0.57.0 (2024-10-02)

⚠ BREAKING CHANGES

  • This PR changes the definition of grouping sets in AggregateRel to consist of references into a list of grouping expressions instead of consisting of expressions directly.

With the previous definition, consumers had to deduplicate the expressions in the grouping sets in order to execute the query or even derive the output schema (which is problematic, as explained below). With this change, the responsibility of deduplicating expressions is now on the producer. Concretely, consumers are now expected to be simpler: The list of grouping expressions immediately provides the information needed to derive the output schema and the list of grouping sets explicitly and unambiguously provides the equality of grouping expressions. Producers now have to specify the grouping sets explicitly. If their internal representation of grouping sets consists of full grouping expressions (rather than references), then they must deduplicate these expressions according to their internal notion of expression equality in order to produce grouping sets consisting of references to these deduplicated expressions.

If the previous format is desired, it can be obtained from the new format by (1) deduplicating the grouping expressions (according to the previously applicable definition of expression equality), (2) re-establishing the duplicates using the emit clause, and (3) "dereferencing" the references in the grouping sets, i.e., by replacing each reference in the grouping sets with the expression it refers to.

The previous version was problematic because it required the consumers to deduplicate the expressions from the grouping sets. This, in turn, requires to parse and understand 100% of these expression even in cases where that understanding is otherwise optional, which is in opposition to the general philosophy of allowing for simple-minded consumers. The new version avoids that problem and, thus, allows consumers to be

Features

  • change grouping expressions in AggregateRel to references (#706) (65a7d38), closes #700
  • clarify behaviour of SetRel operations (#708) (f796521)
  • make substrait repo a go module (#712) (3dca9b5)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.56.0

0.56.0 (2024-09-15)

Features

  • add optional metadata containing field names to RelCommon (#696) (5a73281)
  • define mark join (#682) (bc1b93f)

Bug Fixes

  • correct format for nullable interval_day parameters (#687) (8ae1084), closes #679

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.55.0

0.55.0 (2024-08-18)

Features

  • update interval_day function extensions to include precision param (#679) (28025cb)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.54.0

0.54.0 (2024-08-11)

⚠ BREAKING CHANGES

  • The encoding of IntervalDay literals has changed in a strictly backwards incompatible way. However, the logical meaning across encoding is maintained using a oneof. Moving a field into a oneof makes unset/set to zero unclear with older messages but the fields are defined such that the logical meaning of the two is indistinct. If neither microseconds nor precision is set, the value can be considered a precision 6 value. If you aren't using IntervalDay type, you will not need to make any changes.
  • TypeExpression and Parameterized type protobufs (used to serialize output derivation) are updated to match the now compound nature of IntervalDay. If you use protobuf to serialize output derivation that refer to IntervalDay type, you will need to rework that logic.
  • JoinRel's type enum now has LEFTSINGLE instead of SINGLE. Similarly there is now LEFTANTI and LEFT_SEMI. Other values are available in all join type enums. This affects JSON and text formats only (binary plans -- the interoperable part of Substrait -- will still be compatible before and after this change).

Features

  • add arithmetic function "power" with decimal type (#660) (9af2d66)
  • add CSV (text) file support (#646) (5d49e04)
  • add precision to IntervalDay and new IntervalCompound type (#665) (e41eff2), closes #664
  • normalize the join types (#662) (bed84ec)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.53.0

0.53.0 (2024-08-04)

⚠ BREAKING CHANGES

  • PrecisionTimestamp(Tz) literal's value is now int64 instead of uint64

Features

  • add aggregate count functions with decimal return type (#670) (2aa516b)
  • add arithmetic function "sqrt" and "factorial" with decimal type (#674) (e4f5b68)
  • add arithmetic function for bitwise(AND/OR/XOR) operation with decimal arguments (#675) (a70cf72)
  • add logarithmic functions with decimal type args (#669) (d9fb1e3)
  • add precision timestamp datetime fn variants (#666) (60c93d2)
  • clarify the meaning of plans (#616) (c1553df), closes #612 #613

Bug Fixes

  • use int64 instead of uint64 for PrecisionTimestamp(Tz) literal value (#668) (da3c74e)

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.52.0

0.52.0 (2024-07-14)

⚠ BREAKING CHANGES

  • changes the message type for Literal PrecisionTimestamp and PrecisionTimestampTZ

The PrecisionTimestamp and PrecisionTimestampTZ literals were introduced

Bug Fixes

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.51.0

0.51.0 (2024-07-07)

Features

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.50.0

0.50.0 (2024-06-30)

⚠ BREAKING CHANGES

  • consumers must now check for multiple optimization messages within an AdvancedExtension

Features

- Python
Published by substrait-project-bot[bot] over 1 year ago

substrait - v0.49.0

0.49.0 (2024-05-23)

Features

Bug Fixes

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.48.0

0.48.0 (2024-04-25)

⚠ BREAKING CHANGES

  • min:ts has been moved to functions_datetime
  • max:ts has been moved to functions_datetime

Bug Fixes

  • duplicate declaration of min:ts and max:ts (#631) (7fc86f8)

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.47.0

0.47.0 (2024-04-18)

Features

  • add i64 variant for exp, ln, log10, log2 and logb functions (#628) (fef2253)
  • allow FetchRel to specify a return of ALL results (#622) (#627) (37f43b4)

Bug Fixes

  • index_in has wrong return type (#632) (4cd2089)
  • use any1 instead of T in function extensions (#629) (0bddf68)

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.46.0

0.46.0 (2024-04-14)

Features

Bug Fixes

  • remove implicit casts in trig extension functions (#620) (b883120)

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.45.0

0.45.0 (2024-03-24)

Features

  • add decimal type support for sum0 function (#610) (6bd0c7b)

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.44.0

0.44.0 (2024-03-03)

⚠ BREAKING CHANGES

  • Adding a NULL option to the ondomainerrors.

SQLite returns null for some inputs such as negative infinity

Features

  • add extra option for on domain errors in log functions (#536) (cbec079)
  • add ignore nulls options to concat function (#605) (55db05b)

- Python
Published by substrait-project-bot[bot] almost 2 years ago

substrait - v0.43.0

0.43.0 (2024-02-25)

Features

  • include precision parameter in timestamp types (#594) (087f87c)

Bug Fixes

  • remove function definitions w/ invalid return types (#599) (a3b1f32)

- Python
Published by substrait-project-bot[bot] about 2 years ago

substrait - v0.42.1

0.42.1 (2024-01-28)

Bug Fixes

  • add missing RelCommon field to WriteRel and DdlRel (#591) (d55703a)

- Python
Published by substrait-project-bot[bot] about 2 years ago

substrait - v0.42.0

0.42.0 (2024-01-21)

Features

- Python
Published by substrait-project-bot[bot] about 2 years ago

substrait - v0.41.0

0.41.0 (2023-12-24)

⚠ BREAKING CHANGES

  • Renamed modulus to modulo.

Added options and documentation for the modulo operator as defined in math and comp sci.

Bug Fixes

  • renamed modulus to modulo; updated modulo operator defintion (#583) (aba1bc7), closes #353

- Python
Published by substrait-project-bot[bot] about 2 years ago

substrait - v0.40.0

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

- Python
Published by substrait-project-bot[bot] about 2 years ago

substrait - v0.39.0

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

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.38.0

0.38.0 (2023-11-05)

Features

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

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.37.0

0.37.0 (2023-10-22)

Features

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.36.0

0.36.0 (2023-10-08)

Features

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.35.0

0.35.0 (2023-10-01)

⚠ BREAKING CHANGES

  • nullability of isnotdistinct_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 isnotdistinct_from (#555) (30773b2)

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.34.0

0.34.0 (2023-09-17)

Features

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.33.0

0.33.0 (2023-08-27)

Features

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.32.0

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)

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.31.0

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)

- Python
Published by substrait-project-bot[bot] over 2 years ago

substrait - v0.30.0

0.30.0 (2023-05-14)

⚠ BREAKING CHANGES

  • This adds an option to control indexing of components

Features

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.29.0

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)

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.28.2

0.28.2 (2023-04-16)

Bug Fixes

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

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.28.1

0.28.1 (2023-04-09)

Bug Fixes

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.28.0

0.28.0 (2023-04-02)

Features

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.27.0

0.27.0 (2023-03-26)

⚠ BREAKING CHANGES

  • group argument added to regexp_match_substring function

Add regexpmatchsubstring_all function

Resolves https://github.com/substrait-io/substrait/issues/466

Features

  • add regexpmatchsubstring_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)

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.26.0

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

- Python
Published by substrait-project-bot[bot] almost 3 years ago

substrait - v0.25.0

0.25.0 (2023-02-26)

⚠ BREAKING CHANGES

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

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)

- Python
Published by substrait-project-bot[bot] about 3 years ago

substrait - v0.24.0

0.24.0 (2023-02-12)

Features

- Python
Published by substrait-project-bot[bot] about 3 years ago

substrait - v0.23.0

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)

- Python
Published by substrait-project-bot[bot] about 3 years ago

substrait - v0.22.0

0.22.0 (2022-12-18)

Features

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

- Python
Published by substrait-project-bot[bot] about 3 years ago

substrait - v0.21.1

0.21.1 (2022-12-04)

Bug Fixes

  • rename regexstringsplit to regexpstringsplit (#393) (f9f4967)

- Python
Published by substrait-project-bot[bot] about 3 years ago

substrait - v0.21.0

0.21.0 (2022-11-27)

Features

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.20.0

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)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.19.0

0.19.0 (2022-11-06)

Features

Bug Fixes

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.18.0

0.18.0 (2022-10-09)

Features

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.17.0

0.17.0 (2022-10-02)

Features

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.16.0

0.16.0 (2022-09-25)

Features

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.15.0

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 functionsaggregate*.yaml (#316) (fb92997)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.14.0

0.14.0 (2022-09-11)

⚠ BREAKING CHANGES

  • option argument added to std_dev and variance aggregate functions

Features

  • add booland and boolor 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 functionslogarithmic.yaml and functionsset.yaml (#319) (1c14d27)
  • naming: add/replace arg names in functions_boolean.yaml (#317) (809a2f4)
  • revert addition of count_distinct aggregate function (#311) (90d7c0d)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.13.0

0.13.0 (2022-09-04)

⚠ BREAKING CHANGES

  • nullability behavior of isnan, isfinite, 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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.12.0

0.12.0 (2022-08-28)

Features

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.11.0

0.11.0 (2022-08-21)

Features

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.10.0

0.10.0 (2022-08-14)

Features

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.9.0

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)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.8.0

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)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.7.0

0.7.0 (2022-07-11)

Features

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

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.6.0

0.6.0 (2022-06-26)

Features

  • add contains, startswith and endswith functions definitions (#228) (a5fa851)

Bug Fixes

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.5.0

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)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.4.0

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)

- Python
Published by substrait-project-bot[bot] over 3 years ago

substrait - v0.3.0

0.3.0 (2022-05-22)

Features

  • define APPROXCOUNTDISTINCT in new yaml for approximate aggregate functions (#204) (8e206b9)
  • literals for extension types (#197) (296c266)
  • support fractional seconds for interval_day literals (#199) (129e52f)

- Python
Published by substrait-project-bot[bot] almost 4 years ago

substrait - v0.2.0

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)

- Python
Published by substrait-project-bot[bot] almost 4 years ago

substrait - v0.1.2

0.1.2 (2022-05-01)

Bug Fixes

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

- Python
Published by substrait-project-bot[bot] almost 4 years ago

substrait - v0.1.1

0.1.1 (2022-04-28)

Bug Fixes

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

- Python
Published by substrait-project-bot[bot] almost 4 years ago