Migrating to Node.js v24.2.0
Version v24.2.0 introduces 1 breaking change. This guide details how to update your code.
Released: 6/9/2025
1
Breaking Changes
4
Migration Steps
11
Affected Symbols
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
import.meta.mainutil.isNativeErrorError.isErrorSymbol.disposeSymbol.asyncDisposeFileHandle.prototype.readableWebStreamhttp2.server.stream.finishutil.styleTextWorkerperf_hooks.IntervalHistogramcrypto.constants.OPENSSL_IS_BORINGSSLBreaking Changes
●Issue #1
Support for HTTP/2 priority signaling has been removed. Applications relying on manual priority signaling in nghttp2 will no longer function as this follows RFC 9113.
Migration Steps
- 1Replace usage of util.isNativeError(obj) with Error.isError(obj).
- 2Ensure all HTTP class instantiations (e.g., ClientRequest, ServerResponse) use the 'new' keyword.
- 3Remove any logic relying on HTTP/2 priority signaling as it is no longer supported.
- 4Update any child_process calls that pass an empty string to options.shell to use a valid shell path or omit the option.
Release Summary
This release introduces import.meta.main for ESM entry point detection, stabilizes Symbol.dispose, and removes HTTP/2 priority signaling in alignment with RFC 9113. It also includes several deprecations to align with modern JavaScript practices and updates core dependencies like nghttp2 and SQLite.
Need More Details?
View the full release notes and all changes for Node.js v24.2.0.
View Full Changelog