Skip to content

Commit 49b9c7a

Browse files
committed
BREAKING CHANGE: Support for Node.js 16 was removed
1 parent 7c3d597 commit 49b9c7a

File tree

2 files changed

+50
-45
lines changed

2 files changed

+50
-45
lines changed

DEPRECATION.md

Lines changed: 37 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -33,33 +33,34 @@ features:
3333
migrate to alternatives. In such cases, a warning may be printed, and users
3434
should not rely on this feature.
3535

36-
| Status | Feature | Deprecated | Remove |
37-
|------------|-----------------------------------------------------------------------------------------------------------------------------------------|------------|-----------|
38-
| Removed | [Node.js 8](#nodejs-8) | v0.22.4 | v0.26.0 |
39-
| Deprecated | [`hearBeatInterval`](#hearbeatinterval) | v0.23.8 | June 2021 |
40-
| Removed | [`CUBEJS_ENABLE_TLS`](#cubejs_enable_tls) | v0.23.11 | v0.26.0 |
41-
| Deprecated | [Embedding Cube.js within Express](#embedding-cubejs-within-express) | v0.24.0 | June 2021 |
42-
| Removed | [Absolute import for `@cubejs-backend/query-orchestrator`](#absolute-import-for-@cubejs-backendquery-orchestrator) | v0.24.2 | v0.32.0 |
43-
| Removed | [`contextToDataSourceId`](#contexttodatasourceid) | v0.25.0 | v0.25.0 |
44-
| Removed | [Absolute import for `@cubejs-backend/server-core`](#absolute-import-for-@cubejs-backendserver-core) | v0.25.4 | v0.32.0 |
45-
| Removed | [Absolute import for `@cubejs-backend/schema-compiler`](#absolute-import-for-@cubejs-backendschema-compiler) | v0.25.21 | v0.32.0 |
46-
| Deprecated | [`checkAuthMiddleware`](#checkauthmiddleware) | v0.26.0 | |
47-
| Removed | [Node.js 10](#nodejs-10) | v0.26.0 | v0.29.0 |
48-
| Removed | [Node.js 15](#nodejs-15) | v0.26.0 | v0.32.0 |
49-
| Deprecated | [`USER_CONTEXT`](#user_context) | v0.26.0 | |
50-
| Deprecated | [`authInfo`](#authinfo) | v0.26.0 | |
51-
| Deprecated | [Prefix Redis environment variables with `CUBEJS_`](#prefix-redis-environment-variables-with-cubejs_) | v0.27.0 | |
52-
| Removed | [Node.js 12](#nodejs-12) | v0.29.0 | v0.32.0 |
53-
| Deprecated | [`CUBEJS_EXTERNAL_DEFAULT` and `CUBEJS_SCHEDULED_REFRESH_DEFAULT`](#cubejs_external_default-and-cubejs_scheduled_refresh_default) | v0.30.0 | |
54-
| Deprecated | [Using external databases for pre-aggregations](#using-external-databases-for-pre-aggregations) | v0.30.0 | |
55-
| Deprecated | [`dbType`](#dbtype) | v0.30.30 | |
56-
| Removed | [Serverless Deployments](#serverless-deployments) | v0.31.64 | v0.35.0 |
57-
| Removed | [Node.js 14](#nodejs-14) | v0.32.0 | v0.35.0 |
58-
| Deprecated | [Using Redis for in-memory cache and queue](#using-redis-for-in-memory-cache-and-queue) | v0.32.0 | |
59-
| Deprecated | [`running_total` measure type](#running_total-measure-type) | v0.33.39 | |
60-
| Deprecated | [Node.js 16](#nodejs-16) | v0.35.0 | |
61-
| Removed | [MySQL-based SQL API](#mysql-based-sql-api) | v0.35.0 | v0.35.0 |
62-
| Removed | [`initApp` hook](#initapp-hook) | v0.35.0 | v0.35.0 |
36+
| Status | Feature | Deprecated | Remove |
37+
|------------|-----------------------------------------------------------------------------------------------------------------------------------|------------|-----------|
38+
| Removed | [Node.js 8](#nodejs-8) | v0.22.4 | v0.26.0 |
39+
| Deprecated | [`hearBeatInterval`](#hearbeatinterval) | v0.23.8 | June 2021 |
40+
| Removed | [`CUBEJS_ENABLE_TLS`](#cubejs_enable_tls) | v0.23.11 | v0.26.0 |
41+
| Deprecated | [Embedding Cube.js within Express](#embedding-cubejs-within-express) | v0.24.0 | June 2021 |
42+
| Removed | [Absolute import for `@cubejs-backend/query-orchestrator`](#absolute-import-for-@cubejs-backendquery-orchestrator) | v0.24.2 | v0.32.0 |
43+
| Removed | [`contextToDataSourceId`](#contexttodatasourceid) | v0.25.0 | v0.25.0 |
44+
| Removed | [Absolute import for `@cubejs-backend/server-core`](#absolute-import-for-@cubejs-backendserver-core) | v0.25.4 | v0.32.0 |
45+
| Removed | [Absolute import for `@cubejs-backend/schema-compiler`](#absolute-import-for-@cubejs-backendschema-compiler) | v0.25.21 | v0.32.0 |
46+
| Deprecated | [`checkAuthMiddleware`](#checkauthmiddleware) | v0.26.0 | |
47+
| Removed | [Node.js 10](#nodejs-10) | v0.26.0 | v0.29.0 |
48+
| Removed | [Node.js 15](#nodejs-15) | v0.26.0 | v0.32.0 |
49+
| Deprecated | [`USER_CONTEXT`](#user_context) | v0.26.0 | |
50+
| Deprecated | [`authInfo`](#authinfo) | v0.26.0 | |
51+
| Deprecated | [Prefix Redis environment variables with `CUBEJS_`](#prefix-redis-environment-variables-with-cubejs_) | v0.27.0 | |
52+
| Removed | [Node.js 12](#nodejs-12) | v0.29.0 | v0.32.0 |
53+
| Deprecated | [`CUBEJS_EXTERNAL_DEFAULT` and `CUBEJS_SCHEDULED_REFRESH_DEFAULT`](#cubejs_external_default-and-cubejs_scheduled_refresh_default) | v0.30.0 | |
54+
| Deprecated | [Using external databases for pre-aggregations](#using-external-databases-for-pre-aggregations) | v0.30.0 | |
55+
| Deprecated | [`dbType`](#dbtype) | v0.30.30 | |
56+
| Removed | [Serverless Deployments](#serverless-deployments) | v0.31.64 | v0.35.0 |
57+
| Removed | [Node.js 14](#nodejs-14) | v0.32.0 | v0.35.0 |
58+
| Deprecated | [Using Redis for in-memory cache and queue](#using-redis-for-in-memory-cache-and-queue) | v0.32.0 | v0.36.0 |
59+
| Deprecated | [`running_total` measure type](#running_total-measure-type) | v0.33.39 | |
60+
| Removed | [Node.js 16](#nodejs-16) | v0.35.0 | |
61+
| Removed | [MySQL-based SQL API](#mysql-based-sql-api) | v0.35.0 | v0.35.0 |
62+
| Removed | [`initApp` hook](#initapp-hook) | v0.35.0 | v0.35.0 |
63+
| Deprecated | [Node.js 18](#nodejs-16) | v0.36.0 | |
6364

6465
### Node.js 8
6566

@@ -295,16 +296,10 @@ CUBEJS_REDIS_TLS=true
295296
296297
**Removed in Release: v0.29.0**
297298
298-
Node.js 15 reached [End of Life on June 1, 2021][link-nodejs-eol]. This means no
299-
more updates. Please upgrade to Node.js 14 or higher.
300-
301299
### Node.js 12
302300
303301
**Removed in Release: v0.32.0**
304302
305-
Node.js 12 reached [End of Life on May 19, 2021][link-nodejs-eol]. This means no
306-
more updates. Please upgrade to Node.js 14 or higher.
307-
308303
### Using non-Cube Store databases as external database
309304
310305
**Deprecated in Release: v0.29.0**
@@ -352,9 +347,6 @@ instead.
352347
353348
**Removed in Release: v0.35.0**
354349
355-
Node.js 14 reached [End of Life on April 30, 2023][link-nodejs-eol]. This means
356-
no more updates. Please upgrade to Node.js 16 or higher.
357-
358350
### Using Redis for in-memory cache and queue
359351
360352
**Deprecated in release: v0.32.0**
@@ -373,10 +365,7 @@ to calculate running totals instead.
373365
374366
### Node.js 16
375367
376-
**Deprecated in Release: v0.35.0**
377-
378-
Node.js 16 reached [End of Life on September 11, 2023][link-nodejs-eol]. This means
379-
no more updates. Please upgrade to Node.js 18 or higher.
368+
**Removed in Release: v0.36.0**
380369
381370
[link-nodejs-eol]: https://github.com/nodejs/Release#end-of-life-releases
382371
@@ -392,4 +381,11 @@ Early prototype of the MySQL-based SQL API is removed in favor of the Postgres-c
392381
393382
**Removed in release: v0.35.0**
394383
395-
The `initApp` hook is removed as it's not relevant anymore for Docker-based architecture.
384+
The `initApp` hook is removed as it's not relevant anymore for Docker-based architecture.
385+
386+
### Node.js 18
387+
388+
**Deprecated in Release: v0.36.0**
389+
390+
Node.js 18 reaches [End of Life on April 30, 2025][link-nodejs-eol]. This means
391+
no more updates. Please upgrade to Node.js 20 or higher.

packages/cubejs-backend-shared/src/node-check.ts

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,31 @@ const semver = currentNodeVersion.split('.');
66
const major = parseInt(<string> semver[0], 10);
77
// const _minor = parseInt(<string> semver[1], 10);
88

9-
if (major < 16 || major === 15 || major === 17) {
9+
if (major < 18) {
1010
console.error(
1111
color.red(
1212
`You are running Node.js ${currentNodeVersion}.\n` +
13-
'Cube.js CLI requires Node.js 18 or higher \n' +
13+
'Cube.js CLI requires Node.js 20 or higher \n' +
1414
'Please update your Node.js version.'
1515
)
1616
);
1717
process.exit(1);
1818
}
1919

20-
if (major === 16) {
20+
if (major === 19) {
2121
process.emitWarning(
2222
color.red(
2323
`You are running Node.js ${currentNodeVersion}.\n` +
24-
'Support for Node.js 16 will be removed soon. Please upgrade to Node.js 18 or higher.'
24+
'Support for Node.js 19 not guaranty. Please upgrade to Node.js 20 or higher.'
25+
)
26+
);
27+
}
28+
29+
if (major === 18) {
30+
process.emitWarning(
31+
color.red(
32+
`You are running Node.js ${currentNodeVersion}.\n` +
33+
'Support for Node.js 18 will be removed soon. Please upgrade to Node.js 20 or higher.'
2534
)
2635
);
2736
}

0 commit comments

Comments
 (0)