This is an automated email from the ASF dual-hosted git repository.

chunwei pushed a commit to branch branch-1.24
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit 28d156f7903365afb69416fa11e2d3252a4c68b8
Author: Chunwei Lei <[email protected]>
AuthorDate: Tue Jul 21 11:53:13 2020 +0800

    Improve 1.24.0 release note and document
---
 LICENSE               | 12 +++++++
 site/_docs/history.md | 97 ++++++++++++++++++++++++++-------------------------
 2 files changed, 61 insertions(+), 48 deletions(-)

diff --git a/LICENSE b/LICENSE
index f433b1a..2f69b1f 100644
--- a/LICENSE
+++ b/LICENSE
@@ -175,3 +175,15 @@
       of your accepting any such warranty or additional liability.
 
    END OF TERMS AND CONDITIONS
+
+Additional License files can be found in the 'licenses' folder located in the 
same directory as the LICENSE file (i.e. this file)
+
+- Software produced outside the ASF which is available under other licenses 
(not Apache-2.0)
+
+MIT
+* cobyism:html5shiv:3.7.2
+* font-awesome:font-awesome-code:4.2.0
+* gridsim:gridsim:
+* jekyll:jekyll:
+* normalize:normalize:3.0.2
+* respond:respond:1.4.2
diff --git a/site/_docs/history.md b/site/_docs/history.md
index 3d90f1b..4b81d37 100644
--- a/site/_docs/history.md
+++ b/site/_docs/history.md
@@ -27,25 +27,29 @@ For a full list of releases, see
 <a href="https://github.com/apache/calcite/releases";>github</a>.
 Downloads are available on the
 [downloads page]({{ site.baseurl }}/downloads/).
-## <a 
href="https://github.com/apache/calcite/releases/tag/calcite-1.24.0";>1.24.0</a> 
/ 2020-07-20
+## <a 
href="https://github.com/apache/calcite/releases/tag/calcite-1.24.0";>1.24.0</a> 
/ 2020-07-24
 {: #v1-24-0}
 
 This release comes about two months after 1.23.0. It includes more than 80 
resolved
 issues, comprising a lot of new features as well as performance improvements
 and bug-fixes. Among others, it is worth highlighting the following.
 
-* Support top-down rule applying and upper bound space pruning
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-3916";>CALCITE-3916</a>)
-* Support `OFFSET` parameter in `TUMBLE/HOP` table functions
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-4000";>CALCITE-4000</a>)
-* Presto dialect implementation
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-3224";>CALCITE-3224</a>)
-* New implementation of RexNode-to-Expression code generation
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-4056";>CALCITE-4056</a>)
-* Remove Digest from `RelNode` and `RexCall`
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-4056";>CALCITE-4056</a>)
-* Allow `RelBuilder` to create `RelNode` with convention
-  (<a 
href="https://issues.apache.org/jira/browse/CALCITE-3972";>CALCITE-3972</a>)
+* Support [top-down rule applying and upper bound space 
pruning](https://issues.apache.org/jira/browse/CALCITE-3916)
+* Support [OFFSET](https://issues.apache.org/jira/browse/CALCITE-4000) 
parameter in `TUMBLE/HOP`
+table functions
+* A new [Presto dialect 
implementation](https://issues.apache.org/jira/browse/CALCITE-3224)
+* [Hoist](https://issues.apache.org/jira/browse/CALCITE-4087), a utility to 
replace literals in a
+SQL string with placeholders
+
+In this release, quite a few instance variables are deprecated and will be
+removed before 1.25, such as `EnumerableToBindableConverterRule.INSTANCE`,
+`CassandraToEnumerableConverterRule.INSTANCE` and so on. Besides, some methods
+in `RelNode` are changed from 'to removed before 2.0' to 'to be removed before 
1.25',
+including `isDistinct()`, `isKey(ImmutableBitSet)`, `getQuery()`, `getRows()`,
+`getVariablesStopped()`, `computeSelfCost()`, `isValid(boolean)`, 
`getCollationList()`,
+`getChildExps()`. All deprecated APIs are strongly recommended to be replaced 
by their
+replacements as soon as possible(<a 
href="https://issues.apache.org/jira/browse/CALCITE-3896";>CALCITE-3923</a>,
+<a href="https://issues.apache.org/jira/browse/CALCITE-3896";>CALCITE-4079</a>).
 
 Compatibility: This release is tested on Linux, macOS, Microsoft Windows;
 using Oracle JDK 8, 9, 10, 11, 12, 13, 14 and OpenJDK 8, 9, 10, 11, 12, 13, 14;
@@ -55,39 +59,44 @@ gradle.properties.
 #### Breaking Changes
 
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4032";>CALCITE-4032</a>]
-  Mark `CalcMergeRule` as `TransformationRule`
+  Mark `CalcMergeRule` as `TransformationRule`. With this change, the 
`CalcMergeRule`
+  won't match `PhysicalNode`(including `EnumerableCalc`) in `VolcanoPlanner`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4003";>CALCITE-4003</a>]
   Disallow cross convention matching and `PhysicalNode` generation in 
`TransformationRule`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3786";>CALCITE-3786</a>]
-  Change `RelNode#recomputeDigest()` return type from `String` to `void`. To 
get
-  digest string, use `RelNode#getDigest()` instead, it will create new digest
-  string on each call, so don't forget to cache the result if necessary
+  Change `RelNode#recomputeDigest()` return type from `String` to `void`
 
 #### New features
 
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4073";>CALCITE-4073</a>]
-Add a new component `RexNormalize` for more effect rex nodes normalization
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4000";>CALCITE-4000</a>]
 Support `OFFSET` parameter in `TUMBLE/HOP` table functions (Rui Wang)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3916";>CALCITE-3916</a>]
 Support top-down rule applying and upper bound space pruning
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3941";>CALCITE-3941</a>]
 Add the default strict mode to the path in the Json functions
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3724";>CALCITE-3724</a>]
+Presto dialect implementation
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3946";>CALCITE-3946</a>]
+Add parser support for `MULTISET/SET` and `VOLATILE` modifiers in `CREATE 
TABLE` statements (Drew Schmitt)
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4089";>CALCITE-4089</a>]
+In Babel, allow `CAST(integer AS DATE)` even though it is illegal in Calcite 
SQL
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4087";>CALCITE-4087</a>]
+`Hoist`, a utility to replace literals in a SQL string with placeholders
+
+#### Bug fixes, API changes and minor enhancements
+
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4073";>CALCITE-4073</a>]
+Add a new component `RexNormalize` for more effect rex nodes normalization
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3224";>CALCITE-3224</a>]
-New implementation of RexNode-to-Expression code generation
+New implementation of `RexNode-to-Expression` code generation
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4056";>CALCITE-4056</a>]
-Remove Digest from `RelNode` and `RexCall`
+Remove `Digest` from `RelNode` and `RexCall`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4008";>CALCITE-4008</a>]
 Implement Code generation for `EnumerableSortedAggregate` (Rui Wang)
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3724";>CALCITE-3724</a>]
-Presto dialect implementation
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4060";>CALCITE-4060</a>]
-Supports implicit type coercion for `NOT IN`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3972";>CALCITE-3972</a>]
 Allow `RelBuilder` to create `RelNode` with convention (Xiening Dai)
-
-#### Bug fixes, API changes and minor enhancements
-
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4060";>CALCITE-4060</a>]
+Supports implicit type coercion for `NOT IN`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4127";>CALCITE-4127</a>]
 Remove final from `AbstractRelNode#getRelTypeName`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4124";>CALCITE-4124</a>]
@@ -96,18 +105,16 @@ Stop invalidating metadata cache in `VolcanoRuleCall`
 Make `EnumerableMergeJoin` constructor protected
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4085";>CALCITE-4085</a>]
 Improve return type nullability for `SqlDotOperator` & `SqlItemOperator` 
(Dawid Wysakowicz)
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4094";>CALCITE-4094</a>]
-Allow `SqlOperator` of `SqlKind#OTHER_FUNCTION` to define a `Strong.Policy` 
Follow-up after review comments
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3936";>CALCITE-3936</a>]
-JDBC adapter, when generating SQL, changes target of ambiguous HAVING clause 
with a `Project` on `Filter` on `Aggregate`
+JDBC adapter, when generating SQL, changes target of ambiguous `HAVING` clause 
with a `Project` on `Filter` on `Aggregate`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4112";>CALCITE-4112</a>]
 Refine the usage of `CalciteConnectionConfig` in `DecorrelateProgram` & some 
minor code refactoring (Jiatao Tao)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4116";>CALCITE-4116</a>]
-Remove unused code for tracking RexNode's nullable state in codegen
+Remove unused code for tracking `RexNode`'s nullable state in codegen
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4105";>CALCITE-4105</a>]
 Replace `Pair` with `Flat2List` in `RelDigestWriter`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4092";>CALCITE-4092</a>]
-NPE using `WITH` clause without a corresponding `SELECT FROM` (James Kim)
+`NPE` using `WITH` clause without a corresponding `SELECT FROM` (James Kim)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4115";>CALCITE-4115</a>]
 Improve the prompt of using SQL keywords for sql parser
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4094";>CALCITE-4094</a>]
@@ -117,9 +124,9 @@ Support `AntiJoin` in `EnumerableMergeJoin`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4098";>CALCITE-4098</a>]
 Remove redundant code in `RelJson.toJson(RelDistribution)` (Jiatao Tao)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4066";>CALCITE-4066</a>]
-`SqlTypeUtil#convertTypeToSpec` cover Array/Multiset/Row types (Jiatao Tao)
+`SqlTypeUtil#convertTypeToSpec` cover `Array/Multiset/Row` types (Jiatao Tao)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4059";>CALCITE-4059</a>]
-`SqlTypeUtil#equalSansNullability` consider Array/Map type (Jiatao Tao)
+`SqlTypeUtil#equalSansNullability` consider `Array/Map` type (Jiatao Tao)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4026";>CALCITE-4026</a>]
 `CassandraFilter` has generated wrong condition expression for filter with non 
string literal (Wenhui Tang)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4077";>CALCITE-4077</a>]
@@ -131,19 +138,13 @@ Does not produce parenthesized table expressions for 
`UNNEST` (Rui Wang)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4049";>CALCITE-4049</a>]
 Improve the implementation of the shortest-path algorithm
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3929";>CALCITE-3929</a>]
-When deserialize UDAF aggregate call from json string, throws NPE (Xu Zhaohui)
+When deserialize UDAF aggregate call from json string, throws `NPE` (Xu 
Zhaohui)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4062";>CALCITE-4062</a>]
 Support deserialize UDF array type from json string (Xu Zhaohui)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4090";>CALCITE-4090</a>]
 When generating SQL for DB2, a complex `SELECT` above a sub-query generates a 
bad table alias (Steven Talbot)
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4089";>CALCITE-4089</a>]
-In Babel, allow 'CAST(integer AS DATE)' even though it is illegal in Calcite 
SQL
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4087";>CALCITE-4087</a>]
-Hoist, a utility to replace literals in a SQL string with placeholders
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4083";>CALCITE-4083</a>]
 `RelTraitSet` failed to canonize traits
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4075";>CALCITE-4075</a>]
-Mock table 'EMPNULLABLES' should allow nulls in all non-pk columns
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4019";>CALCITE-4019</a>]
 Visit `SqlInsert` with `SqlShuttle` cause `NullPointerException` (Xu ZhaoHui)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4063";>CALCITE-4063</a>]
@@ -183,15 +184,13 @@ Reinstate assertion check for trait derivation in 
`OptimizeTask`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4042";>CALCITE-4042</a>]
 `JoinCommuteRule` must not match `SEMI` / `ANTI` join
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4043";>CALCITE-4043</a>]
-Improve IllegalArgumentException message in `RelBuilder#field`
+Improve `IllegalArgumentException` message in `RelBuilder#field`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3991";>CALCITE-3991</a>]
 The required should always be provided in `RelSet.getOrCreateSubset()` (Botong 
Huang)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3981";>CALCITE-3981</a>]
 `Volcano.register` should not return stale subset (Botong Huang)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-2997";>CALCITE-2997</a>]
 In `SqlToRelConverter` and `RelBuilder`, add option to avoid pushing down join 
condition
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3946";>CALCITE-3946</a>]
-Add parser support for `MULTISET/SET` and `VOLATILE` modifiers in `CREATE 
TABLE` statements (Drew Schmitt)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4023";>CALCITE-4023</a>]
 Deprecate `ProjectSortTransposeRule`
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4031";>CALCITE-4031</a>]
@@ -211,12 +210,16 @@ Simplify `DialectPool` implementation using Guava cache
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3910";>CALCITE-3910</a>]
 Enhance `ProjectJoinTransposeRule` to support `SemiJoin` and `AntiJoin` (Liya 
Fan)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3988";>CALCITE-3988</a>]
-Intersect in `RelMdRowCount` doesn't take into account 'intersect all' (Xu 
Zhaohui)
+Intersect in `RelMdRowCount` doesn't take into account `intersect all` (Xu 
Zhaohui)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3985";>CALCITE-3985</a>]
 Simplify grouped window function in parser (Rui Wang)
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4086";>CALCITE-4086</a>]
+Upgrade Avatica version to 1.17.0
 
 #### Build and test suite
 
+* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4075";>CALCITE-4075</a>]
+Mock table 'EMPNULLABLES' should allow nulls in all non-pk columns
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4101";>CALCITE-4101</a>]
 Calcite PR CI often failed due to `elasticsearch:test`, disable the related 
tests first (Jiatao Tao)
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4061";>CALCITE-4061</a>]
@@ -228,8 +231,6 @@ Restructure tests for materialized views (Jin Xing)
 
 #### Web site and documentation
 
-* [<a 
href="https://issues.apache.org/jira/browse/CALCITE-4086";>CALCITE-4086</a>]
-Upgrade Avatica version to 1.17.0
 * [<a 
href="https://issues.apache.org/jira/browse/CALCITE-3950";>CALCITE-3950</a>]
 Doc of `SqlGroupingFunction` contradicts its behavior
 * Site: Remove '(for Calcite committers)' suffix from headers in section 
dedicated to committers

Reply via email to