Skip to content

chore(deps): update node.js to v24#5264

Merged
thomhurst merged 1 commit intomainfrom
renovate/node-24.x
Mar 27, 2026
Merged

chore(deps): update node.js to v24#5264
thomhurst merged 1 commit intomainfrom
renovate/node-24.x

Conversation

@thomhurst
Copy link
Copy Markdown
Owner

@thomhurst thomhurst commented Mar 27, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
node (source) engines major >=18.20.8>=24.14.1

Release Notes

nodejs/node (node)

v24.14.1: 2026-03-24, Version 24.14.1 'Krypton' (LTS), @​RafaelGSS prepared by @​juanarbol

Compare Source

This is a security release.

Notable Changes
  • (CVE-2026-21710) use null prototype for headersDistinct/trailersDistinct (Matteo Collina) - High
  • (CVE-2026-21637) wrap SNICallback invocation in try/catch (Matteo Collina) - High
  • (CVE-2026-21717) test array index hash collision (Joyee Cheung) - Medium
  • (CVE-2026-21713) use timing-safe comparison in Web Cryptography HMAC and KMAC (Filip Skokan) - Medium
  • (CVE-2026-21714) handle NGHTTP2_ERR_FLOW_CONTROL error code (RafaelGSS) - Medium
  • (CVE-2026-21712) handle url crash on different url formats (RafaelGSS) - Medium
  • (CVE-2026-21716) include permission check on lib/fs/promises (RafaelGSS) - Low
  • (CVE-2026-21715) add permission check to realpath.native (RafaelGSS) - Low
Commits

v24.14.0: 2026-02-24, Version 24.14.0 'Krypton' (LTS), @​ruyadorno prepared by @​aduh95

Compare Source

Notable Changes
  • [8b6d31d379] - (SEMVER-MINOR) async_hooks: add trackPromises option to createHook() (Joyee Cheung) #​61415
  • [68da144b4e] - build,deps: replace cjs-module-lexer with merve (Yagiz Nizipli) #​61456
  • [f3a24c76e4] - (SEMVER-MINOR) deps: add LIEF as a dependency (Joyee Cheung) #​61167
  • [1948861d23] - (SEMVER-MINOR) events: repurpose events.listenerCount() to accept EventTargets (René) #​60214
  • [d6f7c8d06f] - (SEMVER-MINOR) fs: add ignore option to fs.watch (Matteo Collina) #​61433
  • [cb54b3ca6e] - (SEMVER-MINOR) http: add http.setGlobalProxyFromEnv() (Joyee Cheung) #​60953
  • [35b1759d06] - (SEMVER-MINOR) module: allow subpath imports that start with #/ (Jan Martin) #​60864
  • [2d72ea66f2] - (SEMVER-MINOR) process: preserve AsyncLocalStorage in queueMicrotask only when needed (Gürgün Dayıoğlu) #​60913
  • [6f4a4f6c8e] - (SEMVER-MINOR) sea: split sea binary manipulation code (Joyee Cheung) #​61167
  • [c0ceb9b065] - (SEMVER-MINOR) sqlite: enable defensive mode by default (Bart Louwers) #​61266
  • [33d8e8303b] - (SEMVER-MINOR) sqlite: add sqlite prepare options args (Guilherme Araújo) #​61311
  • [563ab699eb] - (SEMVER-MINOR) src: add initial support for ESM in embedder API (Joyee Cheung) #​61548
  • [4c80031000] - (SEMVER-MINOR) stream: add bytes() method to node:stream/consumers (wantaek) #​60426
  • [f5233df4ff] - (SEMVER-MINOR) stream: do not pass readable.compose() output via Readable.from() (René) #​60907
  • [345a40fda3] - (SEMVER-MINOR) test: use fixture directories for sea tests (Joyee Cheung) #​61167
  • [972f82411d] - (SEMVER-MINOR) test_runner: add env option to run function (Ethan Arrowood) #​61367
  • [d77f98c4b6] - (SEMVER-MINOR) test_runner: support expecting a test-case to fail (Jacob Smith) #​60669
  • [8e900af6ba] - (SEMVER-MINOR) util: add convertProcessSignalToExitCode utility (Erick Wendel) #​60963
Commits

v24.13.1: 2026-02-10, Version 24.13.1 'Krypton' (LTS), @​aduh95

Compare Source

Notable Changes
Commits

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@thomhurst thomhurst added dependencies Pull requests that update a dependency file MAJOR renovate-bot labels Mar 27, 2026
@thomhurst thomhurst enabled auto-merge (squash) March 27, 2026 12:25
Copy link
Copy Markdown
Contributor

@claude claude bot left a comment

Choose a reason for hiding this comment

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

Code Review

This is a Renovate-generated PR that updates docs/package.json engines constraint from >=18.0 to >=24.14.1.

Concern: Over-constraining the Node.js engine requirement

The jump from >=18.0 to >=24.14.1 skips two active LTS versions — Node 20 (EOL April 2026) and Node 22 (current LTS, EOL April 2027). Requiring >=24.14.1 means anyone running the docs tooling on Node 20 or Node 22 would get an engines warning/error, even though the docs tooling almost certainly works fine on those versions.

Why this matters:

  • Node 24.14.1 is a security release for the Node 24 LTS line, but the CVEs it fixes (HTTP/2 flow control, SNI callback, HMAC timing, etc.) are low-relevance for a static docs generator.
  • Pegging to a very specific patch version (>=24.14.1) as the floor is unusual and will break any CI or contributor environment on Node 22 or Node 20.
  • Node 18 genuinely reached EOL in April 2025, so dropping it is correct — but there's no reason to skip Node 20 and 22 at the same time.

Suggested alternative:

"engines": {
  "node": ">=22.0.0"
}

This drops the EOL'd Node 18, retains compatibility with the current LTS (Node 22), and doesn't pin to a patch version that Renovate will rapidly supersede with the next security release anyway.

If there's a specific incompatibility with Node 22 in the docs tooling, it would be worth calling that out explicitly — but absent that, I'd recommend a less aggressive bump here.

Copy link
Copy Markdown
Contributor

@claude claude bot left a comment

Choose a reason for hiding this comment

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

Code Review

This Renovate PR updates docs/package.json engines from >=18.0 to >=24.14.1.

Concern: Over-constraining the Node.js engine requirement

The jump skips two active LTS versions — Node 20 (EOL April 2026) and Node 22 (current LTS, EOL April 2027). Requiring >=24.14.1 means anyone running the docs tooling on Node 20 or Node 22 would get an engines error, even though the docs tooling almost certainly works fine on those versions.

Why this matters:

  • Node 24.14.1 is a security release for the Node 24 line, but the CVEs fixed (HTTP/2 flow control, SNI, HMAC timing, etc.) are low-relevance for a static docs generator.
  • Pegging to a specific patch version as the minimum floor is unusual; Renovate will open another PR with the next security release, creating churn.
  • Node 18 genuinely reached EOL in April 2025, so dropping it is correct — but there is no reason to also drop Node 20 and 22.

Suggested alternative:

"engines": {
  "node": ">=22.0.0"
}

This drops EOL'd Node 18, keeps compatibility with the current LTS (Node 22), and avoids patch-version pinning. If there is a known incompatibility with Node 22 in the docs tooling, that would be worth documenting — but absent that, a less aggressive bump is preferable.

Copy link
Copy Markdown
Contributor

@claude claude bot left a comment

Choose a reason for hiding this comment

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

Code Review (Follow-up)

The previous reviews from this session raised a concern that has not been addressed: the jump from >=18.20.8 to >=24.14.1 skips two actively-supported LTS versions (Node 20, EOL April 2026; Node 22, current LTS, EOL April 2027).

The change is still as-submitted. The concern stands:

  • Patch-version pinning as a floor (>=24.14.1) is unusual and will trigger another Renovate PR with every Node 24 security release, creating unnecessary churn.
  • Dropping Node 22 support for a docs static site is overly aggressive — there is no documented incompatibility to justify it.
  • Node 18 EOL is the only real motivation here, and that's fully addressed by bumping to >=20.0.0 or >=22.0.0.

Recommended alternative:

"engines": {
  "node": ">=22.0.0"
}

This cleanly drops EOL'd Node 18, retains the current LTS (Node 22), and avoids patch-pinning. If Node 24-specific APIs are actually required by the docs tooling, please document that in the PR — otherwise this bump is unnecessarily restrictive.

@thomhurst thomhurst merged commit ce6694d into main Mar 27, 2026
13 of 15 checks passed
@thomhurst thomhurst deleted the renovate/node-24.x branch March 27, 2026 14:16
thomhurst added a commit that referenced this pull request Mar 27, 2026
Renovate PR #5264 bumped the engines.node constraint to >=24.14.1, but
GitHub Actions runners only have 24.14.0 available via setup-node,
causing the docs deploy CI job to fail.
thomhurst added a commit that referenced this pull request Mar 27, 2026
Renovate PR #5264 bumped the engines.node constraint to >=24.14.1, but
GitHub Actions runners only have 24.14.0 available via setup-node,
causing the docs deploy CI job to fail.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file MAJOR renovate-bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants