Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
20.15.1-bookworm-slim
->20.16.0-bookworm-slim
Release Notes
nodejs/node (node)
v20.16.0
: 2024-07-24, Version 20.16.0 'Iron' (LTS), @marco-ippolitoCompare Source
process: add process.getBuiltinModule(id)
process.getBuiltinModule(id)
provides a way to load built-in modulesin a globally available function. ES Modules that need to support
other environments can use it to conditionally load a Node.js built-in
when it is run in Node.js, without having to deal with the resolution
error that can be thrown by
import
in a non-Node.js environment orhaving to use dynamic
import()
which either turns the module intoan asynchronous module, or turns a synchronous API into an asynchronous one.
If
id
specifies a built-in module available in the current Node.js process,process.getBuiltinModule(id)
method returns the corresponding built-inmodule. If
id
does not correspond to any built-in module,undefined
is returned.
process.getBuiltinModule(id)
accepts built-in module IDs that are recognizedby
module.isBuiltin(id)
.The references returned by
process.getBuiltinModule(id)
always point tothe built-in module corresponding to
id
even if users modifyrequire.cache
so thatrequire(id)
returns something else.Contributed by Joyee Cheung in #52762
doc: doc-only deprecate OpenSSL engine-based APIs
OpenSSL 3 deprecated support for custom engines with a recommendation to switch to its new provider model.
The
clientCertEngine
option forhttps.request()
,tls.createSecureContext()
, andtls.createServer()
; theprivateKeyEngine
andprivateKeyIdentifier
fortls.createSecureContext();
andcrypto.setEngine()
all depend on this functionality from OpenSSL.Contributed by Richard Lau in #53329
inspector: fix disable async hooks on Debugger.setAsyncCallStackDepth
Debugger.setAsyncCallStackDepth
was previously calling the enable function by mistake. As a result, when profiling using Chrome DevTools, the async hooks won't be turned off properly after receivingDebugger.setAsyncCallStackDepth
with depth 0.Contributed by Joyee Cheung in #53473
Other Notable Changes
09e2191432
] - (SEMVER-MINOR) buffer: add .bytes() method to Blob (Matthew Aitken) #53221394e00f41c
] - (SEMVER-MINOR) doc: add context.assert docs (Colin Ihrig) #53169a8601efa5e
] - (SEMVER-MINOR) doc: improve explanation about built-in modules (Joyee Cheung) #527625e76c258f7
] - doc: add StefanStojanovic to collaborators (StefanStojanovic) #531185e694026f1
] - doc: add Marco Ippolito to TSC (Rafael Gonzaga) #53008f3ba1eb72f
] - (SEMVER-MINOR) net: add new net.server.listen tracing channel (Paolo Insogna) #531362bcce3255b
] - (SEMVER-MINOR) src,permission: --allow-wasi & prevent WASI exec (Rafael Gonzaga) #53124a03a4c7bdd
] - (SEMVER-MINOR) test_runner: add context.fullName (Colin Ihrig) #5316969b828f5a5
] - (SEMVER-MINOR) util: support--no-
for argument with boolean type for parseArgs (Zhenwei Jin) #53107Commits
76fd0ea92e
] - assert,util: correct comparison when both contain same reference (Daniel Lemire) #5343165308b6692
] - benchmark: fix api restriction for the permission category (Ryan Tsien) #515281e2bc2c2d0
] - benchmark: fix napi/ref addon (Michaël Zasso) #5323309e2191432
] - (SEMVER-MINOR) buffer: add .bytes() method to Blob (Matthew Aitken) #53221e1951a4804
] - build: fix spacing before NINJA_ARGS (jakecastelli) #5318176f3bb3460
] - build: generate binlog in out directories (Chengzhong Wu) #53325eded0c187b
] - build: support python 3.13 (Chengzhong Wu) #531901e57c67fdb
] - build: update ruff to v0.4.5 (Yagiz Nizipli) #5318028e71ede63
] - build: add--skip-tests
totest-ci-js
target (Antoine du Hamel) #53105bb06778a65
] - build: fix building embedtest in GN build (Cheng) #53145117ff5f139
] - build: use broader detection for 'help' (Aviv Keller) #530459aa896e7f5
] - build: fix -j propagation to ninja (Tobias Nießen) #53088acdbc78955
] - build: exit on unsupported host OS for Android (Mohammed Keyvanzadeh) #52882bf3d94478e
] - build: fix--enable-d8
builds (Richard Lau) #5310699da7d7237
] - build: set "clang" in config.gypi in GN build (Cheng) #530049446278f03
] - crypto: improve GetECGroupBits signature (Tobias Nießen) #53364dc2a4af68d
] - crypto: fix propagation of "memory limit exceeded" (Tobias Nießen) #53300c5174f5e60
] - deps: update c-ares to v1.31.0 (Node.js GitHub Bot) #5355428e932dc7a
] - deps: update undici to 6.19.2 (Node.js GitHub Bot) #53468e4f9c663c4
] - deps: update undici to 6.19.1 (Node.js GitHub Bot) #53468171dc50fdc
] - deps: update undici to 6.19.1 (Node.js GitHub Bot) #534686bb6a9100d
] - deps: update undici to 6.19.0 (Node.js GitHub Bot) #53468815d71b4cd
] - deps: update acorn-walk to 8.3.3 (Node.js GitHub Bot) #534668b5f1d765a
] - deps: update zlib to 1.3.0.1-motley-209717d (Node.js GitHub Bot) #53156fc73da6f50
] - deps: update c-ares to v1.30.0 (Node.js GitHub Bot) #53416a6b803abd6
] - deps: update undici to 6.18.2 (Node.js GitHub Bot) #532550f235535bb
] - deps: update ada to 2.8.0 (Node.js GitHub Bot) #5325463407269a8
] - deps: update corepack to 0.28.2 (Node.js GitHub Bot) #532537a126e8773
] - deps: update c-ares to 1.29.0 (Node.js GitHub Bot) #531550c8fcceefa
] - deps: upgrade npm to 10.8.1 (npm team) #5320723866979f2
] - deps: update undici to 6.18.1 (Node.js GitHub Bot) #530734987a00142
] - deps: update undici to 6.18.0 (Node.js GitHub Bot) #53073af226d0d9c
] - deps: update undici to 6.17.0 (Node.js GitHub Bot) #53034c9c6bf8bfb
] - deps: update undici to 6.16.1 (Node.js GitHub Bot) #52948b32b62d590
] - deps: update undici to 6.15.0 (Matthew Aitken) #527636e6641bea2
] - deps: update googletest to33af80a
(Node.js GitHub Bot) #53053aa96fbe03e
] - deps: update zlib to 1.3.0.1-motley-4f653ff (Node.js GitHub Bot) #53052ba3310ded5
] - deps: upgrade npm to 10.8.0 (npm team) #530148537a2aecf
] - doc: recommend not using libuv node-api function (Michael Dawson) #53521c13600f0db
] - doc: add additional guidance for PRs to deps (Michael Dawson) #534997c3edd952e
] - doc: only apply content-visibility on all.html (Filip Skokan) #53510ac5be14ed8
] - doc: update the description of the return type for options.filter (Zhenwei Jin) #52742cac300e351
] - doc: remove first timer badge (Aviv Keller) #53338feb61459fd
] - doc: add Buffer.from(string) to functions that use buffer pool (Christian Bates-White) #528019e0a6e938b
] - doc: add initial text for ambassadors program (Michael Dawson) #5285755ac53cb0b
] - doc: define more cases for stream event emissions (Aviv Keller) #533177128e0f9c9
] - doc: remove mentions of policy model from security info (Aviv Keller) #532493e290433df
] - doc: fix mistakes in the moduleload
hook api (István Donkó) #533493445c08144
] - doc: doc-only deprecate OpenSSL engine-based APIs (Richard Lau) #53329a3e8cda019
] - doc: mark --heap-prof and related flags stable (Joyee Cheung) #533430b9daaae4d
] - doc: mark --cpu-prof and related flags stable (Joyee Cheung) #53343daf91834f6
] - doc: remove IRC from man page (Tobias Nießen) #533444246c8fa31
] - doc: fix broken link instatic-analysis.md
(Richard Lau) #53345955b98a0e4
] - doc: remove cases for keys not containing "*" in PATTERN_KEY_COMPARE (Maarten Zuidhoorn) #532157832b1815f
] - doc: add err param to fs.cp callback (Feng Yu) #5323401533df87f
] - doc: adderr
param to fs.copyFile callback (Feng Yu) #53234b081bc7d5e
] - doc: reserve 128 for Electron 32 (Keeley Hammond) #532036b8460b560
] - doc: add note to ninjia build for macOS using -jn flag (jakecastelli) #53187394e00f41c
] - (SEMVER-MINOR) doc: add context.assert docs (Colin Ihrig) #53169c143d61d0e
] - doc: include ESM import for HTTP (Aviv Keller) #53165a8601efa5e
] - (SEMVER-MINOR) doc: improve explanation about built-in modules (Joyee Cheung) #52762560392de3d
] - doc: fix minor grammar and style issues in SECURITY.md (Rich Trott) #531689f8e34323d
] - doc: mention pm is not enforced when using fd (Rafael Gonzaga) #531253ac775b015
] - doc: fix format inesm.md
(Pop Moore) #5317041b08bdcf7
] - doc: fix wrong variable name in example oftimers.tick()
(Deokjin Kim) #53147698ea7aa5a
] - doc: fix wrong function name in example ofcontext.plan()
(Deokjin Kim) #53140a99359d79d
] - doc: add note for windows users and symlinks (Aviv Keller) #5311761ec2af292
] - doc: move all TLS-PSK documentation to its section (Alba Mendez) #357175e76c258f7
] - doc: add StefanStojanovic to collaborators (StefanStojanovic) #531181dc406ba62
] - doc: improve ninja build for --built-in-modules-path (jakecastelli) #530072854585662
] - doc: avoid hiding by navigation bar in anchor jumping (Cloyd Lau) #451313f432f829f
] - doc: remove unavailable youtube link in pull requests (Deokjin Kim) #529825e694026f1
] - doc: add Marco Ippolito to TSC (Rafael Gonzaga) #53008231e44043e
] - doc: add missing supported timer values intimers.enable()
(Deokjin Kim) #52969b8944f6938
] - doc, http: addrejectNonStandardBodyWrites
option, clear its behaviour (jakecastelli) #533960354584738
] - doc, meta: organize contributing to Node-API guide (Aviv Keller) #532439ae3719c4e
] - doc, meta: use markdown rather than HTML in CONTRIBUTING.md (Aviv Keller) #53235621e073c96
] - fs: do not crash if the watched file is removed while setting up watch (Matteo Collina) #53452f00ee1c377
] - fs: fix cp dir/non-dir mismatch error messages (Mathis Wiehl) #53150655b960418
] - http2: reject failed http2.connect when used with promisify (ehsankhfr) #53475eb0b68bb29
] - inspector: fix disable async hooks on Debugger.setAsyncCallStackDepth (Joyee Cheung) #534731c0b89be4c
] - lib: fix typo in comment (codediverdev) #5354355922d9cb0
] - lib: remove the unused code (theanarkh) #5346306374ef96b
] - lib: fix naming convention ofSymbol
(Deokjin Kim) #53387d1a780039a
] - lib: fix timer leak (theanarkh) #533378689ce4b41
] - lib: fix misleading argument of validateUint32 (Tobias Nießen) #5330757d7bbf624
] - lib: fix the name of the fetch global function (Gabriel Bota) #5322723f086c363
] - lib: do not call callback if socket is closed (theanarkh) #52829f325c54c80
] - meta: use correct source for workflow in PR (Aviv Keller) #534908172412dbe
] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #5348001b61d65d3
] - meta: fix typo in dependency updates (Aviv Keller) #5347112f5737cd3
] - meta: bump step-security/harden-runner from 2.7.1 to 2.8.0 (dependabot[bot]) #53245102e4eee3c
] - meta: bump ossf/scorecard-action from 2.3.1 to 2.3.3 (dependabot[bot]) #532485ba185580d
] - meta: bump actions/checkout from 4.1.4 to 4.1.6 (dependabot[bot]) #532479d186cce2b
] - meta: bump github/codeql-action from 3.25.3 to 3.25.7 (dependabot[bot]) #5324629ab74009e
] - meta: bump codecov/codecov-action from 4.3.1 to 4.4.1 (dependabot[bot]) #53244bd4b593f30
] - meta: removeinitializeCommand
from devcontainer (Aviv Keller) #5313761b1f573cf
] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #53065f3ba1eb72f
] - (SEMVER-MINOR) net: add new net.server.listen tracing channel (Paolo Insogna) #5313667333a5796
] - (SEMVER-MINOR) process: add process.getBuiltinModule(id) (Joyee Cheung) #52762092aa09eb3
] - repl: fix await object patterns without values (Luke Haas) #53331554d25f526
] - src: resetprocess.versions
during pre-execution (Richard Lau) #53444a0879ad628
] - src: fix dynamically linked OpenSSL version (Richard Lau) #5345691c05f34de
] - src: removeSetEncoding
from StringEncoder (Yagiz Nizipli) #534414f49384be5
] - src: fix typo in env.cc (EhsanKhaki) #534189730d1e186
] - src: avoid strcmp in favor of operator== (Tobias Nießen) #53439436ad8ceb9
] - src: print v8::OOMDetails::detail when it's available (Joyee Cheung) #53360f773b289eb
] - src: fix IsIPAddress for IPv6 (Hüseyin Açacak) #534007705efd860
] - src: fix permission inspector crash (theanarkh) #53389260d8d9ae1
] - src: use __FUNCSIG__ on Windows in backtrace (Joyee Cheung) #531353b79e9c24e
] - src: fix external module env and kDisableNodeOptionsEnv (Rafael Gonzaga) #5290532839c63cb
] - src: reduce unnecessaryGetCwd
calls (Yagiz Nizipli) #53064840dd092ce
] - src: improve node::Dotenv declarations (Tobias Nießen) #529732bcce3255b
] - (SEMVER-MINOR) src,permission: --allow-wasi & prevent WASI exec (Rafael Gonzaga) #53124e092c62a22
] - stream: update outdated highwatermark doc (Jay Kim) #5349471af3e8172
] - stream: support dispose in writable (Benjamin Gruenbaum) #4854733a15be32f
] - stream: callback should be called when pendingcb is 0 (jakecastelli) #534381b46ebbf69
] - stream: make sure _destroy is called (jakecastelli) #532139f95d41947
] - stream: prevent stream unexpected pause when highWaterMark set to 0 (jakecastelli) #53261d02651c9d6
] - stream: micro-optimize writable condition (Orgad Shaneh) #53189324070c410
] - stream: fix memory usage regression in writable (Orgad Shaneh) #5318848138afd35
] - stream: fixes for webstreams (Mattias Buelens) #5116824f078a22b
] - test: marktest-benchmark-crypto
as flaky (Antoine du Hamel) #529550d69ce3474
] - test: extend env fortest-node-output-errors
(Richard Lau) #535351aaaad8518
] - test: update encoding web-platform tests (Yagiz Nizipli) #5347754e0ba8771
] - test: check against run-time OpenSSL version (Richard Lau) #53456059e47c320
] - test: update tests for OpenSSL 3.0.14 (Richard Lau) #5337349e6f33021
] - test: fix test-http-server-keepalive-req-gc (Etienne Pierre-doray) #53292292d13a289
] - test: update TLS tests for OpenSSL 3.2 (Richard Lau) #5338482017c90bb
] - test: fix test when compiled without engine support (Richard Lau) #53232a54090b385
] - test: update TLS trace tests for OpenSSL >= 3.2 (Richard Lau) #532293a1693421d
] - test: fix Windows native test suites (Stefan Stojanovic) #531732b07d01272
] - test: skiptest-setproctitle
whenps
is not available (Antoine du Hamel) #531040051d1c83d
] - test: increase allocation so it fails for the test (Adam Majer) #53099048cbe3304
] - test: remove timers from test-tls-socket-close (Luigi Pinca) #530198653d9223e
] - test: replace.substr
with.slice
(Antoine du Hamel) #53070d74bda4241
] - test: add AbortController to knownGlobals (Luigi Pinca) #53020f29e1e9838
] - test: skip unstable shadow realm gc tests (Chengzhong Wu) #52855dfa498697e
] - test,doc: enable running embedtest for Windows (Vladimir Morozov) #526460381817f1d
] - test_runner: calculate executed lines using source map (Moshe Atlow) #533159d3699b5b0
] - test_runner: handle file rename and deletion under watch mode (jakecastelli) #531149a36258ca0
] - test_runner: refactor to use min/max ofvalidateInteger
(Deokjin Kim) #53148a03a4c7bdd
] - (SEMVER-MINOR) test_runner: add context.fullName (Colin Ihrig) #53169a72157077a
] - test_runner: fix t.assert methods (Colin Ihrig) #53049ba764db9ab
] - test_runner: avoid error when coverage line not found (Moshe Atlow) #530003a4a0ebd06
] - test_runner,doc: align documentation with actual stdout/stderr behavior (Moshe Atlow) #531316e6646bdd5
] - tls: check result of SSL_CTX_set_*_proto_version (Tobias Nießen) #534592aceed4297
] - tls: avoid taking ownership of OpenSSL objects (Tobias Nießen) #53436faa5cac18c
] - tls: use SSL_get_peer_tmp_key (Tobias Nießen) #5336668fcbb635e
] - tls: fix negative sessionTimeout handling (Tobias Nießen) #5300261a1c43ef1
] - tools: fix skip detection of test runner output (Richard Lau) #5354553a7b6e1c0
] - tools: fix c-ares update script (Marco Ippolito) #534143bd5f46a15
] - tools: update lint-md-dependencies (Node.js GitHub Bot) #53158daab9e170f
] - tools: do not run Corepack code before it's reviewed (Antoine du Hamel) #53405d18a67f937
] - tools: use Ubuntu 24.04 and Clang on GitHub actions (Michaël Zasso) #53212e9b7a52848
] - tools: add stream label on PR when related files being changed in lib (jakecastelli) #5326904d78dd56d
] - tools: remove no-goma arg from make-v8 script (Michaël Zasso) #5333637e725a500
] - tools: use sccache Github action (Moshe Atlow) #533162a1fde7e32
] - tools: update error message for Type Error (Aviv Keller) #530478f5fb4192d
] - Revert "tools: add --certify-safe to nci-ci" (Antoine du Hamel) #5309869b828f5a5
] - (SEMVER-MINOR) util: support--no-
for argument with boolean type for parseArgs (Zhenwei Jin) #531071a2f3ab4f5
] - watch: fix variable naming (jakecastelli) #53101Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.