The Apache Calcite team is pleased to announce the release of Apache
Calcite 1.40.0.

Calcite is a dynamic data management framework. Its cost-based
optimizer converts queries, represented in relational algebra, into
executable plans. Calcite supports many front-end languages and
back-end data engines, and includes an SQL parser and, as a
sub-project, the Avatica JDBC driver.

This release comes 2 months after 1.39.0, contains contributions from 20
contributors, and resolves 102 issues.

Highlights include the addition of several improvements and additional
optimization rules, notably advanced set operation handling with new rules
for converting INTERSECT to semi-joins and EXISTS subqueries, MINUS to
anti-joins and filters, and optimizing UNIONs with common sources, join
optimization is improved through predicate expansion from disjunctions and
specialized handling of complex join conditions, additional optimizations
include new rules for MIN/MAX aggregates and smarter filter-sort
interactions, addition of Doris, DuckDB, SQLite, and Trino dialects, as
well as improved support for ClickHouse, support for aliases referencing
lateral columns, support for defining which rule sets to apply for
individual Quidem tests.

You can start using it in Maven by simply updating your dependency to:

<dependency>
<groupId>org.apache.calcite</groupId>
<artifactId>calcite-core</artifactId>
<version>1.40.0</version>
</dependency>

If you'd like to download the source release, you can find it here:

https://calcite.apache.org/downloads/

You can read more about the release (including release notes) here:

https://calcite.apache.org/news/2025/05/28/release-1.40.0/

We welcome your help and feedback. For more information on how to
report problems, and to get involved, visit the project website at:

https://calcite.apache.org/

Thanks to everyone involved!

Alessandro Solimando, on behalf of the Apache Calcite Team

Reply via email to