Skip to content

v0.4.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@alancai98 alancai98 released this 25 May 05:40
· 150 commits to main since this release
b2d86db

Changed

  • BREAKING: partiql-eval: modifies visibility of types implementing EvalExpr and Evaluable
  • BREAKING: removed from_ion method on Value
  • BREAKING: partiql-ast: visit fn returns a partiql-ast::Recurse type to indicate if visitation of children nodes should continue
  • BREAKING: partiql-logical-planner: modifies lower(parsed: &Parsed) to return a Result type of Result<logical::LogicalPlan<logical::BindingsOp>, LoweringError> rather than a logical::LogicalPlan<logical::BindingsOp>
  • BREAKING: partiql-eval: modifies compile(&mut self, plan: &LogicalPlan<BindingsOp>) to return a Result type of Result<EvalPlan, PlanErr> rather than an EvalPlan
    • This is part of an effort to replace panics with Results
  • BREAKING: partiql-logical-planner: Adds a LogicalPlanner to encapsulate the lower method
  • BREAKING: partiql-eval: Adds a EvaluatorPlanner now requires a Catalog to be supplied at initialization
  • BREAKING: partiql-logical-planner: CallDef and related types moved to partiql-catalog

Added

  • Implements built-in function EXTRACT
  • Add partiql-extension-ion extension for encoding/decoding Value to/from Ion data
  • Add partiql-extension-ion-functions extension which contains an extension function for reading from an Ion file
  • Add partiql-catalog including an experimental Catalog interface and implementation
  • Implements the COLL_* functions -- COLL_AVG, COLL_COUNT, COLL_MAX, COLL_MIN, COLL_SUM

Fixes

  • Fix parsing of EXTRACT datetime parts YEAR, TIMEZONE_HOUR, and TIMEZONE_MINUTE
  • Fix logical plan to eval plan conversion for EvalOrderBySortSpec with arguments DESC and NULLS LAST
  • Fix parsing of EXTRACT to allow keywords after the FROM