Commit Graph

8490 Commits

Author SHA1 Message Date
Joyee Cheung
3e31baeda6
esm: use sync loading/resolving on non-loader-hook thread
ESM resolution and loading is now always synchronous from a
non-loader-hook thread. If no asynchrnous loader hooks are
registered, the resolution/loading is entirely synchronous.
If asynchronous loader hooks are registered, these would be
synchronous on the non-loader-hook thread, and asynchronous
on the loader hook thread.

This avoids several races caused by async/sync loading sharing
the same cache. In particular, asynchronous loader hooks
now works with `require(esm)` - previously it tends to break
due to races.

In addition, when an asynchronous loader hook
returns a promise that never settles, the main thread no longer
silently exits with exit code 13, leaving the code below
any module loading calls silently ignored without being executed.
Instead, it now throws ERR_ASYNC_LOADER_REQUEST_NEVER_SETTLED
which can be caught and handled by the main thread. If the module
request comes from `import()`, the never-settling promise is
now relayed to the result returned by `import()`.

Drive-by: when annotating the error about importing undetectable
named exports from CommonJS, it now no longer reload the source
code of the CommonJS module, and instead reuses format information
cached when the module was loaded for linking.

PR-URL: https://github.com/nodejs/node/pull/60380
Fixes: https://github.com/nodejs/node/issues/59666
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
2025-10-31 20:45:10 +00:00
Joyee Cheung
943b1edb3c
doc: correct module loading descriptions
The existing description is outdated, and exposes too many details
that are subject to change.

- There is no point conceptualizing "two module loaders", in reality
  the boundary is blurred since the two invoke each other to support
  require(esm) and import(cjs). The distinction lies not in
  what kind of module is being requested/which loader is used, but
  only in how the the module request is initiated (via `require()`
  or `import()`). The inner working of the loaders are subject
  to change and not suitable to be documented.
- It should not mention monkey patching in the documentation, as
  publicly supported universal hooks are already provided through
  `module.registerHooks()`, and so there's no need to single out
  any of them in terms of loader hooks support either.
- Remove the description about whether they are asynchronous or
  synchronous, which is also implementation detail subject to change.
- Add missing descriptions about how .ts, .mts and .cts are treated,
  and `.node` is also supported in import now.
- There is no need to specially mention .node treatment in cli.md,
  link to the explanations about loading from `import` in packages.md
  instead.

PR-URL: https://github.com/nodejs/node/pull/60346
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
2025-10-31 20:30:23 +00:00
Edy Silva
0981426d3c
sqlite,doc: fix StatementSync section
PR-URL: https://github.com/nodejs/node/pull/60474
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-31 02:46:05 +00:00
Miguel Marcondes Filho
a556db4782
node-api: add napi_create_object_with_properties
PR-URL: https://github.com/nodejs/node/pull/59953
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Vladimir Morozov <vmorozov@microsoft.com>
2025-10-30 14:10:44 +00:00
Joyee Cheung
04e2d71323
doc: clarify --use-system-ca support status
Node.js only checks trust settings of additional certificates
from the system store.
It does not, however, support revocation/distrust of existing
certificates.

PR-URL: https://github.com/nodejs/node/pull/60340
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-29 15:55:55 +00:00
Antoine du Hamel
f1d8634179
2025-10-28, Version 25.1.0 (Current)
Notable changes:

http:
  * (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) https://github.com/nodejs/node/pull/59778
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

PR-URL: https://github.com/nodejs/node/pull/60436
2025-10-28 20:03:00 +01:00
Chengzhong Wu
51a57f2b36
perf_hooks: move non-standard performance properties to perf_hooks
`performance.eventLoopUtilization` and `performance.timerify` are not
part of the Web API. Expose these two functions directly on the
`perf_hooks` module.

PR-URL: https://github.com/nodejs/node/pull/60370
Fixes: https://github.com/nodejs/node/issues/60368
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2025-10-28 00:23:50 +01:00
Bart Louwers
fd7b33e763
sqlite: allow setting defensive flag
PR-URL: https://github.com/nodejs/node/pull/60217
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-10-27 14:01:16 +00:00
Antoine du Hamel
f7ca0ae765
doc: remove Corepack documentation page
PR-URL: https://github.com/nodejs/node/pull/57663
Reviewed-By: Jordan Harband <ljharb@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2025-10-27 14:58:22 +01:00
Augustin Mauroy
b9de5d0cb6
doc: mention more codemods in deprecations.md
PR-URL: https://github.com/nodejs/node/pull/60243
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
2025-10-27 14:54:31 +01:00
Deokjin Kim
5bd2152b89
doc: remove unnecessary statement of web storage
For now, web storage is enabled by default.

Refs: https://github.com/nodejs/node/pull/57666
PR-URL: https://github.com/nodejs/node/pull/60363
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-10-24 06:27:18 +00:00
Jimmy Leung
520d8277a8
doc: add missing CAA type to dns.resolveAny() & dnsPromises.resolveAny()
The AnyTraits::Parse() method in cares_wrap.cc will "Parse CAA records"
as the code comment suggests. The tables in doc should indicate this as
well.

PR-URL: https://github.com/nodejs/node/pull/58899
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-22 18:43:07 +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
Antoine du Hamel
b9dedf416b
2025-10-20, Version 22.21.0 'Jod' (LTS)
Notable changes:

cli:
  * (SEMVER-MINOR) add `--use-env-proxy` (Joyee Cheung) https://github.com/nodejs/node/pull/59151
http:
  * (SEMVER-MINOR) support http proxy for fetch under `NODE_USE_ENV_PROXY` (Joyee Cheung) https://github.com/nodejs/node/pull/57165
  * (SEMVER-MINOR) add `shouldUpgradeCallback` to let servers control HTTP upgrades (Tim Perry) https://github.com/nodejs/node/pull/59824
http,https:
  * (SEMVER-MINOR) add built-in proxy support in `http`/`https.request` and `Agent` (Joyee Cheung) https://github.com/nodejs/node/pull/58980
src:
  * (SEMVER-MINOR) add percentage support to `--max-old-space-size` (Asaf Federman) https://github.com/nodejs/node/pull/59082

PR-URL: https://github.com/nodejs/node/pull/60230
2025-10-21 01:45:50 +02:00
Marco Ippolito
cec1bd5498
src: add watch config namespace
PR-URL: https://github.com/nodejs/node/pull/60178
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2025-10-20 13:53:29 +02:00
Jonas Geiler
9fbf0cbc60
doc: use any for worker_threads.Worker 'error' event argument err
A worker thread can throw anything via the `throw` keyword, which gets
passed directly to 'error' event listeners. The event listener should
not assume it is an `Error` object.

PR-URL: https://github.com/nodejs/node/pull/60300
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2025-10-19 22:37:00 +02:00
Muhammad Salman Aziz
bbd1fa5e2f
doc: update decorator documentation to reflect actual policy
- Remove misleading 'soon' language
- Remove 'temporary limitation' claim
- Clarify that Node.js will not provide polyfills
- Wait for native JavaScript engine support

Refs: https://github.com/nodejs/node/issues/60282
PR-URL: https://github.com/nodejs/node/pull/60288
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
2025-10-19 08:34:28 +00:00
Gerhard Stöbich
382f7cfcef
doc, assert: correct order of changes entries
PR-URL: https://github.com/nodejs/node/pull/60304
Refs: https://github.com/nodejs/node/pull/58849
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2025-10-18 13:36:07 +00:00
Joyee Cheung
38bf955937 vm: make vm.Module.evaluate() conditionally synchronous
- Make sure that the vm.Module.evaluate() method is conditionally
  synchronous based on the specification. Previously, the returned
  promise is unconditionally pending (even for synthetic modules and
  source text modules without top-level await) instead of immediately
  fulfilled, making it harder to debug as it deviates from the
  specified behavior.
- Clarify the synchronicity of this method in the documentation
- Add more tests for the synchronicity of this method.

PR-URL: https://github.com/nodejs/node/pull/60205
Refs: https://github.com/nodejs/node/issues/59656
Refs: https://github.com/nodejs/node/issues/37648
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2025-10-18 08:20:47 +00:00
Ruben Bridgewater
d3f79aa65d
assert: allow printf-style messages as assertion error
Also add functions as allowed message input.
This allows to have leavy message computation to become cheaper.

PR-URL: https://github.com/nodejs/node/pull/58849
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2025-10-17 20:15:17 +00:00
jakecastelli
336b2d08e1
doc: add --heap-snapshot-on-oom to useful v8 flag
PR-URL: https://github.com/nodejs/node/pull/60260
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-17 05:24:57 +00:00
XTY
71f5b1cbf0
doc: fix blob.bytes() heading level
PR-URL: https://github.com/nodejs/node/pull/60252
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-16 08:17:53 +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
Rafael Gonzaga
0c35aaf55f
http: add optimizeEmptyRequests server option
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com>
Co-Authored-By: RafaelGSS <rafael.nunu@hotmail.com>
PR-URL: https://github.com/nodejs/node/pull/59778
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-10-14 12:17:53 +00:00
Artur Gawlik
e6aaa98eb0
doc: fix not working code example in vm docs
PR-URL: https://github.com/nodejs/node/pull/60224
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-10-14 06:46:29 +00:00
Steven
1cd16e5355
doc: improve code snippet alternative of url.parse() using WHATWG URL
PR-URL: https://github.com/nodejs/node/pull/60209
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-13 01:50:34 +00:00
Aviv Keller
d54e6aec9e
doc: createSQLTagStore -> createTagStore
PR-URL: https://github.com/nodejs/node/pull/60182
Refs: https://discord.com/channels/425824580918181889/425824580918181891/1425966053242048584
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-11 22:16:14 +00:00
theanarkh
f9fcc746f3
v8: add cpu profile
PR-URL: https://github.com/nodejs/node/pull/59807
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-10-11 17:20:57 +00:00
René
75a6fff6be
doc: disambiguate top-level worker_threads module exports
PR-URL: https://github.com/nodejs/node/pull/59890
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-10 12:17:12 +00:00
Asaf Federman
ad2c1bf62e
test,doc: skip --max-old-space-size-percentage on 32-bit platforms
PR-URL: https://github.com/nodejs/node/pull/60144
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2025-10-09 16:23:51 +00: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
Node.js GitHub Bot
642a7c0d46
2025-10-08, Version 24.10.0 (Current)
Notable changes:

console:
  * (SEMVER-MINOR) allow per-stream `inspectOptions` option (Anna Henningsen) https://github.com/nodejs/node/pull/60082
lib:
  * (SEMVER-MINOR) remove util.getCallSite (Rafael Gonzaga) https://github.com/nodejs/node/pull/59980
sqlite:
  * (SEMVER-MINOR) create authorization api (Guilherme Araújo) https://github.com/nodejs/node/pull/59928

PR-URL: https://github.com/nodejs/node/pull/60136
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com>
2025-10-08 19:44:10 -03:00
Augustin Mauroy
6797c6e1f8
doc: add automated migration info to deprecations
PR-URL: https://github.com/nodejs/node/pull/60022
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-06 14:32:39 +00:00
Angelo Gazzola
db56020f50
doc: fix typo on child_process.md
This note on `options.stdio` mentions that it's not recommended to pass
`stdin` as a writable stream and `stdout/stderr` as readable, but then
proceeds to say to always check that `stdin` is writable and
`stdout/stderr` are readable.

Going by the examples and the fact that `process.stdin` is readable and
`process.stdout/process.stderr` are writable, I'm assuming that the
types in the recommendation got swapped.

PR-URL: https://github.com/nodejs/node/pull/60114
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-10-06 09:11:55 +00:00
Aviv Keller
0e942cc859
doc: remove optional title prefixes
PR-URL: https://github.com/nodejs/node/pull/60087
Refs: https://github.com/nodejs/doc-kit/issues/378
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2025-10-05 16:23:01 +00:00
Michaël Zasso
5623194a6b
doc,src,test: replace use of deprecated GetIsolate
`Isolate::GetCurrent()` should be used instead as it returns the same
thing.

Refs: 5c4a937aaf
PR-URL: https://github.com/nodejs/node/pull/59805
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2025-10-04 18:48:35 +02:00
Anna Henningsen
79f1999531
console: allow per-stream inspectOptions option
We (correctly) allow different streams to be specified for `stdout`
and `stderr`, so we should also allow different inspect options for
these streams.

PR-URL: https://github.com/nodejs/node/pull/60082
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Jordan Harband <ljharb@gmail.com>
2025-10-03 16:11:08 +02:00
Santeri Hiltunen
bb04959818
doc: mark .env files support as stable
As discussed in the referenced issue the feature should be ready to be
marked as stable.

Refs: https://github.com/nodejs/node/issues/49148#issuecomment-3307309232
PR-URL: https://github.com/nodejs/node/pull/59925
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-10-03 15:43:10 +02:00
Filip Skokan
3dc8c57204
doc,crypto: reorder ML-KEM in the asymmetric key types table
PR-URL: https://github.com/nodejs/node/pull/60067
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2025-10-01 12:25:45 +00:00
Guilherme Araújo
b217051d36
sqlite: create authorization api
PR-URL: https://github.com/nodejs/node/pull/59928
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com>
2025-10-01 11:40:45 +02:00
Steven
2e5c8dff9c doc: mention reverse proxy and include simple example
PR-URL: https://github.com/nodejs/node/pull/59736
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2025-09-26 17:58:16 +00:00
Steven
157cfdeeb3 doc: provide alternative to url.parse() using WHATWG URL
PR-URL: https://github.com/nodejs/node/pull/59736
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2025-09-26 17:58:15 +00:00
Node.js GitHub Bot
ce72fccc9d
2025-09-25, Version 24.9.0 (Current)
Notable changes:

http:
  * (SEMVER-MINOR) add shouldUpgradeCallback to let servers control HTTP upgrades (Tim Perry) https://github.com/nodejs/node/pull/59824
sqlite:
  * (SEMVER-MINOR) cleanup ERM support and export Session class (James M Snell) https://github.com/nodejs/node/pull/58378
  * (SEMVER-MINOR) add tagged template (0hm☘️) https://github.com/nodejs/node/pull/58748
worker:
  * (SEMVER-MINOR) add heap profile API (theanarkh) https://github.com/nodejs/node/pull/59846

PR-URL: https://github.com/nodejs/node/pull/59997
2025-09-25 21:40:51 +02:00
Deokjin Kim
d3ee5d9b2b
doc: fix typo of built-in module specifier in worker_threads
node:: -> node:
PR-URL: https://github.com/nodejs/node/pull/59992
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-09-25 15:31:20 +00:00
Daniel M Brasil
3312e4e946
src: unflag --experimental-webstorage by default
PR-URL: https://github.com/nodejs/node/pull/57666
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-09-25 11:59:58 +00:00
Node.js GitHub Bot
f5e2ecc41b
2025-09-24, Version 22.20.0 'Jod' (LTS)
Notable changes:

crypto:
  * update root certificates to NSS 3.114 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/59571
deps:
  * fix OpenSSL security level at 1 (Richard Lau) https://github.com/nodejs/node/pull/59859
  * upgrade openssl sources to openssl-3.5.2 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/59371
doc:
  * stabilize --disable-sigusr1 (Rafael Gonzaga) https://github.com/nodejs/node/pull/59707
  * mark `path.matchesGlob` as stable (Aviv Keller) https://github.com/nodejs/node/pull/59572
http:
  * (SEMVER-MINOR) add Agent.agentKeepAliveTimeoutBuffer option (Haram Jeong) https://github.com/nodejs/node/pull/59315
http2:
  * (SEMVER-MINOR) add support for raw header arrays in h2Stream.respond() (Tim Perry) https://github.com/nodejs/node/pull/59455
inspector:
  * add http2 tracking support (Darshan Sen) https://github.com/nodejs/node/pull/59611
sea:
  * (SEMVER-MINOR) implement execArgvExtension (Joyee Cheung) https://github.com/nodejs/node/pull/59560
  * (SEMVER-MINOR) support execArgv in sea config (Joyee Cheung) https://github.com/nodejs/node/pull/59314
stream:
  * (SEMVER-MINOR) add brotli support to CompressionStream and DecompressionStream (Matthew Aitken) https://github.com/nodejs/node/pull/59464
test_runner:
  * (SEMVER-MINOR) support object property mocking (Idan Goshen) https://github.com/nodejs/node/pull/58438
worker:
  * (SEMVER-MINOR) add cpu profile APIs for worker (theanarkh) https://github.com/nodejs/node/pull/59428

PR-URL: https://github.com/nodejs/node/pull/59973
2025-09-24 13:04:16 +00:00
theanarkh
24ded11b66
worker: add heap profile API
PR-URL: https://github.com/nodejs/node/pull/59846
Refs: https://github.com/nodejs/node/pull/59428
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-09-23 12:41:47 +00:00
Tobias Nießen
0a72b2cd7b
doc: fix typo in section on microtask order
PR-URL: https://github.com/nodejs/node/pull/59932
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2025-09-23 10:33:13 +00:00
Anna Henningsen
0ec1d186f4 src: always use strong reference to napi_async_context resource
There already is an existing requirement to have matching calls of
`napi_async_init()` and `napi_async_destroy()`, so expecting users
of this API to manually hold onto the resource for the duration of
the `napi_async_context`'s lifetime is unnecessary.

Weak callbacks are generally useful for when a corresponding C++
object should be cleaned up when a JS object is gargbage-collected,
but that is not the case here.

PR-URL: https://github.com/nodejs/node/pull/59828
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2025-09-22 14:16:10 +00:00
Eric Rannaud
c81b1dff65 vm: explain how to share promises between contexts w/ afterEvaluate
PR-URL: https://github.com/nodejs/node/pull/59801
Fixes: https://github.com/nodejs/node/issues/59541
Refs: https://issues.chromium.org/issues/441679231
Refs: https://groups.google.com/g/v8-dev/c/YIeRg8CUNS8/m/rEQdFuNZAAAJ
Refs: https://tc39.es/ecma262/#sec-newpromiseresolvethenablejob
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2025-09-21 13:04:37 +00:00