v0.4.0
Pre-release
Pre-release
Changed
- BREAKING: partiql-eval: modifies visibility of types implementing
EvalExprandEvaluable - BREAKING: removed
from_ionmethod onValue - BREAKING: partiql-ast:
visitfn returns apartiql-ast::Recursetype to indicate if visitation of children nodes should continue - BREAKING: partiql-logical-planner: modifies
lower(parsed: &Parsed)to return a Result type ofResult<logical::LogicalPlan<logical::BindingsOp>, LoweringError>rather than alogical::LogicalPlan<logical::BindingsOp> - BREAKING: partiql-eval: modifies
compile(&mut self, plan: &LogicalPlan<BindingsOp>)to return a Result type ofResult<EvalPlan, PlanErr>rather than anEvalPlan- This is part of an effort to replace
panics withResults
- This is part of an effort to replace
- BREAKING: partiql-logical-planner: Adds a
LogicalPlannerto encapsulate thelowermethod - BREAKING: partiql-eval: Adds a
EvaluatorPlannernow requires aCatalogto be supplied at initialization - BREAKING: partiql-logical-planner:
CallDefand related types moved to partiql-catalog
Added
- Implements built-in function
EXTRACT - Add
partiql-extension-ionextension for encoding/decodingValueto/from Ion data - Add
partiql-extension-ion-functionsextension which contains an extension function for reading from an Ion file - Add
partiql-catalogincluding an experimentalCataloginterface and implementation - Implements the
COLL_*functions --COLL_AVG,COLL_COUNT,COLL_MAX,COLL_MIN,COLL_SUM
Fixes
- Fix parsing of
EXTRACTdatetime partsYEAR,TIMEZONE_HOUR, andTIMEZONE_MINUTE - Fix logical plan to eval plan conversion for
EvalOrderBySortSpecwith argumentsDESCandNULLS LAST - Fix parsing of
EXTRACTto allow keywords after theFROM