Cube Core v0.32 release brings the GraphQL API into general availability, adds a number of quality-of-life improvements to Cube SQL and adds significant performance boosts to Cube Store.
Breaking changes and deprecations
This release, we have 2 deprecations and 5 breaking changes:
Please check the deprecation document for more details.
Breaking changes
-
Cube Store is now the default cache and queue engine, replacing Redis. We've talked previously about how Cube Store will be replacing Redis, and this release makes it official.
-
Support for Node.js v12 and v15 has been dropped due to them reaching end-of-life. We strongly recommend upgrading to Node.js v16.
-
Absolute imports for the following packages have been removed. We now provide a public API from the package directly:
@cubejs-backend/query-orchestrator
@cubejs-backend/schema-compiler
@cubejs-backend/server-core
Deprecations
-
Support for Node.js v14 has been marked as deprecated due to it reaching end-of-life in April 2023. We strongly recommend upgrading to Node.js v16.
-
Using Cube with the Serverless Framework and the
@cubejs-backend/serverless
packages is now deprecated, we strongly recommend using Docker-based deployments or Cube Cloud instead.
Pre-aggregations
Following on from the Lambda pre-aggregation support introduced in our last release, Cube now supports multiple rollups from the same cube in a rollupLambda
definition.
CLI
The Cube CLI now lets you validate your models on your local machine - simply
run npx cubejs-cli validate
to check the models in your project for errors:
Drivers
We've enabled readOnly: true
as the default for the
Clickhouse, MSSQL and
Oracle drivers which lets Cube build pre-aggregations
without creating temporary tables in those databases.
GraphQL API
We're extremely excited to announce general availability of the GraphQL API in Cube. With this, the GraphQL API now fully supports variables, a much-requested (and much-needed) improvement:
SQL API
Cube SQL continues to see quality-of-life improvements as well as enhanced support for even more SQL functions as selections and projections. Some examples of what we've improved this release include:
- Support for
CASE
statements in Cube projections - Support for expressions like
NOT(LOWER() IN)
- Allow using
CAST
inHAVING
clauses - Support for
LEFT
andRIGHT
functions in projections - Support for
NULLIF
in projections - Allow using
TO_DATE()
inDATE_DIFF()
expressions - Allow using
DATE_TRUNC()
inWHERE
clauses
We hope that you find these helpful in your work with Cube SQL; please let us know if you have any feedback or suggestions by opening issues on our GitHub repository.