Guy Bedford
ec7a28f2e0
module: cache compiled WebAssembly modules in the compile cache
...
Extends the module compile cache to WebAssembly modules loaded through
the ES module integration. A new kWasm entry type is keyed on the module
URL with the wire bytes as the hashed source, and stores the serialized
CompiledWasmModule. On load, cached code is deserialized through
v8::WasmModuleCompilation with the same compile options the translator
uses (js-string builtins and imported string constants), falling back
to compilation when V8 rejects it.
As for JavaScript, the cache entry is generated right after compilation.
V8 only serializes optimized tier code, so with the default lazy
baseline compilation there is nothing to cache and no entry is written;
a complete cache requires --no-liftoff --no-wasm-lazy-compilation, which
is documented as the way to use the compile cache for WebAssembly.
Signed-off-by: Guy Bedford <guybedford@gmail.com >
Assisted-by: Claude Code
PR-URL: https://github.com/nodejs/node/pull/66191
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
2026-10-28 01:46:44 +00:00
Paul Bouchon
c0c8ce80a8
doc: warn against awaiting replies in module hooks
...
Awaiting a reply from the registering thread inside a resolve or load
hook deadlocks: resolution is synchronous from that thread's
perspective, so it is blocked in the request and cannot answer.
Fixes: https://github.com/nodejs/node/issues/63085
Signed-off-by: Paul Bouchon <mail@bitpshr.net >
PR-URL: https://github.com/nodejs/node/pull/65590
Reviewed-By: Jacob Smith <jacob@frende.me >
2026-10-16 12:44:49 +00:00
René
10720f73b9
doc: replace node:modules documentation header
...
Signed-off-by: Renegade334 <contact.9a5d6388@renegade334.me.uk >
PR-URL: https://github.com/nodejs/node/pull/65800
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2026-09-06 18:35:25 +00:00
Node.js GitHub Bot
30542c362f
2026-08-26, Version 26.8.0 (Current)
...
Notable changes:
benchmark:
* (SEMVER-MINOR) add --analyze mode to compare.js (James M Snell) https://github.com/nodejs/node/pull/65416
crypto:
* update root certificates to NSS 3.126 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/65495
* (SEMVER-MINOR) enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan) https://github.com/nodejs/node/pull/63411
diagnostics_channel:
* mark TracingChannel as stable (Abdelrahman Awad) https://github.com/nodejs/node/pull/64525
lib,src:
* (SEMVER-MINOR) improve histogram implementation (James M Snell) https://github.com/nodejs/node/pull/65024
net:
* (SEMVER-MINOR) improve performance of net.BlockList (James M Snell) https://github.com/nodejs/node/pull/64974
perf_hooks:
* (SEMVER-MINOR) add statistical hypothesis testing to histogram (James M Snell) https://github.com/nodejs/node/pull/65416
repl:
* add basic syntax highlighting (Aviv Keller) https://github.com/nodejs/node/pull/64591
sqlite:
* (SEMVER-MINOR) add StatementSync.prototype.close() (Guilherme Araújo) https://github.com/nodejs/node/pull/64232
* (SEMVER-MINOR) add StatementSync.prototype[Symbol.dispose]() (Guilherme Araújo) https://github.com/nodejs/node/pull/64232
util:
* (SEMVER-MINOR) add non-throwing MIMEType.parse (James M Snell) https://github.com/nodejs/node/pull/64965
zlib:
* (SEMVER-MINOR) add ZipEntry, ZipFile, and ZipBuffer (Philipp Dunkel) https://github.com/nodejs/node/pull/64339
PR-URL: https://github.com/nodejs/node/pull/65551
2026-08-26 16:23:36 +02:00
Shelley Vohr
65f518c72a
module: add a read-only mode to the compile cache
...
A compile cache generated ahead of time and shipped inside an
application package should only ever be read: the package may be
immutable or covered by an integrity check, and a cache directory that
appears at run time would be a surprise. Add readOnly to
module.enableCompileCache() and NODE_COMPILE_CACHE_READONLY=1: existing
entries are loaded as before, nothing is serialized or persisted,
flushCompileCache() is a no-op, and the cache directory is used as found
rather than created, so enabling against a missing directory fails
instead of making one.
Signed-off-by: Shelley Vohr <shelley.vohr@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/65302
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk >
2026-08-23 08:14:37 +00:00
Shelley Vohr
adad4d650d
module: do not split a portable compile cache by uid
...
A portable compile cache is meant to be reused wherever the same module
layout is found, which includes being generated once (at build time,
say) and shipped read-only with an application for whoever runs it. On
platforms with uids the cache subdirectory is suffixed with the uid of
the user who created it, so such a cache is only ever found by that one
user. Omit the suffix in portable mode: a user who cannot write to the
directory still reads it, and a failed write is only a cache miss.
Signed-off-by: Shelley Vohr <shelley.vohr@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/65293
Reviewed-By: James M Snell <jasnell@gmail.com >
2026-08-21 21:53:19 +00:00
Remco Haszing
2c4ea73ae9
module: implement Symbol.dispose in ModuleHooks
...
This change implements the `Symbol.dispose` key in the
`ModuleHooks` class as an alias for deregister. This makes
`registerHooks` work with the `using` keyword.
Fixes: https://github.com/nodejs/node/issues/63846
Signed-off-by: Remco Haszing <remcohaszing@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/63928
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk >
Reviewed-By: Jacob Smith <jacob@frende.me >
2026-07-26 00:59:39 +00:00
Daijiro Wachi
828560574d
doc: fix a/an article typos in module, util, and dns
...
Signed-off-by: Daijiro Wachi <daijiro.wachi@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/63766
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com >
2026-06-08 14:42:21 +00:00
joao-oliveira-softtor
0c7034f5ae
doc: fix article usage before vowel-sound acronyms
...
Several prose references to HTTP, HTTPS, SSL, HPE_HEADER_OVERFLOW
and ECMAScript used the article "a" where the acronym starts with
a vowel sound and should take "an". The rule is based on
pronunciation, not spelling: HTTP is read "aitch-tee-tee-pee",
SSL is read "ess-es-el", ECMAScript is read "ek-mah-script",
and HPE is read "aitch-pee-ee" — all starting with a vowel sound.
Affected files:
* doc/api/crypto.md — "disable a SSL 3.0/TLS 1.0 vulnerability"
* doc/api/http.md — five occurrences ("a HTTP '400 Bad Request'",
"a HTTP '431 Request Header Fields Too Large'", "a HTTP/1.1 102
Processing message", two copies of "use a HTTP parser") plus
two references to "a HPE_HEADER_OVERFLOW"
* doc/api/http2.md — two code-sample comments reading
"// Detects if it is a HTTPS request or HTTP/2"
* doc/api/module.md — "compiles a CommonJS, a ECMAScript Module,
or a TypeScript module" (only the middle article changes; the
adjacent "a CommonJS" and "a TypeScript" are both correct)
* doc/api/tls.md — two references to "part of a SSL/TLS handshake"
in tlsSocket.getFinished() and tlsSocket.getPeerFinished()
No behavior changes, documentation only.
Signed-off-by: João Victor Oliveira <joao.oliveira@softtor.com.br >
PR-URL: https://github.com/nodejs/node/pull/62696
Reviewed-By: Aviv Keller <me@aviv.sh >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
2026-05-19 23:19:36 +00:00
Daijiro Wachi
b1387e6aed
lib: use Object.freeze to avoid defensive cloning in SourceMap
...
PR-URL: https://github.com/nodejs/node/pull/62830
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com >
2026-05-19 20:30:44 +02:00
Robin Malfait
a73fafb5cb
doc: reference correct function in Module docs
...
Signed-off-by: Robin Malfait <malfait.robin@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/63247
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2026-05-14 22:20:00 +00:00
Antoine du Hamel
49aef0d3f5
doc: remove unnecessary <!-- eslint- magic comments
...
Signed-off-by: Antoine du Hamel <duhamelantoine1995@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/63200
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Filip Skokan <panva.ip@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Chemi Atlow <chemi@atlow.co.il >
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com >
2026-05-10 15:06:35 +00:00
Antoine du Hamel
a725fe1389
2026-05-07, Version 26.1.0 (Current)
...
Notable changes:
buffer:
* (SEMVER-MINOR) add `end` parameter (Robert Nagy) https://github.com/nodejs/node/pull/62390
crypto:
* (SEMVER-MINOR) accept key data in `crypto.diffieHellman()` and cleanup DH jobs (Filip Skokan) https://github.com/nodejs/node/pull/62527
* (SEMVER-MINOR) implement `randomUUIDv7()` (nabeel378) https://github.com/nodejs/node/pull/62553
debugger:
* (SEMVER-MINOR) add edit-free runtime expression probes to `node inspect` (Joyee Cheung) https://github.com/nodejs/node/pull/62713
fs:
* (SEMVER-MINOR) add `signal` option to `fs.stat()` (Mert Can Altin) https://github.com/nodejs/node/pull/57775
* (SEMVER-MINOR) expose frsize field in statfs (Jinho Jang) https://github.com/nodejs/node/pull/62277
http:
* (SEMVER-MINOR) harden `ClientRequest` options merge (Matteo Collina) https://github.com/nodejs/node/pull/63082
* (SEMVER-MINOR) add `req.signal` to `IncomingMessage` (Akshat) https://github.com/nodejs/node/pull/62541
lib,src,test,doc:
* (SEMVER-MINOR) add `node:ffi` module (Colin Ihrig) https://github.com/nodejs/node/pull/62072
process:
* (SEMVER-MINOR) throw on `execve(2)` failure instead of aborting (Bryan English) https://github.com/nodejs/node/pull/62878
src:
* (SEMVER-MINOR) allow empty `--experimental-config-file` (Marco Ippolito) https://github.com/nodejs/node/pull/61610
stream:
* (SEMVER-MINOR) propagate destruction in `duplexPair` (Ahmed Elhor) https://github.com/nodejs/node/pull/61098
test_runner:
* (SEMVER-MINOR) align mock timeout api (sangwook) https://github.com/nodejs/node/pull/62820
* (SEMVER-MINOR) add mock-timers support for `AbortSignal.timeout` (DeveloperViraj) https://github.com/nodejs/node/pull/60751
* (SEMVER-MINOR) support test order randomization (Pietro Marchini) https://github.com/nodejs/node/pull/61747
util:
* (SEMVER-MINOR) colorize text with hex colors (Guilherme Araújo) https://github.com/nodejs/node/pull/61556
PR-URL: https://github.com/nodejs/node/pull/63137
2026-05-07 12:01:50 +02:00
Rafael Gonzaga
a641226c91
doc: fix lint-md
...
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com >
PR-URL: https://github.com/nodejs/node/pull/63127
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Filip Skokan <panva.ip@gmail.com >
2026-05-05 16:14:46 +00:00
RafaelGSS
9e633f94ce
2026-05-05, Version 26.0.0 (Current)
...
assert:
* (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) https://github.com/nodejs/node/pull/58849
build:
* (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) https://github.com/nodejs/node/pull/62555
* (SEMVER-MAJOR) enable Temporal by default (Richard Lau) https://github.com/nodejs/node/pull/61806
* (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) https://github.com/nodejs/node/pull/62296
* (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) https://github.com/nodejs/node/pull/61177
* (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) https://github.com/nodejs/node/pull/60863
* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) https://github.com/nodejs/node/pull/60111
build,test:
* (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) https://github.com/nodejs/node/pull/61898
build,win:
* (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) https://github.com/nodejs/node/pull/61806
crypto:
* (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) https://github.com/nodejs/node/pull/62499
* (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) https://github.com/nodejs/node/pull/62453
* (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) https://github.com/nodejs/node/pull/62348
* (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) https://github.com/nodejs/node/pull/62178
* (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) https://github.com/nodejs/node/pull/61084
* (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) https://github.com/nodejs/node/pull/60830
deps:
* (SEMVER-MAJOR) V8: cherry-pick 0f024d4e66e0 (ishabi) https://github.com/nodejs/node/pull/62408
* (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/62384
* (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) https://github.com/nodejs/node/pull/58070
* (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) https://github.com/nodejs/node/pull/58070
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) https://github.com/nodejs/node/pull/54077
* (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) https://github.com/nodejs/node/pull/60111
* (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) https://github.com/nodejs/node/pull/60111
* (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) https://github.com/nodejs/node/pull/58070
* (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) https://github.com/nodejs/node/pull/58070
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) https://github.com/nodejs/node/pull/54077
* (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) https://github.com/nodejs/node/pull/60111
diagnostics_channel:
* (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) https://github.com/nodejs/node/pull/61766
doc:
* (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) https://github.com/nodejs/node/pull/62176
* (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) https://github.com/nodejs/node/pull/61973
* (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) https://github.com/nodejs/node/pull/61005
http:
* (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) https://github.com/nodejs/node/pull/60635
* (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) https://github.com/nodejs/node/pull/60016
lib:
* (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) https://github.com/nodejs/node/pull/61333
lib,src:
* (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) https://github.com/nodejs/node/pull/62293
module:
* (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) https://github.com/nodejs/node/pull/62401
* (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) https://github.com/nodejs/node/pull/61803
src:
* (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) https://github.com/nodejs/node/pull/60488
* (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) https://github.com/nodejs/node/pull/60496
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) https://github.com/nodejs/node/pull/60111
stream:
* (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) https://github.com/nodejs/node/pull/62173
* (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) https://github.com/nodejs/node/pull/60657
* (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) https://github.com/nodejs/node/pull/60441
* (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) https://github.com/nodejs/node/pull/59873
test:
* (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) https://github.com/nodejs/node/pull/60488
tools:
* (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) https://github.com/nodejs/node/pull/61898
* (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) https://github.com/nodejs/node/pull/61898
util:
* (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) https://github.com/nodejs/node/pull/61029
* (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) https://github.com/nodejs/node/pull/60339
PR-URL: https://github.com/nodejs/node/pull/62526
2026-05-05 11:17:12 -03:00
Daijiro Wachi
846806bdb4
doc: fix duplicate word "for for" in compile cache
...
PR-URL: https://github.com/nodejs/node/pull/62917
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com >
Reviewed-By: Darshan Sen <raisinten@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com >
2026-04-26 21:16:57 +09:00
Node.js GitHub Bot
0dceddde2c
2026-04-15, Version 24.15.0 'Krypton' (LTS)
...
Notable changes:
cli:
* (SEMVER-MINOR) add --max-heap-size option (tannal) https://github.com/nodejs/node/pull/58708
* add --require-module/--no-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/60959
crypto:
* (SEMVER-MINOR) add raw key formats support to the KeyObject APIs (Filip Skokan) https://github.com/nodejs/node/pull/62240
fs:
* (SEMVER-MINOR) add `throwIfNoEntry` option for fs.stat and fs.promises.stat (Juan José) https://github.com/nodejs/node/pull/61178
http2:
* (SEMVER-MINOR) add http1Options for HTTP/1 fallback configuration (Amol Yadav) https://github.com/nodejs/node/pull/61713
module:
* mark require(esm) as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60959
* mark module compile cache as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60971
net:
* (SEMVER-MINOR) add `setTOS` and `getTOS` to `Socket` (Amol Yadav) https://github.com/nodejs/node/pull/61503
sqlite:
* (SEMVER-MINOR) add limits property to DatabaseSync (Mert Can Altin) https://github.com/nodejs/node/pull/61298
* mark as release candidate (Matteo Collina) https://github.com/nodejs/node/pull/61262
src:
* (SEMVER-MINOR) add C++ support for diagnostics channels (RafaelGSS) https://github.com/nodejs/node/pull/61869
stream:
* (SEMVER-MINOR) rename `Duplex.toWeb()` type option to `readableType` (René) https://github.com/nodejs/node/pull/61632
test_runner:
* add exports option for module mocks (sangwook) https://github.com/nodejs/node/pull/61727
* (SEMVER-MINOR) expose worker ID for concurrent test execution (Ali Hassan) https://github.com/nodejs/node/pull/61394
* (SEMVER-MINOR) show interrupted test on SIGINT (Matteo Collina) https://github.com/nodejs/node/pull/61676
PR-URL: https://github.com/nodejs/node/pull/62681
2026-04-15 18:59:05 +02:00
Antoine du Hamel
86282b56d2
2026-04-01, Version 25.9.0 (Current)
...
Notable changes:
async_hooks:
* (SEMVER-MINOR) add using scopes to `AsyncLocalStorage` (Stephen Belanger) https://github.com/nodejs/node/pull/61674
cli:
* (SEMVER-MINOR) add `--max-heap-size` option (tannal) https://github.com/nodejs/node/pull/58708
crypto:
* (SEMVER-MINOR) add TurboSHAKE and KangarooTwelve Web Cryptography algorithms (Filip Skokan) https://github.com/nodejs/node/pull/62183
repl:
* (SEMVER-MINOR) add customizable error handling (Anna Henningsen) https://github.com/nodejs/node/pull/62188
* (SEMVER-MINOR) remove dependency on `node:domain` (Matteo Collina) https://github.com/nodejs/node/pull/61227
sea:
* (SEMVER-MINOR) support code cache for ESM entrypoint in SEA (Joyee Cheung) https://github.com/nodejs/node/pull/62158
stream:
* (SEMVER-MINOR) add stream/iter Implementation (James M Snell) https://github.com/nodejs/node/pull/62066
test_runner:
* add exports option for module mocks (sangwook) https://github.com/nodejs/node/pull/61727
PR-URL: https://github.com/nodejs/node/pull/62522
2026-04-01 16:41:20 +02:00
Geoffrey Booth
0dfdec9542
module: runtime-deprecate module.register()
...
PR-URL: https://github.com/nodejs/node/pull/62401
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com >
Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day >
Reviewed-By: Filip Skokan <panva.ip@gmail.com >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
2026-04-01 15:37:26 +02:00
Geoffrey Booth
e9b5214d72
doc: deprecate module.register() (DEP0205)
...
PR-URL: https://github.com/nodejs/node/pull/62395
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
2026-03-31 17:04:01 +02:00
Joyee Cheung
d0798d12ed
doc,module: add missing doc for syncHooks.deregister()
...
PR-URL: https://github.com/nodejs/node/pull/61959
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
2026-03-03 16:33:28 +00:00
René
6964b53980
doc: fix module.stripTypeScriptTypes indentation
...
PR-URL: https://github.com/nodejs/node/pull/61992
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Harshitha K P <harshitha014@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2026-02-28 15:40:38 +01:00
Marco Ippolito
89f4b6cddb
module: remove --experimental-transform-types
...
PR-URL: https://github.com/nodejs/node/pull/61803
Refs: https://github.com/nodejs/typescript/issues/51
Reviewed-By: Paolo Insogna <paolo@cowtech.it >
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com >
Reviewed-By: Jordan Harband <ljharb@gmail.com >
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com >
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com >
2026-02-27 16:32:43 +00:00
Antoine du Hamel
beb7fd9d10
2026-02-10, Version 24.13.1 'Krypton' (LTS)
...
Notable changes:
build:
* add support for Python 3.14 (Christian Clauss) https://github.com/nodejs/node/pull/59983
cli:
* mark `--heapsnapshot-near-heap-limit` as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60956
crypto:
* update root certificates to NSS 3.119 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/61419
doc:
* mark `--build-snapshot` and `--build-snapshot-config` as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60954
meta:
* add avivkeller to collaborators (Aviv Keller) https://github.com/nodejs/node/pull/61115
* add gurgunday to collaborators (Gürgün Dayıoğlu) https://github.com/nodejs/node/pull/61094
* add Renegade334 to collaborators (Renegade334) https://github.com/nodejs/node/pull/60714
url:
* update ada to v3.4.2 and support unicode 17 (Yagiz Nizipli) https://github.com/nodejs/node/pull/61593
v8:
* mark `v8.queryObjects()` as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60957
PR-URL: https://github.com/nodejs/node/pull/61661
2026-02-10 14:16:51 +01:00
Node.js GitHub Bot
973e119d22
2026-01-19, Version 25.4.0 (Current)
...
Notable changes:
cli:
* add --require-module/--no-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/60959
* mark --heapsnapshot-near-heap-limit as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60956
crypto:
* update root certificates to NSS 3.117 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/60741
doc:
* add @avivkeller to collaborators (Aviv Keller) https://github.com/nodejs/node/pull/61115
* add gurgunday to collaborators (Gürgün Dayıoğlu) https://github.com/nodejs/node/pull/61094
* mark --build-snapshot and --build-snapshot-config as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60954
events:
* (SEMVER-MINOR) repurpose `events.listenerCount()` to accept EventTargets (René) https://github.com/nodejs/node/pull/60214
http:
* (SEMVER-MINOR) add http.setGlobalProxyFromEnv() (Joyee Cheung) https://github.com/nodejs/node/pull/60953
meta:
* add Renegade334 to collaborators (Renegade334) https://github.com/nodejs/node/pull/60714
module:
* mark require(esm) as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60959
* mark module compile cache as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60971
* (SEMVER-MINOR) allow subpath imports that start with `#/` (Jan Martin) https://github.com/nodejs/node/pull/60864
process:
* (SEMVER-MINOR) preserve AsyncLocalStorage in queueMicrotask only when needed (Gürgün Dayıoğlu) https://github.com/nodejs/node/pull/60913
stream:
* (SEMVER-MINOR) do not pass `readable.compose()` output via `Readable.from()` (René) https://github.com/nodejs/node/pull/60907
util:
* (SEMVER-MINOR) add convertProcessSignalToExitCode utility (Erick Wendel) https://github.com/nodejs/node/pull/60963
v8:
* mark v8.queryObjects() as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60957
PR-URL: https://github.com/nodejs/node/pull/61400
2026-01-19 14:00:39 -03:00
Joyee Cheung
28b11396fe
doc: mark sync module hooks as release candidate
...
PR-URL: https://github.com/nodejs/node/pull/60960
Refs: https://github.com/nodejs/node/issues/56241
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
2025-12-12 17:12:13 +00:00
Joyee Cheung
7f78002f03
doc: reorganize docs of module customization hooks
...
This reorganizes the documentation of module customization hooks
to promote the synchronous variant as it has fewer caveats.
Previously the documentation was organized as follows:
To do something:
1. For asynchronous hooks, do this, which may have these caveats
2. For synchronous hooks, do this, which does not have the caveats
To do something else:
1. For asynchronous hooks, do this, which may have these caveats
2. For synchronous hooks, do this, which does not have the caveats
It's now organized as follows:
Synchronous hooks:
To do something, do this.
To do something else, do this.
(No mention that it doesn't have caveats, because users are not supposed
to burden themselves with caveats in the other API that they do not
use).
Asynchronous hooks:
They have these caveats, if they are too complex to deal with, consider
use the synchronous variant.
To do something, do this, which may have these caveats.
To do something, do this, which may have these caveats.
PR-URL: https://github.com/nodejs/node/pull/60960
Refs: https://github.com/nodejs/node/issues/56241
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
2025-12-12 17:12:12 +00:00
Node.js GitHub Bot
47d8b88868
2025-12-10, Version 24.12.0 'Krypton' (LTS)
...
Notable changes:
http:
* (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) https://github.com/nodejs/node/pull/59778
lib:
* (SEMVER-MINOR) add options to util.deprecate (Rafael Gonzaga) https://github.com/nodejs/node/pull/59982
module:
* (SEMVER-MINOR) mark type stripping as stable (Marco Ippolito) https://github.com/nodejs/node/pull/60600
node-api:
* (SEMVER-MINOR) add napi_create_object_with_properties (Miguel Marcondes Filho) https://github.com/nodejs/node/pull/59953
sqlite:
* (SEMVER-MINOR) allow setting defensive flag (Bart Louwers) https://github.com/nodejs/node/pull/60217
src:
* (SEMVER-MINOR) add watch config namespace (Marco Ippolito) https://github.com/nodejs/node/pull/60178
* (SEMVER-MINOR) add an option to make compile cache portable (Aditi) https://github.com/nodejs/node/pull/58797
src,permission:
* (SEMVER-MINOR) add --allow-inspector ability (Rafael Gonzaga) https://github.com/nodejs/node/pull/59711
v8:
* (SEMVER-MINOR) add cpu profile (theanarkh) https://github.com/nodejs/node/pull/59807
PR-URL: https://github.com/nodejs/node/pull/61001
2025-12-10 17:40:34 +01:00
Joyee Cheung
1fbe842d64
module: mark module compile cache as stable
...
The feature set has been stable without any breaking changes
in the past year, and it's been depended enough in the wild
by popular packages that we'll likely need to treat any breakages
as semver-major in the future anyway. The future TODOs are likely
all non-breaking. Potential subtle breakages in implementation
details that should not be relied upon (such as the cache layout)
are explicitly excluded from the contract.
We'll investigate whether it can be enabled by default as a
different topic, which can be potentially semver-major.
PR-URL: https://github.com/nodejs/node/pull/60971
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br >
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
2025-12-08 15:08:11 +00:00
Chengzhong Wu
ce29481a52
doc: mark module.register as active development
...
PR-URL: https://github.com/nodejs/node/pull/60849
Refs: https://github.com/nodejs/node/pull/60302
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
2025-11-27 10:36:29 +00:00
Gerhard Stöbich
a59706f772
doc, module: change async customization hooks to experimental
...
There is ongoing work to replace async customization hooks by a
synchronous variant.
As a result bugs/design flaws or the async variant (thread leak,
overhead) are not addressed.
Adapt stability index to avoid wrong assumptions they might move to
stable.
Refs: https://github.com/nodejs/loaders/issues/201
Refs: https://github.com/nodejs/loaders/pull/198
PR-URL: https://github.com/nodejs/node/pull/60302
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Darshan Sen <raisinten@gmail.com >
2025-10-22 14:43:22 +00:00
RafaelGSS
a520a39adf
2025-10-15, Version 25.0.0 (Current)
...
assert:
* (SEMVER-MAJOR) move assert.fail with multiple arguments to eol (James M Snell) https://github.com/nodejs/node/pull/58532
* (SEMVER-MAJOR) move CallTracker to EOL (James M Snell) https://github.com/nodejs/node/pull/58006
assert,util:
* (SEMVER-MAJOR) fail promise comparison in deep equal checks (Ruben Bridgewater) https://github.com/nodejs/node/pull/59448
* (SEMVER-MAJOR) handle invalid dates as equal in deep comparison (Ruben Bridgewater) https://github.com/nodejs/node/pull/57627
async_hooks:
* (SEMVER-MAJOR) move `asyncResource` property on bound function to EOL (James M Snell) https://github.com/nodejs/node/pull/58618
buffer:
* (SEMVER-MAJOR) move SlowBuffer to EOL (Filip Skokan) https://github.com/nodejs/node/pull/58220
build:
* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) bump minimum Clang version to 19 (Michaël Zasso) https://github.com/nodejs/node/pull/59048
* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) stop distributing Corepack (Antoine du Hamel) https://github.com/nodejs/node/pull/57617
child_process:
* (SEMVER-MAJOR) move _channel to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58527
crypto:
* (SEMVER-MAJOR) runtime-deprecate default shake128/256 output lengths (Filip Skokan) https://github.com/nodejs/node/pull/59008
* (SEMVER-MAJOR) move deprecated hash and mgf1Hash options to EOL (James M Snell) https://github.com/nodejs/node/pull/58706
* (SEMVER-MAJOR) runtime deprecate ECDH.setPublicKey() (James M Snell) https://github.com/nodejs/node/pull/58620
deps:
* (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) https://github.com/nodejs/node/pull/54077
* (SEMVER-MAJOR) update V8 to 14.1.146.11 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) V8: backport 1d3362c55396 (Shu-yu Guo) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) V8: cherry-pick 4f38995c8295 (Shu-yu Guo) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) V8: cherry-pick 044b9b6f589d (Rezvan Mahdavi Hezaveh) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) V8: cherry-pick d2ad518a0b57 (Joyee Cheung) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) V8: revert 6d6c1e680c7b (Michaël Zasso) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) V8: revert e3cddbedb205 (Michaël Zasso) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) https://github.com/nodejs/node/pull/58064
* (SEMVER-MAJOR) update V8 to 13.7.152.9 (Michaël Zasso) https://github.com/nodejs/node/pull/58064
dgram:
* (SEMVER-MAJOR) move deprecated APIs to EOL (James M Snell) https://github.com/nodejs/node/pull/58474
dns:
* (SEMVER-MAJOR) move falsy hostname in lookup to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58619
doc,src,test:
* (SEMVER-MAJOR) replace use of deprecated `GetIsolate` (Michaël Zasso) https://github.com/nodejs/node/pull/59805
fs:
* (SEMVER-MAJOR) move FileHandle close on GC to EOL (James M Snell) https://github.com/nodejs/node/pull/58536
* (SEMVER-MAJOR) move rmdir recursive option to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58616
* (SEMVER-MAJOR) make `processReadResult()` and `readSyncRecursive()` private (Livia Medeiros) https://github.com/nodejs/node/pull/58672
* (SEMVER-MAJOR) move fs stream open method to eol (James M Snell) https://github.com/nodejs/node/pull/58529
* (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) https://github.com/nodejs/node/pull/55862
http:
* (SEMVER-MAJOR) deprecate writeHeader (Sebastian Beltran) https://github.com/nodejs/node/pull/59060
lib:
* (SEMVER-MAJOR) use validators for argument validation (Nam Yooseong) https://github.com/nodejs/node/pull/59416
* (SEMVER-MAJOR) expose global ErrorEvent (Richie Bendall) https://github.com/nodejs/node/pull/58920
* (SEMVER-MAJOR) deprecate `_stream_*` modules (Dario Piotrowicz) https://github.com/nodejs/node/pull/58337
* (SEMVER-MAJOR) deprecate _tls_common and _tls_wrap (Dario Piotrowicz) https://github.com/nodejs/node/pull/57643
module:
* (SEMVER-MAJOR) move Module._debug to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58473
node-api:
* (SEMVER-MAJOR) add warning for NAPI_EXPERIMENTAL (Miguel Marcondes Filho) https://github.com/nodejs/node/pull/58280
perf_hooks:
* (SEMVER-MAJOR) move deprecated accessors to EOF (James M Snell) https://github.com/nodejs/node/pull/58531
process:
* (SEMVER-MAJOR) move multipleResolves event to EOL (James M Snell) https://github.com/nodejs/node/pull/58707
repl:
* (SEMVER-MAJOR) eol deprecate instantiating without new (Aviv Keller) https://github.com/nodejs/node/pull/59495
src:
* (SEMVER-MAJOR) update crypto.getCipherInfo() to use DictionaryTemplate (James M Snell) https://github.com/nodejs/node/pull/60036
* (SEMVER-MAJOR) fix calls to v8::Object::wrap (Andreas Haas) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 141 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) improve performance of dotenv ToObject (James M Snell) https://github.com/nodejs/node/pull/60038
* (SEMVER-MAJOR) use std::string_view from node_report (iknoom) https://github.com/nodejs/node/pull/60006
* (SEMVER-MAJOR) unflag --experimental-webstorage by default (Daniel M Brasil) https://github.com/nodejs/node/pull/57666
* (SEMVER-MAJOR) store `Local` for `CallbackScope` on stack (Anna Henningsen) https://github.com/nodejs/node/pull/59705
* (SEMVER-MAJOR) remove node.h APIs to make callback without an async context (Chengzhong Wu) https://github.com/nodejs/node/pull/58471
* (SEMVER-MAJOR) remove deprecated node::EmitBeforeExit and node::EmitExit (Chengzhong Wu) https://github.com/nodejs/node/pull/58469
* (SEMVER-MAJOR) remove deprecated node::CreatePlatform and node::FreePlatform (Chengzhong Wu) https://github.com/nodejs/node/pull/58470
* (SEMVER-MAJOR) remove deprecated node::InitializeNodeWithArgs (Chengzhong Wu) https://github.com/nodejs/node/pull/58470
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 138 (Michaël Zasso) https://github.com/nodejs/node/pull/58064
src,permission:
* (SEMVER-MAJOR) add --allow-net permission (Rafael Gonzaga) https://github.com/nodejs/node/pull/58517
test:
* (SEMVER-MAJOR) update cppgc-object addon config (StefanStojanovic) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) spin longer for sequential/test-worker-prof (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) remove `--always-turbofan` flag (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) update snapshot for V8 14.1 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
test,win:
* (SEMVER-MAJOR) split addon tests (StefanStojanovic) https://github.com/nodejs/node/pull/59805
tls:
* (SEMVER-MAJOR) move IP-address servername deprecation to eol (James M Snell) https://github.com/nodejs/node/pull/58533
tools:
* (SEMVER-MAJOR) update V8 gypfiles for 14.0 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) update V8 gypfiles for 13.9 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) update V8 gypfiles for 13.8 (Michaël Zasso) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) enable leaptiering for aix/ibmi (Abdirahim Musse) https://github.com/nodejs/node/pull/59805
* (SEMVER-MAJOR) update V8 gypfiles for 13.7 (Michaël Zasso) https://github.com/nodejs/node/pull/58064
url:
* (SEMVER-MAJOR) move bad port deprecation in legacy url to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58617
util,console:
* (SEMVER-MAJOR) colorize regexp groups, character classes, etc (Ruben Bridgewater) https://github.com/nodejs/node/pull/59710
worker:
* (SEMVER-MAJOR) move terminate callback to end-of-life (James M Snell) https://github.com/nodejs/node/pull/58528
PR-URL: https://github.com/nodejs/node/pull/59896
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com >
2025-10-15 13:27:47 -03:00
Joyee Cheung
db0121bedd
module: fix directory option in the enableCompileCache() API
...
The option name should be `directory` to be consistent with the
returned result. It should also allow environment variable
overrides.
This also adds documentation for the new options and improves it.
PR-URL: https://github.com/nodejs/node/pull/59931
Reviewed-By: Aditi Singh <aditisingh1400@gmail.com >
2025-10-09 07:55:31 +00:00
Aditi
94422e8a40
src: add an option to make compile cache portable
...
Adds an option (NODE_COMPILE_CACHE_PORTABLE) for
the built-in compile cache to encode the hashes with
relative file paths. On enabling the option,
the source directory along with cache directory can be
bundled and moved, and the cache continues to work.
When enabled, paths encoded in hash are relative to
compile cache directory.
PR-URL: https://github.com/nodejs/node/pull/58797
Fixes: https://github.com/nodejs/node/issues/58755
Refs: https://github.com/nodejs/node/issues/52696
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2025-09-12 11:00:39 +00:00
Aviv Keller
fe91ac56e0
doc: format safely for doc-kit
...
PR-URL: https://github.com/nodejs/node/pull/59229
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com >
2025-07-28 20:03:37 +00:00
Aviv Keller
4102dcc226
doc: fix typed list formatting
...
PR-URL: https://github.com/nodejs/node/pull/59019
Refs: https://github.com/nodejs/api-docs-tooling/issues/348
Reviewed-By: Chemi Atlow <chemi@atlow.co.il >
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com >
Reviewed-By: Claudio Wunder <cwunder@gnome.org >
2025-07-15 17:18:42 +00:00
Antoine du Hamel
6f83e5d5e4
doc: add history entry for TS support in hooks
...
PR-URL: https://github.com/nodejs/node/pull/58732
Refs: https://github.com/nodejs/node/pull/56350
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2025-06-18 19:56:09 +00:00
Chengzhong Wu
40d8983a3d
doc,lib: update source map links to ECMA426
...
PR-URL: https://github.com/nodejs/node/pull/58597
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2025-06-08 10:30:11 +00:00
Antoine du Hamel
d19437d859
doc: fix linter errors
...
PR-URL: https://github.com/nodejs/node/pull/57987
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
2025-04-23 08:59:33 +00:00
RafaelGSS
71f8c3be1f
2025-04-23, Version 22.15.0 'Jod' (LTS)
...
Notable changes:
assert:
* (SEMVER-MINOR) implement partial error comparison (Ruben Bridgewater) https://github.com/nodejs/node/pull/57370
* (SEMVER-MINOR) improve partialDeepStrictEqual (Ruben Bridgewater) https://github.com/nodejs/node/pull/57370
cli:
* (SEMVER-MINOR) allow --cpu-prof* in NODE_OPTIONS (Carlos Espa) https://github.com/nodejs/node/pull/57018
crypto:
* update root certificates to NSS 3.108 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/57381
* (SEMVER-MINOR) support --use-system-ca on Windows (Joyee Cheung) https://github.com/nodejs/node/pull/56833
* (SEMVER-MINOR) added support for reading certificates from macOS system store (Tim Jacomb) https://github.com/nodejs/node/pull/56599
deps:
* update timezone to 2025a (Node.js GitHub Bot) https://github.com/nodejs/node/pull/56876
deps,tools:
* (SEMVER-MINOR) add zstd 1.5.6 (Jan Martin) https://github.com/nodejs/node/pull/52100
dns:
* (SEMVER-MINOR) add TLSA record query and parsing (Rithvik Vibhu) https://github.com/nodejs/node/pull/52983
doc:
* add @geeksilva97 to collaborators (Edy Silva) https://github.com/nodejs/node/pull/57241
module:
* (SEMVER-MINOR) use synchronous hooks for preparsing in import(cjs) (Joyee Cheung) https://github.com/nodejs/node/pull/55698
* (SEMVER-MINOR) implement module.registerHooks() (Joyee Cheung) https://github.com/nodejs/node/pull/55698
process:
* (SEMVER-MINOR) add execve (Paolo Insogna) https://github.com/nodejs/node/pull/56496
* (SEMVER-MINOR) add threadCpuUsage (Paolo Insogna) https://github.com/nodejs/node/pull/56467
sqlite:
* (SEMVER-MINOR) add StatementSync.prototype.columns() (Colin Ihrig) https://github.com/nodejs/node/pull/57490
* (SEMVER-MINOR) allow returning `ArrayBufferView`s from user-defined functions (René) https://github.com/nodejs/node/pull/56790
src:
* set signal inspector io thread name (RafaelGSS) https://github.com/nodejs/node/pull/56416
* set thread name for main thread and v8 worker (RafaelGSS) https://github.com/nodejs/node/pull/56416
* set worker thread name using worker.name (RafaelGSS) https://github.com/nodejs/node/pull/56416
* use a default thread name for inspector (RafaelGSS) https://github.com/nodejs/node/pull/56416
tls:
* (SEMVER-MINOR) implement tls.getCACertificates() (Joyee Cheung) https://github.com/nodejs/node/pull/57107
util:
* (SEMVER-MINOR) expose diff function used by the assertion errors (Giovanni Bucci) https://github.com/nodejs/node/pull/57462
v8:
* (SEMVER-MINOR) add v8.getCppHeapStatistics() method (Aditi) https://github.com/nodejs/node/pull/57146
zlib:
* (SEMVER-MINOR) add zstd support (Jan Martin) https://github.com/nodejs/node/pull/52100
PR-URL: https://github.com/nodejs/node/pull/57840
2025-04-23 09:11:57 +02:00
Alex Schwartz
c9c61a3a7d
doc: fix typo in module.md
...
PR-URL: https://github.com/nodejs/node/pull/57889
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Qingyu Deng <i@ayase-lab.com >
2025-04-15 14:42:38 +02:00
Antoine du Hamel
86c2505441
doc: add missing TS formats for load hooks
...
PR-URL: https://github.com/nodejs/node/pull/57837
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
2025-04-13 17:38:56 +00:00
Marco Ippolito
3984bc1a36
doc: mark type stripping as release candidate
...
PR-URL: https://github.com/nodejs/node/pull/57705
Refs: https://github.com/nodejs/typescript/issues/24
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Michaël Zasso <targos@protonmail.com >
Reviewed-By: Moshe Atlow <moshe@atlow.co.il >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Jordan Harband <ljharb@gmail.com >
Reviewed-By: Minwoo Jung <nodecorelab@gmail.com >
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com >
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com >
2025-04-03 12:15:40 +00:00
Antoine du Hamel
524c07873c
doc: make stability labels more consistent
...
PR-URL: https://github.com/nodejs/node/pull/57516
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
2025-03-23 15:58:20 +00:00
Timo Kössler
823c9b70c7
doc: fix usage of module.registerSync in comment
...
PR-URL: https://github.com/nodejs/node/pull/57328
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2025-03-10 21:25:56 +00:00
Antoine du Hamel
7a6b12895e
doc: fix link and history of SourceMap sections
...
PR-URL: https://github.com/nodejs/node/pull/57098
Fixes: https://github.com/nodejs/node/issues/57094
Refs: https://github.com/nodejs/node/pull/48461
Refs: https://github.com/nodejs/node/pull/47790
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: James M Snell <jasnell@gmail.com >
2025-02-18 19:26:40 +00:00
Joyee Cheung
e892e79f17
doc: fix transpiler loader hooks documentation
...
The loader hooks examples have been broken for a while:
1. The nextLoad() hook cannot be used on a .coffee file that ends
up going to the default load step without an explict format,
which would cause a ERR_UNKNOWN_FILE_EXTENSION. Mention
adding a package.json with a type field to work around it
in the example.
2. Pass the context parameter to the nextLoad() invocation and
document that context.format is mandatory when module type
is not explicitly inferrable from the module.
3. Correct the getPackageType() implementation which returns
false instead of undefined in the absence of an explict format,
which is not a valid type for format.
PR-URL: https://github.com/nodejs/node/pull/57037
Refs: https://github.com/nodejs/node/issues/57030
Reviewed-By: Jacob Smith <jacob@frende.me >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
2025-02-16 12:48:56 +00:00
Antoine du Hamel
e7626dc70d
2025-02-11, Version 22.14.0 'Jod' (LTS)
...
Notable changes:
crypto:
* update root certificates to NSS 3.107 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/56566
fs:
* (SEMVER-MINOR) allow `exclude` option in globs to accept glob patterns (Daeyeon Jeong) https://github.com/nodejs/node/pull/56489
lib:
* (SEMVER-MINOR) add typescript support to STDIN eval (Marco Ippolito) https://github.com/nodejs/node/pull/56359
module:
* (SEMVER-MINOR) add ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX (Marco Ippolito) https://github.com/nodejs/node/pull/56610
* (SEMVER-MINOR) add `findPackageJSON` util (Jacob Smith) https://github.com/nodejs/node/pull/55412
process:
* (SEMVER-MINOR) add process.ref() and process.unref() methods (James M Snell) https://github.com/nodejs/node/pull/56400
sqlite:
* (SEMVER-MINOR) support TypedArray and DataView in `StatementSync` (Alex Yang) https://github.com/nodejs/node/pull/56385
src:
* (SEMVER-MINOR) add --disable-sigusr1 to prevent signal i/o thread (Rafael Gonzaga) https://github.com/nodejs/node/pull/56441
src,worker:
* (SEMVER-MINOR) add isInternalWorker (Carlos Espa) https://github.com/nodejs/node/pull/56469
test_runner:
* (SEMVER-MINOR) add TestContext.prototype.waitFor() (Colin Ihrig) https://github.com/nodejs/node/pull/56595
* (SEMVER-MINOR) add t.assert.fileSnapshot() (Colin Ihrig) https://github.com/nodejs/node/pull/56459
* (SEMVER-MINOR) add assert.register() API (Colin Ihrig) https://github.com/nodejs/node/pull/56434
worker:
* (SEMVER-MINOR) add eval ts input (Marco Ippolito) https://github.com/nodejs/node/pull/56394
PR-URL: https://github.com/nodejs/node/pull/56910
2025-02-11 11:41:44 +01:00
Antoine du Hamel
c2c7f08f83
2025-01-30, Version 23.7.0 (Current)
...
Notable changes:
crypto:
* update root certificates to NSS 3.107 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/56566
fs:
* (SEMVER-MINOR) allow `exclude` option in globs to accept glob patterns (Daeyeon Jeong) https://github.com/nodejs/node/pull/56489
module:
* (SEMVER-MINOR) add ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX (Marco Ippolito) https://github.com/nodejs/node/pull/56610
sqlite:
* (SEMVER-MINOR) support TypedArray and DataView in `StatementSync` (Alex Yang) https://github.com/nodejs/node/pull/56385
src:
* (SEMVER-MINOR) add --disable-sigusr1 to prevent signal i/o thread (Rafael Gonzaga) https://github.com/nodejs/node/pull/56441
src,worker:
* (SEMVER-MINOR) add isInternalWorker (Carlos Espa) https://github.com/nodejs/node/pull/56469
test_runner:
* (SEMVER-MINOR) add TestContext.prototype.waitFor() (Colin Ihrig) https://github.com/nodejs/node/pull/56595
* (SEMVER-MINOR) add t.assert.fileSnapshot() (Colin Ihrig) https://github.com/nodejs/node/pull/56459
* (SEMVER-MINOR) add assert.register() API (Colin Ihrig) https://github.com/nodejs/node/pull/56434
PR-URL: https://github.com/nodejs/node/pull/56800
2025-01-30 18:58:16 +01:00
Chengzhong Wu
b11ee4cad3
lib: allow skipping source maps in node_modules
...
Files in `node_modules` are not authored by the user directly and the
original sources are less relevant to the user.
Skipping source maps in `node_modules` improves the general
performance. Add `module.setSourceMapsSupport(enabled, options)` to
skip source maps in `node_modules` if it is needed. This moves
all source maps related API to `node:module` and this a step to
promote the source maps API to stable.
PR-URL: https://github.com/nodejs/node/pull/56639
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
2025-01-23 22:44:10 +00:00