Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
6099144
feat(cubejs-client/playground): new query builder & new chart prototy…
tenphi Sep 12, 2024
67e9521
feat(docker): Upgrade OS to bookworm from bullseye
ovr Sep 5, 2024
7684579
feat(docker): Upgrade Python to 3.11 from 3.9
ovr Sep 11, 2024
9fedf78
feat(docker): Upgrade Node.js to 20.17.0
ovr Sep 5, 2024
8b83021
chore!: Support for Node.js 16 was removed
ovr Sep 5, 2024
97159e7
feat(docker): Upgrade OpenSSL to 3 from (1.1)
ovr Sep 5, 2024
c3a1ccd
feat(docker-jdk): Upgrade JDK to 17 from 11
ovr Sep 5, 2024
eac704e
chore!: Remove cache & queue driver for Redis
ovr Sep 10, 2024
7213ae7
chore!: /v1/run-scheduled-refresh - was removed
ovr Sep 10, 2024
f22e1ef
feat(cubesql)!: Enable CUBESQL_SQL_NO_IMPLICIT_ORDER by default
ovr Sep 10, 2024
86eadb3
chore!: Remove support for checkAuthMiddleware
ovr Sep 10, 2024
e7347db
chore: Upgrade Yarn to 1.22.22 from 1.22.19
ovr Sep 11, 2024
03c278d
feat(databricks-jdbc-driver): Support Java higher then 11
ovr Sep 11, 2024
fb9cb75
feat(docker)!: Remove rxvt-unicode (was used as TERM)
ovr Sep 11, 2024
ba5e5f7
docs: Node.js update
igorlukanin Sep 12, 2024
847930e
docs: Redis update
igorlukanin Sep 12, 2024
4edb2bb
docs: run-scheduled-refresh update
igorlukanin Sep 12, 2024
58eca6e
docs: CUBESQL_SQL_NO_IMPLICIT_ORDER update
igorlukanin Sep 12, 2024
922515d
docs: checkAuthMiddleware update
igorlukanin Sep 12, 2024
aaa1f06
chore(cli)!: Generate - remove support for --user-context, please use…
ovr Sep 12, 2024
8cf624d
docs: clean-up
igorlukanin Sep 12, 2024
fe7ef04
docs: USER_CONTEXT update
igorlukanin Sep 12, 2024
4e3a701
docs: Add a missing item to DEPRECATION.md
igorlukanin Sep 12, 2024
0671e4a
feat: Upgrade aws-sdk to 3.650.0
ovr Sep 12, 2024
2109849
feat(schema-compiler): custom granularity support (#8537)
KSDaemon Sep 12, 2024
841f59a
feat(cubesql): Support `information_schema.sql_implementation_info` m…
MazterQyou Sep 12, 2024
678a13a
chore(cubestore): Update Cargo.lock for newest arrow-rs version (#8702)
srh Sep 12, 2024
f7c07a7
feat(schema-compiler): Support date_bin function in Cube Store querie…
KSDaemon Sep 13, 2024
0f0ab9e
chore(ci): Disable upx for cubestore on x86_64-apple-darwin (#8706)
ovr Sep 13, 2024
8a796f8
chore!: Remove support for USER_CONTEXT (#8705)
ovr Sep 13, 2024
7096242
v0.36.0
ovr Sep 13, 2024
f1f473b
chore: Fix release build for playground
ovr Sep 13, 2024
84c176c
chore: Fix release build for playground, v2
ovr Sep 13, 2024
3537911
Merge tag 'v0.36.0' into nicolas/crmrep-4359-upgrade-cubejs-to-036-0360
Spark-NF Dec 30, 2025
7f0ff6d
chore: update fork to v0.36.0
Spark-NF Dec 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 5 additions & 3 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,13 @@
!rust/cubestore/bin
!rust/cubesql/package.json

# Ignoring builds for native from local machime to protect a problem with different architecture
packages/cubejs-backend-native/index.node
packages/cubejs-backend-native/native/
# Caches
packages/cubejs-backend-native/target
packages/*/node_modules/
packages/*/dist/
packages/*/coverage/
# Other
packages/cubejs-server-core/playground/
packages/cubejs-serverless
packages/cubejs-serverless-aws
packages/cubejs-serverless-google
2 changes: 1 addition & 1 deletion .github/workflows/image-build.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: image build

env:
TAG: v0.35.81-gorgias
TAG: v0.36.0-gorgias

on:
push:
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.20.3
20.17.0
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,33 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# [0.36.0](https://github.com/cube-js/cube/compare/v0.35.81...v0.36.0) (2024-09-13)

### BREAKING CHANGES

* Remove support for USER_CONTEXT (#8705) ([8a796f8](https://github.com/cube-js/cube/commit/8a796f838a0b638fda079377b42d2cbf86474315)) - This functionality was deprecated starting from v0.26.0. Please migrate to SECURITY_CONTEXT.
* chore!: Remove support for checkAuthMiddleware ([86eadb3](https://github.com/cube-js/cube/commit/86eadb33fafcd66cd97a4bd0ee2ab4cbb872887a)) - checkAuthMiddleware option was deprecated in 0.26.0, because this option was tightly bound to Express. Since Cube.js supports HTTP **and** WebSockets as transports, we want our authentication API to not rely on transport-specific details. We now recommend using checkAuth.
* feat(cubesql)!: Enable CUBESQL_SQL_NO_IMPLICIT_ORDER by default ([f22e1ef](https://github.com/cube-js/cube/commit/f22e1efaef6cb81ce920aac0e85abc0eebc94bf9)) - It's started to be true. it means that SQL API will not add ordering to queries that doesn't specify ORDER BY, previusly it was true only for ungrouped queries.
* chore!: /v1/run-scheduled-refresh - was removed ([7213ae7](https://github.com/cube-js/cube/commit/7213ae743e026116ac73c4407acba30f318bd050)) - Removing this method since Cube is designed and supposed to be run as a cluster, rather than a serverless application, in a production setting. Use the Orchestration API instead.
* chore!: Remove cache & queue driver for Redis ([eac704e](https://github.com/cube-js/cube/commit/eac704ecc54c2a02ba83475973b66efa0be6b389)) - Starting from v0.32, Cube Store is used as default cache and queue engine. Article: https://cube.dev/blog/replacing-redis-with-cube-store
* chore!: Support for Node.js 16 was removed ([8b83021](https://github.com/cube-js/cube/commit/8b830214ab3d16ebfadc65cb9587a08b0496fb93)) - Node.js is EOL, it was deprecated in v0.35.0.
* feat(docker)!: Remove rxvt-unicode (was used as TERM) ([fb9cb75](https://github.com/cube-js/cube/commit/fb9cb75ed747f804e31768b91913e0b4f38f173c)) - It was not usefull, at the same time this TERM requires a lot of libraries to be installed. It costs 148 MB of additional disk space.
* **cubejs-client/playground:** New query builder & new chart prototyping ([6099144](https://github.com/cube-js/cube/commit/609914492d6ca6c4b2be507a2af0eb5e70fdf6de)) - Playground was upgraded to Playground 2.0 and Chart Prototyping, previously available in Cube Cloud only.

### Features

* **cubesql:** Support `information_schema.sql_implementation_info` meta table ([841f59a](https://github.com/cube-js/cube/commit/841f59a5f4155482cca188464fea89d5b1dc55b6))
* **databricks-jdbc-driver:** Support Java higher then 11 ([03c278d](https://github.com/cube-js/cube/commit/03c278db81a1bbf3363192aeec50993f2fcf8a5b))
* **docker-jdk:** Upgrade JDK to 17 from 11 ([c3a1ccd](https://github.com/cube-js/cube/commit/c3a1ccd04a600951c8a1729cea40601714f173a8))
* **docker:** Upgrade Node.js to 20.17.0 ([9fedf78](https://github.com/cube-js/cube/commit/9fedf784a1567d4e8190f3a24b46f2bc7adc4996))
* **docker:** Upgrade OpenSSL to 3 from (1.1) ([97159e7](https://github.com/cube-js/cube/commit/97159e747faa391922bd435dffa40c70256a4fe8))
* **docker:** Upgrade OS to bookworm from bullseye ([67e9521](https://github.com/cube-js/cube/commit/67e9521d71a5f6feb779217eb81830bc695f09d0))
* **docker:** Upgrade Python to 3.11 from 3.9 ([7684579](https://github.com/cube-js/cube/commit/76845792ad3cb6aa790f606c452453cc663039a7))
* **schema-compiler:** Support custom granularities ([#8537](https://github.com/cube-js/cube/issues/8537)) ([2109849](https://github.com/cube-js/cube/commit/21098494353b9b6274b534b6c656154cb8451c7b))
* **schema-compiler:** Support custom granularities for Cube Store queries ([#8684](https://github.com/cube-js/cube/issues/8684)) ([f7c07a7](https://github.com/cube-js/cube/commit/f7c07a7572c95de26db81308194577b32e289e53))
* Upgrade aws-sdk to 3.650.0 ([0671e4a](https://github.com/cube-js/cube/commit/0671e4a7ae91fbaf23d4a72aa667fc8eb6dcd6a6))


## [0.35.81](https://github.com/cube-js/cube/compare/v0.35.80...v0.35.81) (2024-09-12)


Expand Down
138 changes: 63 additions & 75 deletions DEPRECATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,34 +33,37 @@ features:
migrate to alternatives. In such cases, a warning may be printed, and users
should not rely on this feature.

| Status | Feature | Deprecated | Remove |
|------------|-----------------------------------------------------------------------------------------------------------------------------------------|------------|-----------|
| Removed | [Node.js 8](#nodejs-8) | v0.22.4 | v0.26.0 |
| Deprecated | [`hearBeatInterval`](#hearbeatinterval) | v0.23.8 | June 2021 |
| Removed | [`CUBEJS_ENABLE_TLS`](#cubejs_enable_tls) | v0.23.11 | v0.26.0 |
| Deprecated | [Embedding Cube.js within Express](#embedding-cubejs-within-express) | v0.24.0 | June 2021 |
| Removed | [Absolute import for `@cubejs-backend/query-orchestrator`](#absolute-import-for-@cubejs-backendquery-orchestrator) | v0.24.2 | v0.32.0 |
| Removed | [`contextToDataSourceId`](#contexttodatasourceid) | v0.25.0 | v0.25.0 |
| Removed | [Absolute import for `@cubejs-backend/server-core`](#absolute-import-for-@cubejs-backendserver-core) | v0.25.4 | v0.32.0 |
| Removed | [Absolute import for `@cubejs-backend/schema-compiler`](#absolute-import-for-@cubejs-backendschema-compiler) | v0.25.21 | v0.32.0 |
| Deprecated | [`checkAuthMiddleware`](#checkauthmiddleware) | v0.26.0 | |
| Removed | [Node.js 10](#nodejs-10) | v0.26.0 | v0.29.0 |
| Removed | [Node.js 15](#nodejs-15) | v0.26.0 | v0.32.0 |
| Deprecated | [`USER_CONTEXT`](#user_context) | v0.26.0 | |
| Deprecated | [`authInfo`](#authinfo) | v0.26.0 | |
| Deprecated | [Prefix Redis environment variables with `CUBEJS_`](#prefix-redis-environment-variables-with-cubejs_) | v0.27.0 | |
| Removed | [Node.js 12](#nodejs-12) | v0.29.0 | v0.32.0 |
| Deprecated | [`CUBEJS_EXTERNAL_DEFAULT` and `CUBEJS_SCHEDULED_REFRESH_DEFAULT`](#cubejs_external_default-and-cubejs_scheduled_refresh_default) | v0.30.0 | |
| Deprecated | [Using external databases for pre-aggregations](#using-external-databases-for-pre-aggregations) | v0.30.0 | |
| Deprecated | [`dbType`](#dbtype) | v0.30.30 | |
| Removed | [Serverless Deployments](#serverless-deployments) | v0.31.64 | v0.35.0 |
| Removed | [Node.js 14](#nodejs-14) | v0.32.0 | v0.35.0 |
| Deprecated | [Using Redis for in-memory cache and queue](#using-redis-for-in-memory-cache-and-queue) | v0.32.0 | |
| Deprecated | [`running_total` measure type](#running_total-measure-type) | v0.33.39 | |
| Deprecated | [Node.js 16](#nodejs-16) | v0.35.0 | |
| Removed | [MySQL-based SQL API](#mysql-based-sql-api) | v0.35.0 | v0.35.0 |
| Removed | [`initApp` hook](#initapp-hook) | v0.35.0 | v0.35.0 |
| Deprecated | [`/v1/run-scheduled-refresh` REST API endpoint](#v1run-scheduled-refresh-rest-api-endpoint) | v0.35.0 | |
| Status | Feature | Deprecated | Removed |
|------------|-----------------------------------------------------------------------------------------------------------------------------------|------------|-----------|
| Removed | [Node.js 8](#nodejs-8) | v0.22.4 | v0.26.0 |
| Deprecated | [`hearBeatInterval`](#hearbeatinterval) | v0.23.8 | June 2021 |
| Removed | [`CUBEJS_ENABLE_TLS`](#cubejs_enable_tls) | v0.23.11 | v0.26.0 |
| Deprecated | [Embedding Cube.js within Express](#embedding-cubejs-within-express) | v0.24.0 | June 2021 |
| Removed | [Absolute import for `@cubejs-backend/query-orchestrator`](#absolute-import-for-@cubejs-backendquery-orchestrator) | v0.24.2 | v0.32.0 |
| Removed | [`contextToDataSourceId`](#contexttodatasourceid) | v0.25.0 | v0.25.0 |
| Removed | [Absolute import for `@cubejs-backend/server-core`](#absolute-import-for-@cubejs-backendserver-core) | v0.25.4 | v0.32.0 |
| Removed | [Absolute import for `@cubejs-backend/schema-compiler`](#absolute-import-for-@cubejs-backendschema-compiler) | v0.25.21 | v0.32.0 |
| Deprecated | [`checkAuthMiddleware`](#checkauthmiddleware) | v0.26.0 | v0.36.0 |
| Removed | [Node.js 10](#nodejs-10) | v0.26.0 | v0.29.0 |
| Removed | [Node.js 15](#nodejs-15) | v0.26.0 | v0.32.0 |
| Removed | [`USER_CONTEXT`](#user_context) | v0.26.0 | v0.36.0 |
| Deprecated | [`authInfo`](#authinfo) | v0.26.0 | |
| Deprecated | [Prefix Redis environment variables with `CUBEJS_`](#prefix-redis-environment-variables-with-cubejs_) | v0.27.0 | v0.36.0 |
| Removed | [Node.js 12](#nodejs-12) | v0.29.0 | v0.32.0 |
| Deprecated | [`CUBEJS_EXTERNAL_DEFAULT` and `CUBEJS_SCHEDULED_REFRESH_DEFAULT`](#cubejs_external_default-and-cubejs_scheduled_refresh_default) | v0.30.0 | |
| Deprecated | [Using external databases for pre-aggregations](#using-external-databases-for-pre-aggregations) | v0.30.0 | |
| Deprecated | [`dbType`](#dbtype) | v0.30.30 | |
| Removed | [Serverless Deployments](#serverless-deployments) | v0.31.64 | v0.35.0 |
| Removed | [Node.js 14](#nodejs-14) | v0.32.0 | v0.35.0 |
| Removed | [Using Redis for in-memory cache and queue](#using-redis-for-in-memory-cache-and-queue) | v0.32.0 | v0.36.0 |
| Deprecated | [`SECURITY_CONTEXT`](#security_context) | v0.33.0 | |
| Deprecated | [`running_total` measure type](#running_total-measure-type) | v0.33.39 | |
| Deprecated | [Top-level `includes` parameter in views](#top-level-includes-parameter-in-views) | v0.34.34 | |
| Removed | [Node.js 16](#nodejs-16) | v0.35.0 | v0.36.0 |
| Removed | [MySQL-based SQL API](#mysql-based-sql-api) | v0.35.0 | v0.35.0 |
| Removed | [`initApp` hook](#initapp-hook) | v0.35.0 | v0.35.0 |
| Removed | [`/v1/run-scheduled-refresh` REST API endpoint](#v1run-scheduled-refresh-rest-api-endpoint) | v0.35.0 | v0.36.0 |
| Deprecated | [Node.js 18](#nodejs-18) | v0.36.0 | |

### Node.js 8

Expand Down Expand Up @@ -179,15 +182,15 @@ const { BaseQuery } = require("@cubejs-backend/schema-compiler");

### `checkAuthMiddleware`

**Deprecated in Release: v0.26.0**
**Removed in Release: v0.36.0**

The `checkAuthMiddleware` option was tightly bound to Express,
[which has been deprecated](#embedding-cubejs-within-express). Since Cube.js
supports HTTP **and** WebSockets as transports, we want our authentication API
to not rely on transport-specific details. We now recommend using
[`checkAuth`][ref-checkauth] as a transport-agnostic method of authentication.
This means the same authentication logic can be reused for both HTTP and
Websockets transports.
WebSockets transports.

If you are using custom authorization, please take a [look at the
documentation][link-custom-auth]
Expand All @@ -204,18 +207,10 @@ no more updates. Please upgrade to Node.js 12 or higher.

### `USER_CONTEXT`

**Deprecated in Release: v0.26.0**
**Removed in Release: v0.36.0**

`USER_CONTEXT` has been renamed to `SECURITY_CONTEXT`.

Deprecated:

```js
cube(`visitors`, {
sql: `select * from visitors WHERE ${USER_CONTEXT.source.filter("source")}`,
});
```

You should use:

```js
Expand Down Expand Up @@ -271,41 +266,16 @@ const server = new CubejsServer({

### Prefix Redis environment variables with `CUBEJS_`

Redis-related environment variables are now prefixed with `CUBEJS_` for
consistency with other environment variables.

**Deprecated in Release: v0.27.0**

Deprecated:

```
REDIS_URL=XXXX
REDIS_PASSWORD=XXX
REDIS_TLS=true
```

You should use:

```
CUBEJS_REDIS_URL=XXXX
CUBEJS_REDIS_PASSWORD=XXX
CUBEJS_REDIS_TLS=true
```
**Removed in Release: v0.36.0**

### Node.js 15

**Removed in Release: v0.29.0**

Node.js 15 reached [End of Life on June 1, 2021][link-nodejs-eol]. This means no
more updates. Please upgrade to Node.js 14 or higher.

### Node.js 12

**Removed in Release: v0.32.0**

Node.js 12 reached [End of Life on May 19, 2021][link-nodejs-eol]. This means no
more updates. Please upgrade to Node.js 14 or higher.

### Using non-Cube Store databases as external database

**Deprecated in Release: v0.29.0**
Expand Down Expand Up @@ -353,17 +323,22 @@ instead.

**Removed in Release: v0.35.0**

Node.js 14 reached [End of Life on April 30, 2023][link-nodejs-eol]. This means
no more updates. Please upgrade to Node.js 16 or higher.

### Using Redis for in-memory cache and queue

**Deprecated in release: v0.32.0**
**Removed in Release: v0.36.0**

Cube Store is now the default cache and queue engine, [replacing
Redis](https://cube.dev/blog/replacing-redis-with-cube-store). Please migrate to
[Cube Store](https://cube.dev/blog/how-you-win-by-using-cube-store-part-1).

### `SECURITY_CONTEXT`

**Deprecated in Release: v0.33.0**

The `SECURITY_CONTEXT` context variable is deprecated. Use
[`query_rewrite`](https://cube.dev/docs/reference/configuration/config#query_rewrite)
instead.

### `running_total` measure type

**Deprecated in Release: v0.33.39**
Expand All @@ -372,12 +347,18 @@ The `running_total` measure type is now deprecated, and we recommend using
[`rolling_window`](https://cube.dev/docs/product/data-modeling/reference/measures#rolling_window)
to calculate running totals instead.

### Node.js 16
### Top-level `includes` parameter in views

**Deprecated in Release: v0.34.34**

The top-level `includes` parameter is now deprecated. Please always use the
`includes` parameter within [`cubes` and `join_path`
parameters](https://cube.dev/docs/reference/data-model/view#cubes) so you can
explicitly control the join path.

**Deprecated in Release: v0.35.0**
### Node.js 16

Node.js 16 reached [End of Life on September 11, 2023][link-nodejs-eol]. This means
no more updates. Please upgrade to Node.js 18 or higher.
**Removed in Release: v0.36.0**

[link-nodejs-eol]: https://github.com/nodejs/Release#end-of-life-releases

Expand All @@ -397,9 +378,16 @@ The `initApp` hook is removed as it's not relevant anymore for Docker-based arch

### `/v1/run-scheduled-refresh` REST API endpoint

**Deprecated in release: v0.35.0**
**Removed in release: v0.36.0**

The `/v1/run-scheduled-refresh` REST API endpoint is deprecated as it's not
relevant anymore for Docker-based architecture. Use the [Orchestration
API](https://cube.dev/docs/product/apis-integrations/orchestration-api) and
`/v1/pre-aggregations/jobs` endpoint instead.
`/v1/pre-aggregations/jobs` endpoint instead.

### Node.js 18

**Deprecated in Release: v0.36.0**

Node.js 18 reaches [End of Life on April 30, 2025][link-nodejs-eol]. This means
no more updates. Please upgrade to Node.js 20 or higher.
Loading