Skip to content
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

Drop node v18 #3880

Merged
merged 2 commits into from
Nov 26, 2024
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
10 changes: 4 additions & 6 deletions .github/workflows/nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ jobs:
- name: Checkout
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
with:
persist-credentials: false
persist-credentials: false

- name: Setup Node.js
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
with:
node-version: lts/*

- name: Install dependencies
run: npm install

Expand All @@ -56,9 +56,7 @@ jobs:
max-parallel: 0
matrix:
node-version:
- 18
- 20
- 21
- 22
- 23
runs-on:
Expand Down Expand Up @@ -170,13 +168,13 @@ jobs:
- name: Checkout
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
with:
persist-credentials: false
persist-credentials: false

- name: Setup Node.js
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
with:
node-version: lts/*

- name: Install dependencies
run: npm install

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@
"ws": "^8.11.0"
},
"engines": {
"node": ">=18.17"
"node": ">=20.18.1"
Copy link

@RobinTail RobinTail Dec 1, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what was the reason for choosing this particular version, @mcollina ?
Since it drops not only 18.x, but almost entire 20.x except its latest release available today

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it's the latest version that was available at the time of the release. You should not be using anything else.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The latest Android version is 15, so the all developers should do applications only for Android 15?

I just decided to install undici, but it now forces me to update my Node 20.18.0 to 20.18.1 only because mcollina decided so.

Did you know that minimum requirements are set only to indicate that with lower requirements, the software will not work, and not because some person decides for others what to use and what not to use?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I could not express it better, @AlttiRi , thank you.

I suggested a fix to allow at least 20.9.0+:
#3918

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The latest Android version is 15, so the all developers should do applications only for Android 15?

This is not a good analogy. A good analogy is slightly different: should Google recommend the use of anything but the latest patch available for that given version? As we speak, this is 15.0.0_r5. Why would Google recommend the use of a version that contains known vulnerabilities? You can find the details related to Android CVEs here: https://source.android.com/docs/security/bulletin/2024-11-01#spl-vulnerability-details.

Copy link

@AlttiRi AlttiRi Dec 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

engines.node field is not about "recommendations".

The purpose of this field is to show which versions of Node.js the library will work on and which will not.

Wrong use of this field feels like not a recommendation, but a force to update Node.js.

},
"tsd": {
"directory": "test/types",
Expand Down
Loading