Change8

Migrating to Node.js v26.0.0

Version v26.0.0 introduces 4 breaking changes. This guide details how to update your code.

Released: 5/5/2026

4
Breaking Changes
4
Migration Steps
14
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

http.Server.prototype.writeHeaderhttp.Server.prototype.writeHead_stream_wrap_stream_readable_stream_writable_stream_duplex_stream_transform_stream_passthroughcryptomodule.register--experimental-transform-types[Weak]Map.prototype.getOrInsert()[Weak]Map.prototype.getOrInsertComputed()Iterator.concat()

Breaking Changes

Issue #1

The `http.Server.prototype.writeHeader()` method is fully removed. Users must switch to using `http.Server.prototype.writeHead()` instead.

Issue #2

The legacy stream modules `_stream_wrap`, `_stream_readable`, `_stream_writable`, `_stream_duplex`, `_stream_transform`, and `_stream_passthrough` are fully removed.

Issue #3

The build process now requires GCC version 13.2 or higher.

Issue #4

Support for Python 3.9 in the build process has been dropped.

Migration Steps

  1. 1
    Replace all usages of `http.Server.prototype.writeHeader()` with `http.Server.prototype.writeHead()`.
  2. 2
    Remove imports or usage of legacy stream modules: `_stream_wrap`, `_stream_readable`, `_stream_writable`, `_stream_duplex`, `_stream_transform`, and `_stream_passthrough`.
  3. 3
    Ensure your build environment uses GCC 13.2 or newer.
  4. 4
    Ensure your build environment uses Python 3.10 or newer (as 3.9 is dropped).

Release Summary

Node.js 26 introduces the Temporal API by default and updates V8 to 14.6 and Undici to 8.0. This release also includes several major breaking changes, removing legacy stream modules and deprecated HTTP methods.

Need More Details?

View the full release notes and all changes for Node.js v26.0.0.

View Full Changelog