You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+40-33Lines changed: 40 additions & 33 deletions
Original file line number
Diff line number
Diff line change
@@ -24,58 +24,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
24
24
## [Unreleased]
25
25
26
26
### Added
27
-
- Adds back ability to convert an `IonDatagram` to an `ExprValue` using `of(value: IonValue): ExprValue` and `newFromIonValue(value: IonValue): ExprValue`
28
-
- Adds support for SQL's CURRENT_USER in the AST, EvaluatingCompiler, experimental planner implementation, and Schema Inferencer.
29
-
- Adds the AST node `session_attribute`.
30
-
- Adds the function `EvaluationSession.Builder::user()` to add the CURRENT_USER to the EvaluationSession
31
-
- Adds support for parsing and planning of `INSERT INTO .. AS <alias> ... ON CONFLICT DO [UPDATE|REPLACE] EXCLUDED WHERE <expr>`
32
-
- Adds the `statement.dml` and `dml_operation` node to the experimental PartiQL Physical Plan.
33
27
34
28
### Changed
35
29
36
-
-**Breaking**: Adds a new property `as_alias` to the `insert` AST node.
37
-
-**Breaking**: Adds new property `condition` to the AST nodes of `do_replace` and `do_update`
38
-
-**Breaking**: Adds `target_alias` property to the `dml_insert`, `dml_replace`, and `dml_update` nodes within the
39
-
Logical and Logical Resolved plans
40
-
-**Breaking**: Adds `condition` property to the `dml_replace` and `dml_update` nodes within the
41
-
Logical and Logical Resolved plans
42
-
43
30
### Deprecated
44
31
45
32
### Fixed
46
33
47
-
- Parsing INSERT statements with aliases no longer loses the original table name. Closes #1043.
48
-
- Parsing INSERT statements with the legacy ON CONFLICT clause is no longer valid. Similarly, parsing the legacy INSERT
49
-
statement with the up-to-date ON CONFLICT clause is no longer valid. Closes #1063.
50
-
51
34
### Removed
52
35
53
-
-**Breaking**: Removes node `statement.dml_query` from the experimental PartiQL Physical Plan. Please see the added
an additional builtin TEXT_REPLACE, and standard SQL aggregations on booleans EVERY, ANY, SOME.
64
-
-**Breaking** Added coercion of SQL-style subquery to a single value, as defined in SQL for
65
-
subqueries occurring in a single-value context and outlined in Chapter 9 of the PartiQL specification.
66
-
This is backward incompatible with the prior behavior (which left the computed collection as is),
44
+
-**Breaking** Added coercion of SQL-style subquery to a single value, as defined in SQL for
45
+
subqueries occurring in a single-value context and outlined in Chapter 9 of the PartiQL specification.
46
+
This is backward incompatible with the prior behavior (which left the computed collection as is),
67
47
but brings it in conformance with the specification.
68
48
- Added `partiql-plan` package which contains experimental PartiQL Plan data structures.
69
49
- Initializes SPI Framework under `partiql-spi`.
70
50
- Models experimental `Schema` with constraints.
71
-
With this change, we're introducing `Tuple` and `Collection` constraints to be able to model the shape of data as
51
+
With this change, we're introducing `Tuple` and `Collection` constraints to be able to model the shape of data as
72
52
constraints.
73
53
- Introduces the PartiQLSchemaInferencer and PlannerSession
74
54
- The PlannerSession describes the current session and is used by the PartiQLSchemaInferencer.
75
55
- The PartiQLSchemaInferencer provides a function, `infer`, to aid in inferring the output `StaticType` of a
76
-
PartiQL Query. See the KDoc for more information and examples.
56
+
PartiQL Query. See the KDoc for more information and examples.
57
+
- Adds back ability to convert an `IonDatagram` to an `ExprValue` using `of(value: IonValue): ExprValue` and `newFromIonValue(value: IonValue): ExprValue`
58
+
- Adds support for SQL's CURRENT_USER in the AST, EvaluatingCompiler, experimental planner implementation, and Schema Inferencer.
59
+
- Adds the AST node `session_attribute`.
60
+
- Adds the function `EvaluationSession.Builder::user()` to add the CURRENT_USER to the EvaluationSession
61
+
- Adds support for parsing and planning of `INSERT INTO .. AS <alias> ... ON CONFLICT DO [UPDATE|REPLACE] EXCLUDED WHERE <expr>`
62
+
- Adds the `statement.dml` and `dml_operation` node to the experimental PartiQL Physical Plan.
77
63
78
64
### Changed
65
+
79
66
- Deprecates the project level opt-in annotation `PartiQLExperimental` and split it into feature level. `ExperimentalPartiQLCompilerPipeline` and `ExperimentalWindowFunctions`.
80
67
-**Breaking**: Moves StaticType to `partiql-types`.
81
68
- All references to static types need to modify their imports accordingly. For example,
@@ -91,28 +78,48 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
-**Breaking**: Removes deprecated `ionSystem()` function from PartiQLCompilerBuilder and PartiQLParserBuilder
81
+
-**Breaking**: Adds a new property `as_alias` to the `insert` AST node.
82
+
-**Breaking**: Adds new property `condition` to the AST nodes of `do_replace` and `do_update`
83
+
-**Breaking**: Adds `target_alias` property to the `dml_insert`, `dml_replace`, and `dml_update` nodes within the
84
+
Logical and Logical Resolved plans
85
+
-**Breaking**: Adds `condition` property to the `dml_replace` and `dml_update` nodes within the
86
+
Logical and Logical Resolved plans
94
87
95
88
### Deprecated
96
-
-`ExprValueFactory` interface marked as deprecated. Equivalent `ExprValue` construction methods are implemented in the `ExprValue` interface as static methods.
89
+
90
+
-`ExprValueFactory` interface marked as deprecated. Equivalent `ExprValue` construction methods are implemented in the `ExprValue` interface as static methods.
97
91
98
92
### Fixed
99
-
- Javadoc jar now contains dokka docs (was broken by gradle commit from 0.9.0)
100
93
101
-
- ANTLR (PartiQL.g4, PartiQLTokens.g4) and PIG (org/partiql/type-domains/partiql.ion) sources
94
+
- Javadoc jar now contains dokka docs (was broken by gradle commit from 0.9.0)
95
+
- ANTLR (PartiQL.g4, PartiQLTokens.g4) and PIG (org/partiql/type-domains/partiql.ion) sources
102
96
are back to being distributed with the jar.
103
-
104
97
- CLI no longer terminates on user errors in submitted PartiQL (when printing out the AST with !!)
105
-
and no longer prints out stack traces upon user errors.
106
-
98
+
and no longer prints out stack traces upon user errors.
107
99
- Constrained Decimal matching logic.
100
+
- Parsing INSERT statements with aliases no longer loses the original table name. Closes #1043.
101
+
- Parsing INSERT statements with the legacy ON CONFLICT clause is no longer valid. Similarly, parsing the legacy INSERT
102
+
statement with the up-to-date ON CONFLICT clause is no longer valid. Closes #1063.
108
103
109
104
### Removed
105
+
110
106
- The deprecated `IonValue` property in `ExprValue` interface is now removed.
111
107
- Removed partiql-extensions to partiql-cli `org.partiql.cli.functions`
112
108
- Removed IonSystem from PartiQLParserBuilder
109
+
-**Breaking**: Removes node `statement.dml_query` from the experimental PartiQL Physical Plan. Please see the added
110
+
`statement.dml` and `dml_operation` nodes.
113
111
114
112
### Security
115
113
114
+
## [0.9.4] - 2023-04-20
115
+
116
+
This version reverts many accidental breaking changes introduced in v0.9.3. Its contents are equivalent to v0.9.2.
117
+
118
+
## [0.9.3] - 2023-04-12
119
+
120
+
This version accidentally released multiple breaking changes and is not recommended. Please use v0.9.4 to avoid
121
+
breaking changes if migrating from v0.9.2. The breaking changes accidentally introduced in v0.9.3 can be found in v0.10.0.
0 commit comments