Skip to content

Conversation

@KubeArchitectBot
Copy link
Collaborator

@KubeArchitectBot KubeArchitectBot commented Oct 28, 2025

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
node final major 23 -> 24

Release Notes

nodejs/node (node)

v24.11.1: 2025-11-11, Version 24.11.1 'Krypton' (LTS), @​aduh95

Compare Source

Notable Changes

The known issue relating to Buffer.allocUnsafe incorrectly zero-filling buffers
has now been addressed and now returns uninitialized memory as documented in the
Buffer.allocUnsafe
documentation.

Commits

v24.11.0: 2025-10-28, Version 24.11.0 'Krypton' (LTS), @​richardlau

Compare Source

Notable Changes

This release marks the transition of Node.js 24.x into Long Term Support (LTS)
with the codename 'Krypton'. It will continue to receive updates through to
the end of April 2028.

Other than updating metadata, such as the process.release object, to reflect
that the release is LTS, no further changes from Node.js 24.10.0 are included.

Known issue

An issue has been identified in the Node.js 24.x line with Buffer.allocUnsafe
unintentionally returning zero-filled buffers. This API is
documented to return uninitialized memory.
The documented behavior will be restored in the next Node.js 24.x LTS release to bring
it back in line with previous releases. For more information, see
#​60423.

v24.10.0: 2025-10-08, Version 24.10.0 (Current), @​RafaelGSS

Compare Source

Notable Changes
  • [31bb476895] - (SEMVER-MINOR) console: allow per-stream inspectOptions option (Anna Henningsen) #​60082
  • [3b92be2fb8] - (SEMVER-MINOR) lib: remove util.getCallSite (Rafael Gonzaga) #​59980
  • [18c79d9e1c] - (SEMVER-MINOR) sqlite: create authorization api (Guilherme Araújo) #​59928
Commits

v24.9.0: 2025-09-25, Version 24.9.0 (Current), @​targos

Compare Source

Notable Changes
  • [9b043a9096] - (SEMVER-MINOR) http: add shouldUpgradeCallback to let servers control HTTP upgrades (Tim Perry) #​59824
  • [a6456ab90a] - (SEMVER-MINOR) sqlite: cleanup ERM support and export Session class (James M Snell) #​58378
  • [5563361d22] - (SEMVER-MINOR) sqlite: add tagged template (0hm☘️) #​58748
  • [04013ee933] - (SEMVER-MINOR) worker: add heap profile API (theanarkh) #​59846
Commits

v24.8.0: 2025-09-10, Version 24.8.0 (Current), @​targos

Compare Source

Notable Changes
HTTP/2 Network Inspection Support in Node.js

Node.js now supports inspection of HTTP/2 network calls in Chrome DevTools for Node.js.

Usage

Write a test.js script that makes HTTP/2 requests.

const http2 = require('node:http2');

const client = http2.connect('https://nghttp2.org');

const req = client.request([
  ':path', '/',
  ':method', 'GET',
]);

Run it with these options:

node --inspect-wait --experimental-network-inspection test.js

Open about:inspect on Google Chrome and click on Open dedicated DevTools for Node.
The Network tab will let you track your HTTP/2 calls.

Contributed by Darshan Sen in #​59611.

Other Notable Changes

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.

@changeset-bot
Copy link

changeset-bot bot commented Oct 28, 2025

⚠️ No Changeset found

Latest commit: ec71ead

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 28, 2025

Walkthrough

Base image in node/Dockerfile changed from node:23@sha256:990d0ab35ae15d8a322ee1eeaf4f7cf14e367d3d0ee2f472704b7b3df4c9e7c1 to node:24@sha256:9a2ed90cd91b1f3412affe080b62e69b057ba8661d9844e143a6bbd76a23260f. No other Dockerfile instructions were modified.

Changes

Cohort / File(s) Change Summary
Node.js Runtime Update
node/Dockerfile
Updated FROM base image from node:23@sha256:990d0ab35ae15d8a322ee1eeaf4f7cf14e367d3d0ee2f472704b7b3df4c9e7c1 to node:24@sha256:9a2ed90cd91b1f3412affe080b62e69b057ba8661d9844e143a6bbd76a23260f; all other lines unchanged.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Single-file, single-line image digest/tag update.
  • Quick checks: compatibility with Node 24, CI/build verification, confirm digest authenticity.

Possibly related PRs

Suggested reviewers

  • RelativeSure

Poem

🐰 I hopped a layer up the tree,

From twenty-three to twenty-four with glee,
A tiny swap, a careful chew,
The build hums on — a morning dew,
🥕 hop, test, and off I flee.

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Update Node.js to v24' directly and clearly summarizes the main change in the changeset—upgrading the Node.js base image from v23 to v24 in the Dockerfile.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch renovate/node-node-24.x

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@KubeArchitectBot KubeArchitectBot force-pushed the renovate/node-node-24.x branch 5 times, most recently from da5589e to 55ee486 Compare November 5, 2025 00:50
@KubeArchitectBot KubeArchitectBot force-pushed the renovate/node-node-24.x branch 4 times, most recently from 6be321a to b62599a Compare November 18, 2025 18:43
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 57d5ea0 and b62599a.

📒 Files selected for processing (1)
  • node/Dockerfile (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: generate-config
🔇 Additional comments (4)
node/Dockerfile (4)

1-1: AI-generated summary SHA mismatch.

The AI summary references digest 0c4b1219e836193f8ff099c43a36cb6ebf1bfe4a9a391e9f9eca5b4c96fae5b3, but the actual code uses aa648b387728c25f81ff811799bbf8de39df66d7e2d9b3ab55cc6300cb9175d9. Please confirm which digest is correct and up-to-date.


1-1: pnpm@latest-10 + Node 24 compatibility appears sound.

Based on the available documentation, pnpm supports Corepack since Node.js v16.13, and pnpm v10 is designed to work with modern Node.js versions including v24. However, test the image build and execution to confirm:

  1. Dockerfile builds successfully with docker build node/
  2. npm --version, node --version, and pnpm --version return without errors
  3. pnpm install succeeds in a sample project (if applicable)

1-1: I cannot verify the SHA256 digest directly without Docker access. Let me search for information about Node 24 breaking changes and the Buffer.allocUnsafe behavior mentioned in the review.

Based on my web search verification, I can now provide a more informed assessment:

An issue has been identified in the Node.js 24.x line with Buffer.allocUnsafe unintentionally returning zero-filled buffers. This API is documented to return uninitialized memory. However, the known issue relating to Buffer.allocUnsafe incorrectly zero-filling buffers has now been addressed in Node.js v24.11.1 and returns uninitialized memory as documented.

This means the criticality of the Buffer.allocUnsafe concern depends on which Node 24 minor version your Dockerfile is pinned to. The Dockerfile shows node:24@sha256:... without specifying a minor version, which means it likely pulls the latest v24.x patch available.

Regarding compatibility: pnpm requires at least Node.js v18.12 to run, so pnpm v10 should work with Node 24. No compatibility issues were found between pnpm v10 and Node 24.

The remaining concern is the SHA256 digest discrepancy—I cannot verify it without Docker access, but this is a secondary concern compared to the Buffer.allocUnsafe issue being addressed in v24.11.1+.

Update the Dockerfile to explicitly pin Node.js v24.11.1 or later to ensure the Buffer.allocUnsafe fix is included.

If you're already using v24.11.1+, the critical Buffer.allocUnsafe issue is resolved. Otherwise, ensure your build uses a patched version.


1-1: Additional verification needed for corepack:

Both pnpm v10 and corepack@latest are confirmed compatible with Node.js 24.

Corepack is distributed with Node.js up to (but not including) 25.0.0, which includes Node.js 24, and Corepack remains in Node.js 24 as an experimental feature. pnpm v10 has already been confirmed as compatible with Node.js 24 LTS. The setup is sound; no action needed.

node/Dockerfile Outdated
@@ -1,4 +1,4 @@
FROM node:23@sha256:990d0ab35ae15d8a322ee1eeaf4f7cf14e367d3d0ee2f472704b7b3df4c9e7c1 AS base
FROM node:24@sha256:aa648b387728c25f81ff811799bbf8de39df66d7e2d9b3ab55cc6300cb9175d9 AS base
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Critical: Verify the Node.js 24 image patch version.

There was a known issue in Node.js 24.x with Buffer.allocUnsafe unintentionally returning zero-filled buffers, while the API is documented to return uninitialized memory. The v24.11.1 LTS release addressed this issue and returns uninitialized memory as documented.

Your Dockerfile uses node:24@sha256:aa648b38..., but the AI summary references a different digest (0c4b1219...). This discrepancy is concerning—if the image is v24.11.0 (the initial LTS release), it contains the Buffer.allocUnsafe bug. If any of your application code or dependencies rely on the zero-filled behavior, upgrading will expose uninitialized memory and may cause data leaks or correctness issues.

Verify:

  1. Which patch version (v24.11.0 vs v24.11.1+) corresponds to the SHA you're using
  2. Whether your application or dependencies depend on Buffer.allocUnsafe behavior
  3. Why the AI summary SHA differs from the actual code
🤖 Prompt for AI Agents
In node/Dockerfile around line 1, the pinned image digest may correspond to a
vulnerable Node.js 24 patch (v24.11.0) that contained a Buffer.allocUnsafe
behavior bug; verify which patch version your sha256 maps to by querying the
registry (docker pull or manifest inspect) and compare the image's Node.js
version; if it is v24.11.0, update the Dockerfile to use a v24.11.1+ image
(either the explicit tag node:24.11.1 or the exact sha256 for that release) to
ensure the fix, then run your test suite and dependency checks to confirm no
code relies on zero-filled buffers; finally reconcile why the AI summary SHA
differs by checking where the summary came from (different registry, cached
manifest, or typo) and ensure CI uses the corrected pinned digest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants