Skip to content

Drop Node.js 18 support #1317

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jan 20, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ references:
- image: cimg/node:<< parameters.node-version >>
parameters:
node-version:
default: "20.12" # We default to the highest active LTS
default: "22.13" # We default to the highest active LTS
type: string

workspace_root: &workspace_root ~/project
Expand Down Expand Up @@ -151,29 +151,29 @@ workflows:
name: build-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- test:
requires:
- build-v<< matrix.node-version >>
name: test-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- lint:
requires:
- build-v<< matrix.node-version >>
name: lint-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- release-please:
filters:
<<: *filters_only_main
requires:
# We release on the highest active LTS version of
# Node.js that we support
- test-v20.12
- lint-v20.12
- test-v22.13
- lint-v22.13

build-test-publish:
jobs:
Expand All @@ -183,7 +183,7 @@ workflows:
name: build-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- test:
filters:
<<: *filters_release_build
Expand All @@ -192,7 +192,7 @@ workflows:
name: test-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- lint:
filters:
<<: *filters_release_build
Expand All @@ -201,16 +201,16 @@ workflows:
name: lint-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- publish:
context: npm-publish-token
filters:
<<: *filters_release_build
requires:
# We release on the highest active LTS version of
# Node.js that we support
- lint-v20.12
- test-v20.12
- lint-v22.13
- test-v22.13

build-test-prepublish:
jobs:
Expand All @@ -220,7 +220,7 @@ workflows:
name: build-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- test:
filters:
<<: *filters_prerelease_build
Expand All @@ -229,7 +229,7 @@ workflows:
name: test-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- lint:
filters:
<<: *filters_prerelease_build
Expand All @@ -238,16 +238,16 @@ workflows:
name: lint-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- prepublish:
context: npm-publish-token
filters:
<<: *filters_prerelease_build
requires:
# We release on the highest active LTS version of
# Node.js that we support
- lint-v20.12
- test-v20.12
- lint-v22.13
- test-v22.13

nightly:
triggers:
Expand All @@ -261,12 +261,12 @@ workflows:
name: build-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
- test:
requires:
- build-v<< matrix.node-version >>
context: next-nightly-build
name: test-v<< matrix.node-version >>
matrix:
parameters:
node-version: [ "22.0", "20.12", "18.20" ]
node-version: [ "22.13", "20.18" ]
32 changes: 16 additions & 16 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,10 @@
"typescript": "^5.7.3"
},
"engines": {
"node": "18.x || 20.x || 22.x"
"node": "20.x || 22.x"
},
"volta": {
"node": "20.10.0"
"node": "22.13.0"
},
"lint-staged": {
"**/*.js": [
Expand Down
9 changes: 9 additions & 0 deletions packages/app-info/docs/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Emoji | Label | Meaning
* [Node.js 14 is no longer supported](#nodejs-14-is-no-longer-supported)
* [Migrating from v2 to v3](#migrating-from-v2-to-v3)
* [Node.js 16 is no longer supported](#nodejs-16-is-no-longer-supported)
* [Migrating from v3 to v4](#migrating-from-v3-to-v4)
* [Node.js 18 is no longer supported](#nodejs-18-is-no-longer-supported)


## Migrating from v1 to v2
Expand All @@ -26,3 +28,10 @@ Emoji | Label | Meaning
### Node.js 16 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v16. If your app is already using Node.js v18 or above then you can migrate with no code changes.


## Migrating from v3 to v4

### Node.js 18 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v18. If your app is already using Node.js v20 or above then you can migrate with no code changes.
2 changes: 1 addition & 1 deletion packages/app-info/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"bugs": "https://github.com/Financial-Times/dotcom-reliability-kit/issues?q=label:\"package: app-info\"",
"license": "MIT",
"engines": {
"node": "18.x || 20.x || 22.x"
"node": "20.x || 22.x"
},
"main": "lib/index.js",
"types": "types/index.d.ts"
Expand Down
9 changes: 9 additions & 0 deletions packages/crash-handler/docs/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ Emoji | Label | Meaning
* [Remove Sentry workarounds](#remove-sentry-workarounds)
* [Migrating from v3 to v4](#migrating-from-v3-to-v4)
* [Node.js 16 is no longer supported](#nodejs-16-is-no-longer-supported)
* [Migrating from v4 to v5](#migrating-from-v4-to-v5)
* [Node.js 18 is no longer supported](#nodejs-18-is-no-longer-supported)


## Migrating from v1 to v2
Expand Down Expand Up @@ -55,3 +57,10 @@ You can safely migrate to this version of Crash Handler if your app is either _n
### Node.js 16 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v16. If your app is already using Node.js v18 or above then you can migrate with no code changes.


## Migrating from v4 to v5

### Node.js 18 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v18. If your app is already using Node.js v20 or above then you can migrate with no code changes.
2 changes: 1 addition & 1 deletion packages/crash-handler/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"bugs": "https://github.com/Financial-Times/dotcom-reliability-kit/issues?q=label:\"package: crash-handler\"",
"license": "MIT",
"engines": {
"node": "18.x || 20.x || 22.x"
"node": "20.x || 22.x"
},
"main": "lib/index.js",
"types": "types/index.d.ts",
Expand Down
9 changes: 9 additions & 0 deletions packages/errors/docs/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Emoji | Label | Meaning
* [Node.js 14 is no longer supported](#nodejs-14-is-no-longer-supported)
* [Migrating from v2 to v3](#migrating-from-v2-to-v3)
* [Node.js 16 is no longer supported](#nodejs-16-is-no-longer-supported)
* [Migrating from v3 to v4](#migrating-from-v3-to-v4)
* [Node.js 18 is no longer supported](#nodejs-18-is-no-longer-supported)


## Migrating from v1 to v2
Expand All @@ -26,3 +28,10 @@ Emoji | Label | Meaning
### Node.js 16 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v16. If your app is already using Node.js v18 or above then you can migrate with no code changes.


## Migrating from v3 to v4

### Node.js 18 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v18. If your app is already using Node.js v20 or above then you can migrate with no code changes.
2 changes: 1 addition & 1 deletion packages/errors/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"bugs": "https://github.com/Financial-Times/dotcom-reliability-kit/issues?q=label:\"package: errors\"",
"license": "MIT",
"engines": {
"node": "18.x || 20.x || 22.x"
"node": "20.x || 22.x"
},
"main": "lib/index.js",
"types": "types/index.d.ts"
Expand Down
9 changes: 9 additions & 0 deletions packages/eslint-config/docs/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Emoji | Label | Meaning
* [Additional default ESLint rules added (v2)](#additional-default-eslint-rules-added-v2)
* [Migrating from v2 to v3](#migrating-from-v2-to-v3)
* [Node.js 16 is no longer supported](#nodejs-16-is-no-longer-supported)
* [Migrating from v3 to v4](#migrating-from-v3-to-v4)
* [Node.js 18 is no longer supported](#nodejs-18-is-no-longer-supported)


## Migrating from v1 to v2
Expand All @@ -34,3 +36,10 @@ You may need to make changes to your code if these linting errors are found.
### Node.js 16 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v16. If your app is already using Node.js v18 or above then you can migrate with no code changes.


## Migrating from v3 to v4

### Node.js 18 is no longer supported

**:red_circle: Breaking:** this version drops support for Node.js v18. If your app is already using Node.js v20 or above then you can migrate with no code changes.
Loading
Loading