Skip to content

chore: update default Node.js from 22 to 24#2373

Merged
tkurki merged 4 commits intoSignalK:masterfrom
dirkwa:chore-node-24-default
Mar 19, 2026
Merged

chore: update default Node.js from 22 to 24#2373
tkurki merged 4 commits intoSignalK:masterfrom
dirkwa:chore-node-24-default

Conversation

@dirkwa
Copy link
Contributor

@dirkwa dirkwa commented Feb 26, 2026

Summary

  • Update recommended Node.js version from 22 to 24
  • Raise minimum required version from >=18 to >=20
  • Update .nvmrctsconfig.base.json (@tsconfig/node24), and package.json engines
  • Remove legacy Node 6 Array.includes runtime check (proper semver check in version.ts)
  • Document breaking changes: drops armv7 (32-bit ARM) and Windows x86 support
  • Update installation docs including 64-bit Raspberry Pi OS requirement
  • Fix several pre-existing typos and grammar issues in the RPi installation guide

Notes

  • OpenSSL 3.5 (bundled with Node 24) reviewed — no impact on Signal K crypto (RSA-2048 self-signed certs, HMAC JWT)

@KEGustafsson please feel free to commit into this PR

  • Docker image matrix changes are out of scope 
  • Update CI workflows (release.ymlbuild-docker.yml npm build step) to use Node 24 out of scope 

@dirkwa
Copy link
Contributor Author

dirkwa commented Feb 26, 2026

@KEGustafsson please feel free to commit into this PR.

@dirkwa dirkwa force-pushed the chore-node-24-default branch from 6c92117 to cbde01f Compare February 26, 2026 22:10
@KEGustafsson
Copy link
Contributor

Document breaking changes: drops armv7 (32-bit ARM) and Windows x86 support

What do you mean with Windows x86?

@KEGustafsson
Copy link
Contributor

Can you remove build pipelines from here, so PR is split to SK core changes and I'll do docker pipes separately.

@dirkwa
Copy link
Contributor Author

dirkwa commented Feb 27, 2026

Windows x86 = outdated 32 bit windows

As maintainer just push to this Repo/PR

@dirkwa dirkwa force-pushed the chore-node-24-default branch 2 times, most recently from 6f12fbc to 1c47c21 Compare March 1, 2026 16:48
@dirkwa
Copy link
Contributor Author

dirkwa commented Mar 3, 2026

FYI

With the switch to node 24 we will loose the support of the 32bit Victron Cerbo GX.

node 22 is the final version for that device.

@sbender9
Copy link
Member

sbender9 commented Mar 3, 2026

We definitely can't stop supporting the Cerbo. Pretty large user base there.

But this is only changing the recommended version, right?

@tkurki
Copy link
Member

tkurki commented Mar 3, 2026

22 is LTS until April 2027. I don’t think there’s anything pressing us to explicitly push minimum version beyond that for some time.

Naturally the whole software stack will continue to evolve, so a clock is ticking somewhere.

Node-RED on Venus is in the same bind.

@KEGustafsson
Copy link
Contributor

KEGustafsson commented Mar 3, 2026

Even npm package is build using Node v24 it can be installed to v22 fine. Mainly affecting to docker images which have node v24 bundled in it.

Isn't Victron using npm packages, not docker images?

@tkurki
Copy link
Member

tkurki commented Mar 3, 2026

Yes, nothing to do with docker images.

@dirkwa dirkwa force-pushed the chore-node-24-default branch from 1c47c21 to d180d10 Compare March 5, 2026 18:19
@tkurki tkurki added this to the 2.24 milestone Mar 12, 2026
@tkurki tkurki added the feature label Mar 12, 2026
@dirkwa dirkwa force-pushed the chore-node-24-default branch from d180d10 to 6078e2d Compare March 12, 2026 21:09
dirkwa and others added 3 commits March 19, 2026 21:06
Update minimum required version to >=22 and recommended to 24.
Remove legacy Node 6 Array.includes check. Update CI workflows,
tsconfig, documentation and breaking changes.
Workflow changes will be handled by the maintainer separately.
@tkurki tkurki force-pushed the chore-node-24-default branch from 6078e2d to 97d40d2 Compare March 19, 2026 19:07
@tkurki tkurki merged commit ff389fb into SignalK:master Mar 19, 2026
1 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants