179 wires and counting

$ follow Node.js

Keep up with Node.js in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-11-09
stories 18

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

Workers preload streams into the startup snapshot; http2 accepts repeated content-encoding

By RepoJournal · Filed · About Node.js · Composed from the cited sources · methodology

Node's startup path got cheaper today: worker stdio streams are built into the snapshot instead of re-initialized on every thread start, and http2 stopped collapsing repeated content-encoding to the first value.

worker: preload streams into startup snapshot nodejs/node

by mcollina

Worker stdio used to load its stream after restoring the main-thread context, initializing the stream constructors and prototype methods on every startup. The stream is now preloaded during snapshot construction so workers restore that initialized state, while worker-specific stdio instances and message ports are still created at runtime; only Readable and Writable stay eager, with operators, p...

http2: preserve multiple content-encoding values nodejs/node

by Yuya Inoue

content-encoding was in the single-value field set, so an incoming header with several codings arrived as only the first. It now joins every value in order and accepts outgoing arrays without throwing ERR_HTTP2_HEADER_SINGLE_VALUE by default. This is a behavior change: code that relied on the array being rejected on send will now have it accepted.

perf: let worker.stream take chunks as they arrive nodejs/doc-kit

by ovflowd

worker.stream required all of its input before starting any work; it now also takes an async iterable of batches and starts each batch's work as it arrives, with a few chunks per thread in flight and results yielded in submission order. The commit message notes "An input that arrives whole, as it does with one thread, works as before." It is the first part of a stack splitting the larger change.

stream: trim webstreams sink wrappers and BYOB transfers nodejs/node

by mcollina

Round 23 of the webstreams performance series stops wrapping a sink's close and abort and a transformer's flush and cancel in async closures held for the stream's lifetime: two per WritableStream and two per TransformStream, each with its context. The one-shot methods are now stored as-is and called with the spec's argument list.

sea: generate a compile cache for the VFS modules nodejs/node

by mcollina

Single executable applications currently reject "useCodeCache": true alongside "useVfs": true. The PR attributes this to a plumbing gap rather than a V8 limit, since the SEA code cache is only consumed by the embedder compile paths while a VFS main script runs through the regular CJS/ESM loaders. Separately, doc-kit merged the streamed-input half of that stack.

Quick answers

What shipped in Node.js on November 9, 2026?
Node's startup path got cheaper today: worker stdio streams are built into the snapshot instead of re-initialized on every thread start, and http2 stopped collapsing repeated content-encoding to the first value. In total, 8 commits and 10 pull requests landed.
Who contributed to Node.js on November 9, 2026?
3 developers shipped this update, including mcollina, Yuya Inoue, and ovflowd.
What were the notable Node.js updates?
worker: preload streams into startup snapshot, http2: preserve multiple content-encoding values, and perf: let worker.stream take chunks as they arrive.