Skip to content

Commit ccee459

Browse files
authored
Update CHANGELOG ahead of 0.3.0 release (#338)
1 parent 17fd6e7 commit ccee459

File tree

1 file changed

+30
-5
lines changed

1 file changed

+30
-5
lines changed

CHANGELOG.md

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,46 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99
### Changed
10+
- `EvalExpr.evaluate` function now returns a [Cow](https://doc.rust-lang.org/std/borrow/enum.Cow.html) of `Value`
11+
- `Evaluable` trait's `get_vars` function returns by ref
12+
- Refactor of `partiql-eval` crate
13+
- Operators previously implementing `Evaluable` (e.g. `EvalScan`, `EvalFilter`) are under the `eval::evaluable` module
14+
- Expressions previously implementing `EvalExpr` (e.g. `EvalBinOpExpr`, `EvalLitExpr`) are under the `eval::expr` module
15+
- Refactor `CallAgg` `partiql-ast` node
1016

1117
### Added
12-
- `DATE`/`TIME`/`TIMESTAMP` values
13-
- Implements `LIMIT` and `OFFSET` operators in evaluator
1418
- Adds some benchmarks for parsing, compiling, planning, & evaluation
19+
- Implements more built-in functions -- `POSITION`, `OCTET_LEN`, `BIT_LEN`, `ABS`, `MOD`, `CARDINALITY`, `OVERLAY`
1520
- Implements `PIVOT` operator in evaluator
16-
- `serde` feature to `partiql-value` and `partiql-logical` with `Serialize` and `Deserialize` traits.
21+
- Implements `LIKE` for non-string, non-literals
22+
- `serde` feature to `partiql-value` and `partiql-logical` with `Serialize` and `Deserialize` traits
1723
- Adds `Display` for `LogicalPlan`
18-
- Expose `partiql_value::parse_ion` as a public API.
24+
- Expose `partiql_value::parse_ion` as a public API
25+
- Adds some convenience methods on `Value`
26+
- Add `Extend` implementations for `List` and `Bag`
27+
- Add methods to iterate a `Tuple`'s values without zipping its names
28+
- Allow `collect()` into a `Tuple` with any `Into<String>`
29+
- Parse `OUTER UNION`/`INTERSECT`/`EXCEPT`
30+
- Parse `WITH` clause
31+
- Implements `LIMIT` and `OFFSET` operators in evaluator
32+
- `DATE`/`TIME`/`TIMESTAMP` values
33+
- Parse `TABLE <id>` references
1934
- Implements `GROUP BY` operator in evaluator
2035
- Implements `HAVING` operator in evaluator
2136
- Implements `ORDER BY` operator in evaluator
22-
- Implements SQL Aggregation functions -- AVG, COUNT, MAX, MIN, SUM
37+
- Implements SQL aggregation functions (`AVG`, `COUNT`, `MAX`, `MIN`, `SUM`) in evaluator
2338

2439
### Fixes
40+
- Some performance improvements from removing extraneous `clone`s and tweaking buffer sizes
41+
- Fix off by one error when checking preconditions to lower join `ON`
42+
- Recognize aggregate fn names in parser
43+
- Pass-through comments when processing special forms
44+
- Make `BY <x>` optional in `GROUP` clause
45+
- Fix `JOIN` parsing by defaulting to `INNER` and allowing elision of keywords
46+
- Allow un-parenthesized subquery as the only argument of a function in parser
47+
- Fix handling of List/Bag/Tuple in keyword argument preprocessing in parser
2548
- Fixes Tuple value duplicate equality and hashing
49+
- Properly skip comments when parsing
2650

2751
## [0.2.0] - 2023-01-10
2852
### Changed
@@ -89,3 +113,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
89113
[Unreleased]: https://github.com/partiql/partiql-lang-rust/compare/v0.2.0...HEAD
90114
[0.1.0]: https://github.com/partiql/partiql-lang-rust/releases/tag/v0.1.0
91115
[0.2.0]: https://github.com/partiql/partiql-lang-rust/releases/tag/v0.2.0
116+
[0.3.0]: https://github.com/partiql/partiql-lang-rust/releases/tag/v0.3.0

0 commit comments

Comments
 (0)