Skip to content

Latest commit

 

History

History
442 lines (221 loc) · 23.4 KB

CHANGELOG.md

File metadata and controls

442 lines (221 loc) · 23.4 KB

Release Notes

0.32.0 (2024-06-04)

⚠ BREAKING CHANGES

  • Substrait FP32 is now mapped to Calcite REAL instead of FLOAT
  • Calcite FLOAT is now mapped to Substrait FP64 instead of FP32

In Calcite, the Sql Type Names DOUBLE and FLOAT correspond to FP64, and REAL corresponds to FP32

Bug Fixes

  • account for struct fields in VirtualTableScan check (#255) (3bbcf82)
  • map Calcite REAL to Substrait FP32 (#261) (37331c2)

0.31.0 (2024-05-05)

⚠ BREAKING CHANGES

  • isthumus: CLI related functionality is now in the io.substrait.isthmus.cli package

Features

0.30.0 (2024-04-28)

⚠ BREAKING CHANGES

  • ParameterizedTypeVisitor has new visit methods
  • TypeExpressionVisitor has new visit methods
  • TypeVisitor has new visit methods
  • BaseProtoTypes has new visit methods

Bug Fixes

  • handle FetchRels with only offset set (#252) (b334e1d)

Miscellaneous Chores

0.29.1 (2024-03-31)

Bug Fixes

  • correct function compound names for IntervalDay and IntervalYear #240 (#242) (856331b)

0.29.0 (2024-03-17)

⚠ BREAKING CHANGES

  • isthmus: method ExpressionCreator.cast(Type, Expression) has been removed

Features

0.28.1 (2024-03-10)

Bug Fixes

  • use coercive function matcher before least restrictive matcher (#237) (e7aa8ff)

0.28.0 (2024-02-25)

Features

  • isthmus: add WindowRelFunctionConverter (#234) (a5e1a21)
  • isthmus: improve signature matching for functions with wildcard arguments (#226) (ec1887c)

Bug Fixes

  • disable task caches in the gradle build (#233) (7879f2b)
  • isthmus: allow for conversion of plans containing Calcite SqlAggFunctions (#230) (0bdac49), closes #180

0.27.0 (2024-02-18)

⚠ BREAKING CHANGES

  • ExpressionVisitor now has a visit(Expression.EmptyListLiteral) method
  • LiteralConstructorConverter constructor now requires a TypeConverter

Features

  • add support for empty list literals (#227) (2a98e3c)
  • pojo: add POJO representation and converters for ConsistentPartitionWindowRel (#231) (f148bbb)
  • support for user-defined type literals (#232) (ca8187f)

0.26.0 (2024-02-11)

Features

Bug Fixes

  • update bad URLs in the release readme (#225) (aad2739)

0.25.0 (2024-01-21)

⚠ BREAKING CHANGES

  • isthmus: signatures for aggregate building utils have changed

  • feat: additional builder methods for arithmetic aggregate functions

  • feat: sortField builder method

  • feat: grouping builder method

  • feat: add, subtract, multiply, divide and negate methods for builder

  • refactor: extract row matching assertions to PlanTestBase

  • feat(isthmus): improved Calcite support for Substrait Aggregate rels

  • refactor: builder functions for aggregates and aggregate functions now consume and return Aggregate.Measure instead of AggregateFunctionInvocation

Features

  • enable conversion of SQL expressions to Substrait ExtendedExpressions (#191) (750220e)
  • improved error messages for Substrait conversion failures (#221) (#222) (8c70245)
  • isthmus: improved Calcite support for Substrait Aggregate rels (#214) (1689c93)

0.24.0 (2024-01-07)

Features

  • introduce DefaultExtensionCatalog (#217) (35f9b62)
  • isthmus: additional output formats for cli (#216) (6e62f46)

0.23.0 (2023-12-18)

Features

0.22.0 (2023-11-26)

Features

  • isthmus: support inPredicate expression (#205) (133ab83)

0.21.0 (2023-11-19)

Features

0.20.0 (2023-11-07)

⚠ BREAKING CHANGES

  • RelCopyOnWriteVisitor now extends RelVisitor and has generic type parameter

Features

Bug Fixes

  • map switch expression to a Calcite CASE statement (#189) (b938573)

0.19.0 (2023-10-29)

Features

0.18.0 (2023-09-24)

⚠ BREAKING CHANGES

  • StrLiteral is no longer converted to CHAR()

fix(isthmus): convert BinaryLiteral to VARBINARY

  • BinaryLiteral is no longer converted to BINARY)
  • calcite: Isthmus no longer uses Calcite built-in MAX, MIN, SUM, SUM0 and AVG functions
  • calcite: removed REQUIRED and NULLABLE fields from Type interface

Features

  • calcite: dedicated Substrait MAX, MIN, SUM, SUM0 and AVG functions (#180) (477b63e)
  • extend literal conversion support (#183) (6e82f39)

Bug Fixes

  • support any? type syntax in function extensions (#184) (16e5604)

0.17.0 (2023-09-17)

⚠ BREAKING CHANGES

  • EnumArgument, TypeArgument and ValueArgument are now abstract
  • visit over core substrait types (#178)

Features

  • calcite: support reading in list and map literals (#177) (e8a2645)
  • use Immutables for Argument subclasses (#179) (edfc65f)
  • visit over core substrait types (#178) (6bee452)

Bug Fixes

  • calcite: use upperBound util when converting upperBound (#176) (b90432d)

0.16.0 (2023-09-06)

⚠ BREAKING CHANGES

    • windowFunction expression creator now requires window bound type parameter
  • the WindowBound POJO representation has been reworked to use visitation and more closely match the spec

  • ExpressionRexConverter now requires a WindowFunctionConverter

    • feat: convert Substrait window functions to Calcite RexOvers (#172) (7618bb8), closes #172

0.15.0 (2023-08-20)

⚠ BREAKING CHANGES

  • pojos: various public functions that took the AggregateFunction.AggregationInvocation proto now take the POJO equivalent Expression.AggregationInvocation.

Features

  • implement fractional second intervals (#167) (68aa7c4)
  • support reading Substrait plans with Window Functions (#165) (93c6db5)

Code Refactoring

  • pojos: avoid using raw proto enums in POJO layer (#164) (41c8400)

0.14.1 (2023-08-06)

Bug Fixes

  • handle custom extensions through expressions (#161) (af91dc3)

0.14.0 (2023-07-23)

Features

  • Add SingleOrList support to the Isthmus converter (#159) (297c535)

0.13.0 (2023-07-16)

Features

  • add missing getters to ValueArgument (#158) (46f0b9f)

Bug Fixes

  • left/right/outer joins have nullable fields (#157) (b987058)

0.12.1 (2023-06-18)

Bug Fixes

  • extension merging should include types (#152) (5718537)

0.12.0 (2023-06-06)

⚠ BREAKING CHANGES

  • TypeConverter no longer uses static methods
  • SimpleExtension.MAPPER has been replaced with SimpleExtension.objectMapper(String namespace)

Features

  • handle user-defined types in Isthmus (#149) (7d7acf8)
  • support IfThen translation from Substrait to Calcite (#151) (f505c23)

0.11.0 (2023-05-28)

⚠ BREAKING CHANGES

  • rename and move extension associated code (#148)

Code Refactoring

  • rename and move extension associated code (#148) (6f29d32)

0.10.0 (2023-05-15)

Features

0.9.0 (2023-04-30)

Features

  • support for custom scalar and aggregate fns (#140) (8bd599a)

0.8.0 (2023-04-09)

⚠ BREAKING CHANGES

  • Use commonExtension to indicate that these extensions are associated with the RelCommon message
  • Use relExtension to indicate that these extensions are associated directly with Rels

Features

0.7.0 (2023-03-12)

Features

0.6.0 (2023-03-05)

Features

  • add FailureBehavior enum to Cast immutable (#115) (fd7cd5f)

Bug Fixes

  • incorrect mapping of floating point + and - ops (#131) (963c72f)

0.5.0 (2023-02-05)

Features

Bug Fixes

0.4.0 (2023-01-29)

Features

  • registered upper & lower in function mapping (#103) (c4f94db)

0.3.0 (2023-01-19)

⚠ BREAKING CHANGES

  • SubstraitRelNodeConverter constructor has changed

Features

  • Set RelBuilder directly in SubstraitRelNodeConverter (#117) (5c84515)

0.2.0 (2022-12-04)

Features

  • support parsing of SQL queries with APPLY (#106) (4c81833)

0.1.4 (2022-11-30)

Bug Fixes

  • open, close and promote from staging to maven (#112) (565e340)

0.1.3 (2022-11-25)

Bug Fixes

0.1.2 (2022-11-25)

Bug Fixes

0.1.1 (2022-11-25)

Bug Fixes

0.1.0 (2022-11-25)

Features