chore(deps): update node.js to v20.12.1 #9
Reference in New Issue
Block a user
Delete Branch "renovate/node-20.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This MR contains the following updates:
20.9.0->20.12.1Release Notes
nodejs/node (node)
v20.12.1: 2024-04-03, Version 20.12.1 'Iron' (LTS), @RafaelGSSCompare Source
This is a security release
Notable Changes
Commits
bd8f10a257] - deps: update undici to v5.28.4 (Matteo Collina) nodejs-private/node-private#5765e34540a96] - http: do not allow OBS fold in headers by default (Paolo Insogna) nodejs-private/node-private#557ba1ae6d188] - src: ensure to close stream when destroying session (Anna Henningsen) nodejs-private/node-private#561v20.12.0: 2024-03-26, Version 20.12.0 'Iron' (LTS), @richardlauCompare Source
Notable Changes
crypto: implement crypto.hash()
This patch introduces a helper crypto.hash() that computes
a digest from the input at one shot. This can be 1.2-2x faster
than the object-based createHash() for smaller inputs (<= 5MB)
that are readily available (not streamed) and incur less memory
overhead since no intermediate objects will be created.
Contributed by Joyee Cheung in #51044.
Loading and parsing environment variables
process.loadEnvFile(path):.envfile. If no path is specified, it automatically loads the .env file in the current directory. Example:process.loadEnvFile().process.loadEnvFile('./development.env').util.parseEnv(content):require('node:util').parseEnv('HELLO=world').Contributed by Yagiz Nizipli in #51476.
New connection attempt events
Three new events were added in the
net.createConnectionflow:connectionAttempt: Emitted when a new connection attempt is established. In case of Happy Eyeballs, this might emitted multiple times.connectionAttemptFailed: Emitted when a connection attempt failed. In case of Happy Eyeballs, this might emitted multiple times.connectionAttemptTimeout: Emitted when a connection attempt timed out. In case of Happy Eyeballs, this will not be emitted for the last attempt. This is not emitted at all if Happy Eyeballs is not used.Additionally, a previous bug has been fixed where a new connection attempt could have been started after a previous one failed and after the connection was destroyed by the user.
This led to a failed assertion.
Contributed by Paolo Insogna in #51045.
Permission Model changes
Node.js 20.12.0 comes with several fixes for the experimental permission model and two new semver-minor commits.
We're adding a new flag
--allow-addonsto enable addon usage when using the Permission Model.Contributed by Rafael Gonzaga in #51183
And relative paths are now supported through the
--allow-fs-*flags.Therefore, with this release one can use:
To give only read access to the entrypoint of the application.
Contributed by Rafael Gonzaga and Carlos Espa in #50758.
sea: support embedding assets
Users can now include assets by adding a key-path dictionary
to the configuration as the
assetsfield. At build time, Node.jswould read the assets from the specified paths and bundle them into
the preparation blob. In the generated executable, users can retrieve
the assets using the
sea.getAsset()andsea.getAssetAsBlob()API.The single-executable application can access the assets as follows:
Contributed by Joyee Cheung in #50960.
Support configurable snapshot through
--build-snapshot-configflagWe are adding a new flag
--build-snapshot-configto configure snapshots through a custom JSON configuration file.When using this flag, additional script files provided on the command line will
not be executed and instead be interpreted as regular command line arguments.
These changes were contributed by Joyee Cheung and Anna Henningsen in #50453
Text Styling
util.styleText(format, text): This function returns a formatted text considering theformatpassed.A new API has been created to format text based on
util.inspect.colors, enabling you to style text in different colors (such as red, blue, ...) and emphasis (italic, bold, ...).Contributed by Rafael Gonzaga in #51850.
vm: support using the default loader to handle dynamic import()
This patch adds support for using
vm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADERas theimportModuleDynamicallyoption in all vm APIs that take this option exceptvm.SourceTextModule. This allows users to have a shortcut to support dynamicimport()in the compiled code without missing the compilation cache if they don't need customization of the loading process. We emit an experimental warning when theimport()is actually handled by the default loader through this option instead of requiring--experimental-vm-modules.Contributed by Joyee Cheung in #51244.
Root certificates updated to NSS 3.98
Certificates added:
Certificates removed:
Updated dependencies
Other notable changes
4f49e9d000] - (SEMVER-MINOR) build: build opt to set local location of headers (Michael Dawson) #51525ccdb01187b] - doc: add zcbenz to collaborators (Cheng Zhao) #51812481af53aea] - doc: add lemire to collaborators (Daniel Lemire) #515725ba4d96525] - (SEMVER-MINOR) http2: add h2 compat support for appendHeader (Tim Perry) #514120861498e8b] - (SEMVER-MINOR) http2: add server handshake utility (snek) #511726b08d006ee] - (SEMVER-MINOR) http2: receive customsettings (Marten Richter) #513237894989bf0] - (SEMVER-MINOR) lib: move encodingsMap to internal/util (Joyee Cheung) #51044a58c98ea85] - (SEMVER-MINOR) src: print string content better in BlobDeserializer (Joyee Cheung) #50960c3c0a3ee5c] - (SEMVER-MINOR) src: support multi-line values for .env file (IlyasShabi) #512892a921966c6] - (SEMVER-MINOR) src: do not coerce dotenv paths (Tobias Nießen) #514250dee86f295] - (SEMVER-MINOR) src: support configurable snapshot (Joyee Cheung) #50453ade6614067] - (SEMVER-MINOR) stream: add support fordeflate-rawformat to webstreams compression (Damian Krzeminski) #50097fe922f05e4] - (SEMVER-MINOR) timers: export timers.promises (Marco Ippolito) #51246Commits
cbda4e9fc5] - assert,crypto: make KeyObject and CryptoKey testable for equality (Filip Skokan) #5089792fca59647] - async_hooks,inspector: implement inspector api without async_wrap (Gabriel Bota) #51501029ca982dc] - benchmark: update iterations of benchmark/async_hooks/async-local- (Lei Shi) #51420350e9fee8d] - benchmark: update iterations of benchmark/domain/domain-fn-args.js (Lei Shi) #5140840fda97deb] - benchmark: update iterations of assert/deepequal-typedarrays.js (Lei Shi) #514191b2e3b7049] - benchmark: update iterations of benchmark/assert/deepequal-map.js (Lei Shi) #514167639259203] - benchmark: rename startup.js to startup-core.js (Joyee Cheung) #516694be33b5577] - benchmark: remove dependency on unshipped tools (Adam Majer) #51146bd03a154a9] - benchmark: update iterations in benchmark/perf_hooks (Lei Shi) #5086919b943b909] - benchmark: update iterations in benchmark/crypto/aes-gcm-throughput.js (Lei Shi) #50929278c990dea] - benchmark: update iteration and size in benchmark/crypto/randomBytes.js (Lei Shi) #50868443d4fcff3] - benchmark: add undici websocket benchmark (Chenyu Yang) #505863ab6143380] - benchmark: add create-hash benchmark (Joyee Cheung) #510266a8ff09332] - benchmark: update interations and len in benchmark/util/text-decoder.js (Lei Shi) #5093822b53bc1fa] - benchmark: update iterations of benchmark/util/type-check.js (Lei Shi) #50937f56bda5109] - benchmark: update iterations in benchmark/util/normalize-encoding.js (Lei Shi) #509344fc83e1ce3] - benchmark: update iterations in benchmark/util/inspect-array.js (Lei Shi) #509330edddcfc19] - benchmark: update iterations in benchmark/util/format.js (Lei Shi) #50932f109961fd1] - benchmark: update iterations in benchmark/crypto/hkdf.js (Lei Shi) #508661e923f11f2] - benchmark: update iterations in benchmark/crypto/get-ciphers.js (Lei Shi) #50863f13643da06] - benchmark: update number of iterations forutil.inspect(kylo5aby) #5065103b19cbd2a] - bootstrap: improve snapshot unsupported builtin warnings (Joyee Cheung) #5094451ea5b60a9] - build: fix arm64 host cross-compilation in GN (Cheng Zhao) #519039f5547afa2] - Revert "build: workaround for node-core-utils" (Richard Lau) #5197558255e73ae] - build: respect theNODEenv variable inMakefile(Antoine du Hamel) #517430a7419bf0b] - Revert "build: fix warning in cares under GN build" (Luigi Pinca) #518654118174b85] - build: removelibrtlibs link for Android compatibility (BuShe Pie) #51632012da16b85] - build: do not rely on gn_helpers in GN build (Cheng Zhao) #5143993fcf52990] - build: fix warning in cares under GN build (Cheng Zhao) #516872176495455] - build: fix building js2c with GN (Cheng Zhao) #51818d6e702f885] - build: encode non-ASCII Latin1 characters as one byte in JS2C (Joyee Cheung) #516054f49e9d000] - (SEMVER-MINOR) build: build opt to set local location of headers (Michael Dawson) #515258e84aad0ef] - build: use macOS m1 machines for testing (Yagiz Nizipli) #516205fce1a17e2] - build: check before removing %config% link (liudonghua) #5143746d6dce1a8] - build: increase parallel executions in github (Yagiz Nizipli) #515548b3ead1f3e] - build: remove copyright header in node.gni (Cheng Zhao) #51535d8b86ad363] - build: update GN build files for ngtcp2 (Cheng Zhao) #51313ba0ffddd2d] - build: fix for VScode "Reopen in Container" (Serg Kryvonos) #512718b97e2e0a7] - build: add-flax-vector-conversionsto V8 build (Michaël Zasso) #51257bd528c7dc0] - build: fix warnings from uv for gn build (Cheng Zhao) #51069ffe467b062] - build,tools: make addons tests work with GN (Cheng Zhao) #50737448d67109a] - (SEMVER-MINOR) crypto: implement crypto.hash() (Joyee Cheung) #5104448959dd2b4] - crypto: update root certificates to NSS 3.98 (Node.js GitHub Bot) #5179468e8b2c492] - crypto: use EVP_MD_fetch and cache EVP_MD for hashes (Joyee Cheung) #51034adb5d69621] - crypto: update CryptoKey symbol properties (Filip Skokan) #50897df0213fd3d] - deps: update nghttp2 to 1.60.0 (Node.js GitHub Bot) #51948208dd887a5] - deps: upgrade npm to 10.5.0 (npm team) #51913587e70e1ee] - deps: update corepack to 0.25.2 (Node.js GitHub Bot) #5181038343c4857] - deps: update c-ares to 1.27.0 (Node.js GitHub Bot) #51846c9974f621c] - deps: update c-ares to 1.26.0 (Node.js GitHub Bot) #515820aa18e1a1c] - deps: update googletest to6a59382(Node.js GitHub Bot) #51580f871bc6ddc] - deps: update nghttp2 to 1.59.0 (Node.js GitHub Bot) #5158194f8ee8717] - deps: update corepack to 0.24.1 (Node.js GitHub Bot) #51459c23ce06e6b] - deps: update ada to 2.7.6 (Node.js GitHub Bot) #51542372ce69de1] - deps: update ada to 2.7.5 (Node.js GitHub Bot) #51542133719b2c9] - deps: update googletest to7c07a86(Node.js GitHub Bot) #5145835675aa07f] - deps: update acorn-walk to 8.3.2 (Node.js GitHub Bot) #51457ca73f55a22] - deps: update base64 to 0.5.2 (Node.js GitHub Bot) #51455c9dad18191] - deps: compile c-ares with C11 support (Michaël Zasso) #51410a727fa73ee] - deps: upgrade npm to 10.3.0 (npm team) #51431834bbfd039] - deps: update c-ares to 1.25.0 (Node.js GitHub Bot) #513854c8fa3e7c2] - deps: update uvwasi to 0.0.20 and fixup tests (Michael Dawson) #51355bd183ef2af] - deps: add nghttp3/**/.deps to .gitignore (Luigi Pinca) #514001d8169995c] - deps: update corepack to 0.24.0 (Node.js GitHub Bot) #513184dfbbb8789] - deps: update acorn to 8.11.3 (Node.js GitHub Bot) #513177d60877fa3] - deps: update brotli to 1.1.0 (Node.js GitHub Bot) #508041b99a3f0af] - deps: update zlib to 1.3.0.1-motley-40e35a7 (Node.js GitHub Bot) #512742270285839] - deps: update simdutf to 4.0.8 (Node.js GitHub Bot) #5100061d1535d84] - deps: V8: cherry-pickde611e6(Keyhan Vakil) #5120004323fd595] - deps: update googletest to530d5c8(Node.js GitHub Bot) #51191454b4f8d7e] - deps: update acorn-walk to 8.3.1 (Node.js GitHub Bot) #50457cc693eb908] - deps: update acorn-walk to 8.3.0 (Node.js GitHub Bot) #5045709519c6655] - deps: update zlib to 1.3.0.1-motley-dd5fc13 (Node.js GitHub Bot) #51105a2f39e9168] - deps: V8: cherry-pick0fd478b(Joyee Cheung) #505721aaf156ea7] - deps: update zlib to 1.3-22124f5 (Node.js GitHub Bot) #509103f4e254047] - deps: update googletest to76bb2af(Node.js GitHub Bot) #50555702684c008] - deps: update googletest tob10fad3(Node.js GitHub Bot) #505554ee7f29657] - deps: update timezone to 2024a (Michaël Zasso) #51723452d74c8b6] - deps: update icu to 74.2 (Michaël Zasso) #51723e6fc5a5ee1] - deps: update timezone to 2023d (Node.js GitHub Bot) #514614ee0f8306b] - deps: update icu to 74.1 (Node.js GitHub Bot) #50515cb49f31480] - deps: cherry-pick libuv/libuv@d09441c(Richard Lau) #51976ea50540c5e] - Revert "deps: V8: cherry-pick13192d6" (kxxt) #514956fd1617ab4] - doc: add policy for distribution (Geoffrey Booth) #51918fc0b389006] - doc: fix actual result of example is different in events (Deokjin Kim) #5192593d6d66339] - doc: clarify Corepack threat model (Antoine du Hamel) #51917276d1d1d65] - doc: add stability index to crypto.hash() (Joyee Cheung) #51978473af948b5] - doc: remove redundant backquote which breaks sentence (JounQin) #51904b52b249b05] - doc: update node-api/node-addon-api team link to sharing project news (Ulises Gascón) #51877a74c373ea4] - doc: add website team to sharing project news (Ulises Gascón) #49002b7ce547d41] - doc: update guide link for Event Loop (Shrujal Shah) #518743dfee7ee33] - doc: changeExperimentalWarningstoExperimentalWarning(Ameet Kaustav) #51741740d0679e7] - doc: add Paolo to TSC members (Michael Dawson) #518253240a2f349] - doc: reserve 123 for Electron 30 (Keeley Hammond) #51803597e3db0f9] - doc: add mention to GPG_TTY (Rafael Gonzaga) #51806ccdb01187b] - doc: add zcbenz to collaborators (Cheng Zhao) #518123a3de00437] - doc: add entry to stewards (Rafael Gonzaga) #5176006b882d2fa] - doc: update technical priorities for 2023 (Jean Burellier) #475239a68b47fe1] - doc: mark isWebAssemblyCompiledModule eol (Marco Ippolito) #514428016628710] - doc: fixglobals.mdintroduction (Antoine du Hamel) #517429ddbe4523f] - doc: updates for better json generating (Dmitry Semigradsky) #51592140cf26d47] - doc: document the GN build (Cheng Zhao) #51676ecfb3f18b3] - doc: fix uncaught exception example (Gabriel Schulhof) #51638b3157a08bf] - doc: clarify execution ofafterhook on test suite completion (Ognjen Jevremović) #515231dae1873d9] - doc: fixdns.lookupanddnsPromises.lookupdescription (Duncan Chiu) #5151750df052087] - doc: note that path.normalize deviates from POSIX (Tobias Nießen) #51513481af53aea] - doc: add lemire to collaborators (Daniel Lemire) #51572dec0d5d19a] - doc: fix historical experimental fetch flag (Kenrick) #5150696c480b1a1] - doc: fix type of connectionAttempt parameter (Rafael Gonzaga) #5149076968ab112] - doc: remove reference to resolved child_process v8 issue (Ian Kerins) #51467bdd3a2a9fd] - doc: update typos (Aranđel Šarenac) #514753532f5587c] - doc: add notes on inspector breakpoints (Chengzhong Wu) #514170dffb9f049] - doc: add links inoffboarding.md(Antoine du Hamel) #5144058d2442f0f] - doc: fix spelling mistake (u9g) #51454a09f440dbd] - doc: add check for security reverts (Michael Dawson) #51376401837bfc4] - doc: fix some policy scope typos (Tim Kuijsten) #51234f301f829ba] - doc: improve subtests documentation (Marco Ippolito) #513791e40f552fd] - doc: add missing word inchild_process.md(Joseph Joy) #5037042b4f0f5ab] - doc: fixup alignment of warning subsection (James M Snell) #51374b5bc597871] - doc: the GN files should use Node's license (Cheng Zhao) #5069401a41041d6] - doc: improve localWindowSize event descriptions (Davy Landman) #5107163aa27df10] - doc: mark--jitlessas experimental (Antoine du Hamel) #51247c8233912e9] - doc: run license-builder (github-actions[bot]) #511999e360df521] - doc: fix limitations and known issues in pm (Rafael Gonzaga) #5118452d8222d32] - doc: mention node:wasi in the Threat Model (Rafael Gonzaga) #51211cb3270e4c8] - doc: remove ambiguous 'considered' (Rich Trott) #51207979e183e0c] - doc: set exit code in custom test runner example (Matteo Collina) #51056eaadebb1f4] - doc: remove version frommaintaining-dependencies.md(Antoine du Hamel) #51195256db6e056] - doc: mention native addons are restricted in pm (Rafael Gonzaga) #511852a61602ab2] - doc: correct note on behavior of stats.isDirectory (Nick Reilingh) #50946184b8bea5b] - doc: fixTestsStreamparent class (Jungku Lee) #51181c61597ffe4] - (SEMVER-MINOR) doc: add documentation for --build-snapshot-config (Anna Henningsen) #50453b88170d602] - doc: run license-builder (github-actions[bot]) #51111f2b4626ab8] - doc: deprecate hash constructor (Marco Ippolito) #510776c241550cd] - doc: add note regarding--experimental-detect-module(Shubherthi Mitra) #510898ee30ea900] - doc: correct tracingChannel.traceCallback() (Gerhard Stöbich) #510681cd27b6eff] - doc: use length argument in pbkdf2Key (Tobias Nießen) #5106609ad974537] - doc: add deprecation notice todirent.path(Antoine du Hamel) #510591113e58f87] - doc: deprecatedirent.path(Antoine du Hamel) #5102037979d750e] - doc: add additional details about--input-type(Shubham Pandey) #507963ff00e1e79] - doc: add procedure when CVEs don't get published (Rafael Gonzaga) #509450930be6bd5] - doc: fix some errors in esm resolution algorithms (Christopher Jeffrey (JJ)) #50898ddc7964b03] - doc: reserve 121 for Electron 29 (Shelley Vohr) #50957625fd69b76] - doc: run license-builder (github-actions[bot]) #50926f18269607a] - doc: document non-node_modules-only runtime deprecation (Joyee Cheung) #507485f8e7a0fdb] - doc: add doc for Unix abstract socket (theanarkh) #50904e0598787e0] - doc: remove flicker on page load on dark theme (Dima Demakov) #509422a7047d933] - doc,crypto: further clarify RSA_PKCS1_PADDING support (Tobias Nießen) #5179931c4ba4dfd] - doc,crypto: add changelog and note about disabled RSA_PKCS1_PADDING (Filip Skokan) #5178290da41548f] - doc,module: clarify hook chain execution sequence (Jacob Smith) #51884bb7d7f3d1c] - errors: fix stacktrace of SystemError (uzlopak) #49956db7459b57b] - errors: improve hideStackFrames (Aras Abbasi) #49990a6b3569121] - esm: improve error when callingimport.meta.resolvefromdata:URL (Antoine du Hamel) #4951638f4000905] - esm: fix hint on invalid module specifier (Antoine du Hamel) #51223e39e37bbd5] - esm: fix hook name in error message (Bruce MacNaughton) #50466d9b5cd533c] - events: no stopPropagation call in cancelBubble (mert.altin) #50405287a02c4b2] - fs: load rimraf lazily in fs/promises (Joyee Cheung) #51617bbd1351ef0] - fs: remove race condition for recursive watch on Linux (Matteo Collina) #514061b7ccec5a7] - fs: update jsdoc forfilehandle.createWriteStreamandappendFile(Jungku Lee) #5149425056f5024] - fs: fix fs.promises.realpath for long paths on Windows (翠 / green) #51032a8fd01a5a2] - fs: make offset, position & length args in fh.read() optional (Pulkit Gupta) #51087721557c6d8] - fs: add missing jsdoc parameters toreadSync(Yagiz Nizipli) #512253ce9aacfcd] - fs: removeinternalModuleReadJSONbinding (Yagiz Nizipli) #5122465df2c6787] - fs: improve mkdtemp performance for buffer prefix (Yagiz Nizipli) #510786705b48012] - fs: validate fd synchronously on c++ (Yagiz Nizipli) #51027afd5d67f89] - fs: throw fchownSync error from c++ (Yagiz Nizipli) #51075bac982bce5] - fs: update params in jsdoc for createReadStream and createWriteStream (Jungku Lee) #510636764f0c9a8] - fs: improve error performance of readvSync (IlyasShabi) #501000225fce776] - (SEMVER-MINOR) fs: introducedirent.parentPath(Antoine du Hamel) #509764adea6c405] - fs,test: add URL to string to fs.watch (Rafael Gonzaga) #513466bf148e12b] - http: fixclosereturn value mismatch between doc and implementation (kylo5aby) #5179766318602d0] - http: split set-cookie when using setHeaders (Marco Ippolito) #51649f7b53d05bd] - http: remove misleading warning (Luigi Pinca) #512049062d30600] - http: do not override user-provided options object (KuthorX) #336334e38dee4ee] - http: handle multi-value content-disposition header (Arsalan Ahmad) #50977b560bfbb84] - http2: close idle connections when allowHTTP1 is true (xsbchen) #515695ba4d96525] - (SEMVER-MINOR) http2: add h2 compat support for appendHeader (Tim Perry) #514120861498e8b] - (SEMVER-MINOR) http2: add server handshake utility (snek) #511726b08d006ee] - (SEMVER-MINOR) http2: receive customsettings (Marten Richter) #5132323414a6120] - http2: addtl http/2 settings (Marten Richter) #490253fe59ba224] - inspector: add NodeRuntime.waitingForDebugger event (mary marchini) #5156044f05e0d30] - lib: make sure close net server (theanarkh) #519293be5ff9c45] - lib: return directly if udp socket close before lookup (theanarkh) #51914dcbf88f4c7] - lib: account for cwd access from snapshot serialization cb (Anna Henningsen) #51901da8fa484f8] - lib: fix http client socket path (theanarkh) #5190055011d2c71] - lib: only build the ESM facade for builtins when they are needed (Joyee Cheung) #516697894989bf0] - (SEMVER-MINOR) lib: move encodingsMap to internal/util (Joyee Cheung) #510449082cc557d] - lib: do not access process.noDeprecation at build time (Joyee Cheung) #514476679e6b616] - lib: add assertion for user ESM execution (Joyee Cheung) #51748d6e8d03afc] - lib: create global console properties at snapshot build time (Joyee Cheung) #51700bd2a3c10ae] - lib: define FormData and fetch etc. in the built-in snapshot (Joyee Cheung) #51598da79876ef0] - lib: allow checking the test result from afterEach (Tim Stableford) #51485bff7e3cf7a] - lib: remove unnecessary refreshHrtimeBuffer() (Joyee Cheung) #51446562947e012] - lib: fix use of--frozen-intrinsicswith--jitless(Antoine du Hamel) #512487b83ef749e] - lib: move function declaration outside of loop (Sanjaiyan Parthipan) #512420a85b0fd9d] - lib: reduce overhead ofSafePromiseAllSettledReturnVoidcalls (Antoine du Hamel) #51243f4d7f0498e] - lib: expose default prepareStackTrace (Chengzhong Wu) #508275c7a9c8d4a] - lib: don't parse windows drive letters as schemes (华) #505809da6384f5a] - lib: refactor to use validateFunction in diagnostics_channel (Deokjin Kim) #50955be3205ae24] - lib: streamline process.binding() handling (Joyee Cheung) #50773f4987eb91e] - lib,permission: handle buffer on fs.symlink (Rafael Gonzaga) #51212861e040b40] - lib,src: extract sourceMappingURL from module (unbyte) #516908a082754e0] - lib,src: replace toUSVString withtoWellFormed()(Yagiz Nizipli) #473423badc1139c] - (SEMVER-MINOR) lib,src,permission: port path.resolve to C++ (Rafael Gonzaga) #507584b3cc3ce18] - loader: speed up line length calc used by moduleProvider (Mudit) #50969960d67c51f] - meta: bump github/codeql-action from 3.23.2 to 3.24.6 (dependabot[bot]) #519421783b93af2] - meta: bump actions/upload-artifact from 4.3.0 to 4.3.1 (dependabot[bot]) #519411db603db2f] - meta: bump codecov/codecov-action from 4.0.1 to 4.1.0 (dependabot[bot]) #519402ddec64d5a] - meta: bump actions/cache from 4.0.0 to 4.0.1 (dependabot[bot]) #5193992490421be] - meta: bump actions/download-artifact from 4.1.1 to 4.1.3 (dependabot[bot]) #51938f3fa2b72b8] - meta: bump actions/setup-node from 4.0.1 to 4.0.2 (dependabot[bot]) #51937a62b042e83] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #51726491f9f9902] - meta: bump codecov/codecov-action from 3.1.4 to 4.0.1 (dependabot[bot]) #516482765077a47] - meta: bump actions/download-artifact from 4.1.0 to 4.1.1 (dependabot[bot]) #51644152a07b854] - meta: bump actions/upload-artifact from 4.0.0 to 4.3.0 (dependabot[bot]) #5164353826920fb] - meta: bump step-security/harden-runner from 2.6.1 to 2.7.0 (dependabot[bot]) #516413d1dc9b030] - meta: bump actions/cache from 3.3.2 to 4.0.0 (dependabot[bot]) #51640287bdf6bda] - meta: bump github/codeql-action from 3.22.12 to 3.23.2 (dependabot[bot]) #5163990068fb0f1] - meta: add .mailmap entry for lemire (Daniel Lemire) #51600f91786bd70] - meta: mark security-wg codeowner for deps folder (Marco Ippolito) #51529e51221be8d] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #514684a8a012c6d] - meta: move RaisinTen to emeritus and remove from strategic initiatives (Darshan Sen) #51411e9276bab3f] - meta: add .temp and .lock tags to ignore (Rafael Gonzaga) #51343ae6fecbc8d] - meta: bump actions/setup-python from 4.7.1 to 5.0.0 (dependabot[bot]) #51335f4be49a618] - meta: bump actions/setup-node from 4.0.0 to 4.0.1 (dependabot[bot]) #51334e24aa7ced1] - meta: bump github/codeql-action from 2.22.8 to 3.22.12 (dependabot[bot]) #51333287c2bcf56] - meta: bump actions/stale from 8.0.0 to 9.0.0 (dependabot[bot]) #513321cad0dfaff] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #51329eef64b782e] - meta: notify tsc on changes in SECURITY.md (Rafael Gonzaga) #5125995a880f728] - meta: update artifact actions to v4 (Michaël Zasso) #5121959805f6879] - meta: bump step-security/harden-runner from 2.6.0 to 2.6.1 (dependabot[bot]) #50999d74e0b97c3] - meta: bump github/codeql-action from 2.22.5 to 2.22.8 (dependabot[bot]) #5099891cd9183d1] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #50931c621491aba] - module: fix crash when built-in module export adefaultkey (Antoine du Hamel) #5148143a8d3e984] - module: fix--preserve-symlinks-main(per4uk) #51312d8da197f86] - module: move the CJS exports cache to internal/modules/cjs/loader (Joyee Cheung) #511575fc10ca4d6] - module: load source maps incommonjstranslator (Hiroki Osame) #5103343e9f0bc65] - module: documentparentURLin register options (Hiroki Osame) #51039870ef5a73f] - net: fix connect crash when call destroy in lookup handler (theanarkh) #51826caf71e05a6] - net: fix example IPv4 in dns docs (Aras Abbasi) #5137758a636be0e] - (SEMVER-MINOR) net: add connection attempt events (Paolo Insogna) #5104506a29f830a] - node-api: make napi_get_buffer_info check if passed buffer is valid (Janrupf) #515710fb98438e4] - node-api: move NAPI_EXPERIMENTAL definition to gyp file (Gabriel Schulhof) #51254242139fb98] - node-api: optimize napi_set_property for perf (Mert Can Altın) #50282dc3d70c040] - node-api: type tag external values without v8::Private (Chengzhong Wu) #511490ac070ccb7] - node-api: segregate nogc APIs from rest via type system (Gabriel Schulhof) #50060de65cada70] - node-api: introduce experimental feature flags (Gabriel Schulhof) #50991e192ba18cd] - perf_hooks: performance milestone time origin timestamp improvement (IlyasShabi) #51713f94336f95a] - repl: fixNO_COLORSenv var is ignored (Moshe Atlow) #51568e08649caa0] - repl: fix prepareStackTrace frames array order (Chengzhong Wu) #5082707614072f1] - sea: update stability index (Joyee Cheung) #51774eea0d74454] - (SEMVER-MINOR) sea: support sea.getRawAsset() (Joyee Cheung) #50960db0efa3f40] - (SEMVER-MINOR) sea: support embedding assets (Joyee Cheung) #509609b164c6eec] - src: fix --disable-single-executable-application (Joyee Cheung) #51808306c1d35e5] - src: simplify direct queries of env vars in C++ land (Joyee Cheung) #51829696063a47c] - src: stop the profiler and the inspector before snapshot serialization (Joyee Cheung) #51815be40c8286c] - src: simplify embedder entry point execution (Joyee Cheung) #5155790391ff256] - src: compile code eagerly in snapshot builder (Joyee Cheung) #516723875fa1dc5] - src: check empty before accessing string (Cheng Zhao) #51665a58c98ea85] - (SEMVER-MINOR) src: print string content better in BlobDeserializer (Joyee Cheung) #5096062707a9d27] - src: fix vm bug for configurable globalThis (F. Hinkelmann) #51602c3c0a3ee5c] - (SEMVER-MINOR) src: support multi-line values for .env file (IlyasShabi) #51289dc8fe9ebf4] - (SEMVER-MINOR) src: addprocess.loadEnvFileandutil.parseEnv(Yagiz Nizipli) #51476a5afad2a4d] - src: terminate correctly double-quote in env variable (Marco Ippolito) #515102a921966c6] - (SEMVER-MINOR) src: do not coerce dotenv paths (Tobias Nießen) #5142550ec55c268] - src: refactorGetCreationContextcalls (Jungku Lee) #513672e65389922] - src: do not read string out of bounds (Cheng Zhao) #51358a653531089] - src: avoid shadowed string in fs_permission (Shelley Vohr) #51123c190a057ff] - src: avoid draining platform tasks at FreeEnvironment (Chengzhong Wu) #5129000227674f5] - src: add fast api for Histogram (James M Snell) #512964733c8e4df] - src: refactorGetCreationContextcalls (Yagiz Nizipli) #51287d76e16bb47] - src: enter isolate before destructing IsolateData (Ben Noordhuis) #511384ffdd37d2c] - src: eliminate duplicate code in histogram.cc (James M Snell) #512632ce8b974a0] - src: fix unix abstract socket path for trace event (theanarkh) #508589b25268cb8] - src: use BignumPointer and use BN_clear_free (James M Snell) #50454a80f660343] - src: implement FastByteLengthUtf8 with simdutf::utf8_length_from_latin1 (Daniel Lemire) #508400dee86f295] - (SEMVER-MINOR) src: support configurable snapshot (Joyee Cheung) #5045390b5ed1d1d] - src: implement countObjectsWithPrototype (Joyee Cheung) #505729365e129ed] - src: register udp_wrap external references (Joyee Cheung) #50943b05d496b6c] - src: register spawn_sync external references (Joyee Cheung) #50943642fb44982] - src: register process_wrap external references (Joyee Cheung) #50943c7c9e81a1a] - src: fix double free reported by coverity (Michael Dawson) #51046358793e28e] - src: remove unused headers innode_file.cc(Jungku Lee) #50927c705b73a74] - src: implement --trace-promises (Joyee Cheung) #5089997aa67f006] - src: fix dynamically linked zlib version (Richard Lau) #51007d6f46a44f2] - src: make ModifyCodeGenerationFromStrings more robust (Joyee Cheung) #50763362135a1f9] - src: disable uncaught exception abortion for ESM syntax detection (Yagiz Nizipli) #50987d82b0d4320] - src: fix backtrace with tail noreturn abort (Chengzhong Wu) #508496df3e31bff] - src: print MKSNAPSHOT debug logs to stderr (Joyee Cheung) #50759fd5efac176] - (SEMVER-MINOR) src,permission: add --allow-addon flag (Rafael Gonzaga) #51183b616f6fa06] - src,stream: improve WriteString (ywave620) #5115516d8cd5b22] - stream: do not defer construction by one microtick (Matteo Collina) #520057931c3bbc8] - stream: fix eventNames() to not return not defined events (IlyasShabi) #51331d0a6f3515d] - stream: fix cloned webstreams not being unref correctly (tsctx) #515268750070a47] - stream: fix fd is null when calling clearBuffer (kylo5aby) #50994ade6614067] - (SEMVER-MINOR) stream: add support fordeflate-rawformat to webstreams compression (Damian Krzeminski) #50097905c48fc6e] - test: add regression test for test_runner after hook (Colin Ihrig) #5199860f008b65e] - test: reduce flakiness oftest-runner-output(Antoine du Hamel) #519520ad88f6a5c] - test: fix flaky http-chunk-extensions-limit test (Ethan Arrowood) #519433f85c7ac97] - test: remove flaky designation (Luigi Pinca) #51736f37648ee5c] - test: skip SEA tests when SEA generation fails (Joyee Cheung) #51887136b6a998b] - test: fix unreliable assumption in js-native-api/test_cannot_run_js (Joyee Cheung) #51898d90594aefa] - test: deflake test-http2-large-write-multiple-requests (Joyee Cheung) #51863a0b36e33d1] - test: fix test-debugger-profile for coverage generation (Joyee Cheung) #51816dd0f164ca3] - test: fix test-bootstrap-modules for coverage generation (Joyee Cheung) #51816e4c7d62496] - test: ensure delay in recursive fs watch tests (Joyee Cheung) #51842963d7d7dea] - test: fix test-child-process-fork-net (Joyee Cheung) #51841dd708d337e] - test: split wasi tests (Joyee Cheung) #51836853b48d905] - test: remove test-fs-stat-bigint flaky designation (Luigi Pinca) #51735fdc7d751de] - test: skip test-http-correct-hostname on loong64 (Shi Pujin) #51663c33f860d2b] - test: remove test-cli-node-options flaky designation (Luigi Pinca) #51716f528e965f6] - test: remove test-domain-error-types flaky designation (Luigi Pinca) #517177e3ee828f1] - test: fixinternet/test-inspector-help-page(Richard Lau) #51693170278c25d] - test: remove duplicate entry for flaky test (Luigi Pinca) #51654d0d5bd0e54] - test: remove test-crypto-keygen flaky designation (Luigi Pinca) #51567bca6dcca0b] - test: remove test-fs-rmdir-recursive flaky designation (Luigi Pinca) #51566af3f229d6b] - test: remove common.expectsError calls for asserts (Paulo Chaves) #51504f6fcd200e6] - test: mark test-http2-large-file as flaky (Michaël Zasso) #515491d8e65a230] - test: use checkIfCollectableByCounting in SourceTextModule leak test (Joyee Cheung) #51512713afed6b0] - test: remove test-file-write-stream4 flaky designation (Luigi Pinca) #51472292d0174df] - test: add URL tests to fs-write (Rafael Gonzaga) #51352954e2f2f58] - test: remove unneeded common.expectsError for asserts (Andrés Morelos) #51353f2dfe0fa80] - test: add regression test for 51586 (Matteo Collina) #514916ee5f50789] - test: fix flaky conditions for ppc64 SEA tests (Richard Lau) #5142206a6eef9a4] - test: replace forEach() with for...of (Alexander Jones) #50608a98102a6de] - test: replace forEach with for...of (Ospite Privilegiato) #50787e9080a94d3] - test: replace foreach with for of (lucacapocci94-dev) #5079042b162b06d] - test: replace forEach() with for...of (Jia) #50610cab7737f7e] - test: fix inconsistency write size intest-fs-readfile-tostring-fail(Jungku Lee) #5114115731b4b2f] - test: replace forEach test-http-server-multiheaders2 (Marco Mac) #507949cedaa62fa] - test: replace forEach with for-of in test-webcrypto-export-import-ec (Chiara Ricciardi) #512497f301e04be] - test: move to for of loop in test-http-hostname-typechecking.js (Luca Del Puppo) #507826e62e649df] - test: skip test-watch-mode-inspect on arm (Michael Dawson) #51210c3c2b2b041] - test: replace forEach with for of in file test-trace-events-net.js (Ianna83) #5078955c423ba4f] - test: replace forEach() with for...of in test/parallel/test-util-log.js (Edoardo Dusi) #507838ac05cf3c4] - test: replace forEach with for of in test-trace-events-api.js (Andrea Pavone) #50784d10d39e8ba] - test: replace forEach with for-of in test-v8-serders.js (Mattia Iannone) #50791576adc5e5b] - test: add URL tests to fs-read in pm (Rafael Gonzaga) #51213996cef51b7] - test: use tmpdir.refresh() in test-esm-loader-resolve-type.mjs (Luigi Pinca) #512068f2d982342] - test: use tmpdir.refresh() in test-esm-json.mjs (Luigi Pinca) #51205efd6630143] - test: fix flakiness in worker*.test-free-called (Jithil P Ponnan) #5101354a29ee506] - test: deflake test-diagnostics-channel-memory-leak (Joyee Cheung) #505726319ea6183] - test: test syncrhnous methods of child_process in snapshot (Joyee Cheung) #5094350df4aee2b] - test: handle relative https redirect (Richard Lau) #511219f88f40cae] - test: fix test runner colored output test (Moshe Atlow) #51064a1feae24cb] - test: resolve path of embedtest binary correctly (Cheng Zhao) #50276a4f1805c92] - test: escape cwd in regexp (Jérémy Lal) #509801c28db8116] - test: replace forEach to for.. test-webcrypto-export-import-cfrg.js (Angelo Parziale) #50785a4f505213e] - test: log more information in SEA tests (Joyee Cheung) #50759c91b817a5c] - test: consolidate utf8 text fixtures in tests (Joyee Cheung) #5073226a06b093b] - test: give more time to GC in test-shadow-realm-gc-* (Joyee Cheung) #50735e8f5735149] - test: test surrogate pair filenames on windows (Mert Can Altın) #518001ab9ff46a5] - test: mark test-wasi as flaky on Windows on ARM (Joyee Cheung) #518341c47da1453] - test,crypto: update WebCryptoAPI WPT (Filip Skokan) #5153391c8624608] - test_runner: serialize 'expected' and 'actual' in isolation (Malthe Borch) #51851cea90dcfe3] - test_runner: add ref methods to mocked timers (Marco Ippolito) #518099ff0df1793] - test_runner: check if timeout was cleared by own callback (Ben Richeson) #5167334ecd1e36b] - test_runner: fixed test object is incorrectly passed to setup() (Pulkit Gupta) #50982da17a2538e] - test_runner: fixed to run after hook if before throws an error (Pulkit Gupta) #51062b8f0ea6f60] - test_runner: fix infinite loop when files are undefined in test runner (Pulkit Gupta) #51047fe922f05e4] - (SEMVER-MINOR) timers: export timers.promises (Marco Ippolito) #51246f4ac7baf85] - tools: fix installing node with shared mode (Cheng Zhao) #51910f07605fa7b] - tools: update eslint to 8.57.0 (Node.js GitHub Bot) #51867d16b235fca] - tools: update lint-md-dependencies to rollup@4.12.0 (Node.js GitHub Bot) #51795d27e811a01] - tools: fix missing fallthrough in js2c (Cheng Zhao) #518457eb69308da] - tools: disable automated libuv updates (Rafael Gonzaga) #517751f15af425c] - tools: update lint-md-dependencies to rollup@4.10.0 (Node.js GitHub Bot) #51720c7ae13e6bc] - tools: update github_reporter to 1.6.0 (Node.js GitHub Bot) #516580fb079bd85] - tools: runbuild-windowsworkflow only on source changes (Antoine du Hamel) #51596c2538e31fa] - tools: update lint-md-dependencies to rollup@4.9.6 (Node.js GitHub Bot) #51583e02dbf074b] - tools: fix loong64 build (Shi Pujin) #51401ce49cb6656] - tools: set normalizeTD text default to empty string (Marco Ippolito) #51543e8dc5ac552] - tools: limit parallelism with ninja in V8 builds (Richard Lau) #5147397470b179b] - tools: do not pass invalid flag to C compiler (Michaël Zasso) #5140959af1d7923] - tools: update lint-md-dependencies to rollup@4.9.5 (Node.js GitHub Bot) #514606385c7ad57] - tools: update inspector_protocol to83b1154(Kohei Ueno) #513095235aaf299] - tools: update github_reporter to 1.5.4 (Node.js GitHub Bot) #513954ce2ecb1ce] - tools: fix version parsing in brotli update script (Richard Lau) #5137386102078f5] - tools: update lint-md-dependencies to rollup@4.9.4 (Node.js GitHub Bot) #51396e658208159] - tools: remove openssl v1 update script (Marco Ippolito) #513784372f6a5b8] - tools: remove deprecated python api (Alex Yang) #497312b24059e53] - tools: update lint-md-dependencies to rollup@4.9.2 (Node.js GitHub Bot) #513201da2e8d15e] - tools: fix dep_updaters dir updates (Michaël Zasso) #51294b264dda7f2] - tools: update inspector_protocol toc488ba2(cola119) #51293fdb07d5418] - tools: update inspector_protocol to9b4a4aa(cola119) #512936863fb84a6] - tools: update inspector_protocol to2f51e05(cola119) #512936b85f5c6e0] - tools: update inspector_protocol tod7b099b(cola119) #51293cf029ca24f] - tools: update inspector_protocol to912eb68(cola119) #51293af119447f5] - tools: update inspector_protocol to547c5b8(cola119) #512935a72506823] - tools: update inspector_protocol toca525fc(cola119) #51293c7aa3976f9] - tools: update lint-md-dependencies to rollup@4.9.1 (Node.js GitHub Bot) #512768e02d08a82] - tools: check timezone current version (Marco Ippolito) #51178fa1e88775d] - tools: update lint-md-dependencies to rollup@4.9.0 (Node.js GitHub Bot) #5119304c0bf9cc5] - tools: update eslint to 8.56.0 (Node.js GitHub Bot) #51194e896cbd0d5] - tools: update lint-md-dependencies to rollup@4.7.0 (Node.js GitHub Bot) #51106c7350c2083] - tools: update doc to highlight.js@11.9.0 unified@11.0.4 (Node.js GitHub Bot) #5045900dfabf8fb] - tools: update eslint to 8.55.0 (Node.js GitHub Bot) #51025f91d56157b] - tools: update lint-md-dependencies to rollup@4.6.1 (Node.js GitHub Bot) #51022450163cf9b] - tools: add triggers to update release links workflow (Moshe Atlow) #50974b1442024ea] - tools: update lint-md-dependencies to rollup@4.5.2 (Node.js GitHub Bot) #509136fc6a62daf] - tools: fix current version check (Marco Ippolito) #50951bc6bdda8b1] - tools: fix update-icu.sh (Michaël Zasso) #51723a7a4cce75d] - typings: lib/internal/vm.js (Geoffrey Booth) #501126375540507] - typings: fix JSDoc ininternal/modules/esm/hooks(Alex Yang) #508874bc8e98d7c] - url: don't update URL immediately on update to URLSearchParams (Matt Cowley) #515202acbcbd8ad] - url: throw error if argument length of revokeObjectURL is 0 (DylanTet) #50433c50134615e] - (SEMVER-MINOR) util: add styleText API to text formatting (Rafael Gonzaga) #51850f79ac336ad] - util: pass invalidSubtypeIndex instead of trimmedSubtype to error (Gaurish Sethia) #51264c3b89c310f] - util: improve performance of function areSimilarFloatArrays (Liu Jia) #510405202995b48] - vm: implement isContext() directly in JS land with private symbol (Joyee Cheung) #516850211a3d65f] - (SEMVER-MINOR) vm: support using the default loader to handle dynamic import() (Joyee Cheung) #5124407fc077c5d] - vm: use v8::DeserializeInternalFieldsCallback explicitly (Joyee Cheung) #509845183e3a4b1] - watch: clarify that the fileName parameter can be null (Luigi Pinca) #5130563bf8a66df] - watch: fix nullfileNameon windows systems (vnc5) #4989107da4e9b58] - watch: fix infinite loop when passing --watch=true flag (Pulkit Gupta) #51160v20.11.1: 2024-02-14, Version 20.11.1 'Iron' (LTS), @RafaelGSS prepared by @marco-ippolitoCompare Source
Notable changes
This is a security release.
Notable changes
Commits
7079c062bb] - crypto: disable PKCS#1 padding for privateDecrypt (Michael Dawson) nodejs-private/node-private#525186a6e1ffb] - deps: fix GHSA-f74f-cvh7-c6q6/CVE-2024-24806 (Santiago Gimeno) #51737686da19abb] - deps: disable io_uring support in libuv by default (Tobias Nießen) nodejs-private/node-private#529f7b44bfbce] - deps: update archs files for openssl-3.0.13+quic1 (Node.js GitHub Bot) #516147a30fecea2] - deps: upgrade openssl sources to quictls/openssl-3.0.13+quic1 (Node.js GitHub Bot) #51614480fc169a8] - fs: protect against modified Buffer internals in possiblyTransformPath (Tobias Nießen) nodejs-private/node-private#49777ac7c3153] - http: add maximum chunk extension size (Paolo Insogna) nodejs-private/node-private#519ed7d149675] - lib: use cache fs internals against path traversal (RafaelGSS) nodejs-private/node-private#51689bd5fc38f] - lib: update undici to v5.28.3 (Matteo Collina) nodejs-private/node-private#539d01dd4291d] - permission: fix wildcard when children > 1 (Rafael Gonzaga) #5120940ff37dfcc] - src: fix HasOnly(capability) in node::credentials (Tobias Nießen) nodejs-private/node-private#5053f6addd590] - src,deps: disable setuid() etc if io_uring enabled (Tobias Nießen) nodejs-private/node-private#529d6da413aa4] - test,doc: clarify wildcard usage (RafaelGSS) nodejs-private/node-private#517c213910aea] - zlib: pause stream if outgoing buffer is full (Matteo Collina) nodejs-private/node-private#541v20.11.0: 2024-01-09, Version 20.11.0 'Iron' (LTS), @UlisesGasconCompare Source
Notable Changes
833190fe7c] - crypto: update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805a541b78bdb] - doc: add MrJithil to collaborators (Jithil P Ponnan) #50666d4be8fad83] - doc: add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393c1a196c897] - (SEMVER-MINOR) esm: add import.meta.dirname and import.meta.filename (James Sumners) #48740aa3209b880] - fs: add c++ fast path for writeFileSync utf8 (CanadaHonk) #498848e886a2fff] - (SEMVER-MINOR) module: remove useCustomLoadersIfPresent flag (Chengzhong Wu) #4865521ab3c0f0b] - (SEMVER-MINOR) module: bootstrap module loaders in shadow realm (Chengzhong Wu) #4865529d91b13e3] - (SEMVER-MINOR) src: add--disable-warningoption (Ethan Arrowood) #5066111b3e470db] - (SEMVER-MINOR) src: create per isolate proxy env template (Chengzhong Wu) #48655621c4d66c2] - (SEMVER-MINOR) src: make process binding data weak (Chengzhong Wu) #48655139d6c8d3b] - stream: use Array for Readable buffer (Robert Nagy) #503416206957e8d] - stream: optimize creation (Robert Nagy) #50337e64378643d] - (SEMVER-MINOR) test_runner: adds built in lcov reporter (Phil Nash) #500184a830c2d9d] - (SEMVER-MINOR) test_runner: add Date to the supported mock APIs (Lucas Santos) #48638842dc01def] - (SEMVER-MINOR) test_runner, cli: add --test-timeout flag (Shubham Pandey) #50443Commits
e40a559ab1] - benchmark: update iterations in benchmark/util/splice-one.js (Liu Jia) #5069800f7a5d26f] - benchmark: increase the iteration number to an appropriate value (Lei Shi) #50766be6ad3f375] - benchmark: rewrite import.meta benchmark (Joyee Cheung) #506839857364129] - benchmark: add misc/startup-cli-version benchmark (Joyee Cheung) #5068422d729e7f5] - benchmark: remove punycode from require-builtins fixture (Joyee Cheung) #506894cf10a149a] - benchmark: change iterations in benchmark/es/string-concatenations.js (Liu Jia) #5058515c2ed93a8] - benchmark: add benchmarks for encodings (Aras Abbasi) #503488a896428ca] - benchmark: add more cases to Readable.from (Raz Luvaton) #50351dbe6c5f354] - benchmark: skip test-benchmark-os on IBMi (Michael Dawson) #50286179b4b6e62] - benchmark: move permission-fs-read to permission-processhas-fs-read (Aki Hasegawa-Johnson) #4977032d65c001d] - buffer: improve Buffer.equals performance (kylo5aby) #5062180ea83757e] - build: add GN configurations for simdjson (Cheng Zhao) #50831904e645bcd] - build: add configuration flag to enable Maglev (Keyhan Vakil) #50692019efa8a5a] - build: fix GN configuration for deps/base64 (Cheng Zhao) #50696a645d5ac54] - build: disable flag v8_scriptormodule_legacy_lifetime (Chengzhong Wu) #506168705058b09] - build: add GN build files (Cheng Zhao) #476370a5e9c12cf] - build: fix build with Python 3.12 (Luigi Pinca) #50582ff5713dd43] - build: support Python 3.12 (Shi Pujin) #50209cfd50f229a] - build: fix building when there is only python3 (Cheng Zhao) #48462833190fe7c] - crypto: update root certificates to NSS 3.95 (Node.js GitHub Bot) #5080554c46dae9e] - deps: update zlib to 1.2.13.1-motley-5daffc7 (Node.js GitHub Bot) #508030be84e5a28] - deps: update undici to 5.27.2 (Node.js GitHub Bot) #50813ec67890824] - deps: V8: cherry-pick0f9ebbc(Chengzhong Wu) #50867bc2ebb972b] - deps: V8: cherry-pick13192d6(Levi Zim) #50552656135d70a] - deps: update zlib to 1.2.13.1-motley-dfc48fc (Node.js GitHub Bot) #5045641ee4bcc5d] - deps: update ada to 2.7.4 (Node.js GitHub Bot) #50815a40948b5c5] - deps: update minimatch to 9.0.3 (Node.js GitHub Bot) #508067be1222c4a] - deps: update simdutf to 4.0.4 (Node.js GitHub Bot) #5077268e7d49db6] - deps: upgrade npm to 10.2.4 (npm team) #507513d82d38336] - deps: escape Python strings correctly (Michaël Zasso) #50695d3870ac957] - deps: update base64 to 0.5.1 (Node.js GitHub Bot) #506294b219b6ece] - deps: update corepack to 0.23.0 (Node.js GitHub Bot) #505636c41b50922] - deps: update nghttp2 to 1.58.0 (Node.js GitHub Bot) #504413beee0ae8f] - deps: update acorn to 8.11.2 (Node.js GitHub Bot) #50460220916fa93] - deps: update undici to 5.27.0 (Node.js GitHub Bot) #50463f9960b3545] - deps: update googletest to116b7e5(Node.js GitHub Bot) #50324d5c16f897a] - dns: call handle.setServers() with a valid array (Luigi Pinca) #508111bd6537c97] - doc: recommend supported Python versions (Luigi Pinca) #50407402e257520] - doc: update notable changes in v21.1.0 (Joyee Cheung) #50388032535e270] - doc: make theme consistent across api and other docs (Dima Demakov) #50877d53842683f] - doc: add a section regardinginstanceofinprimordials.md(Antoine du Hamel) #50874fe315055a7] - doc: update email to reflect affiliation (Yagiz Nizipli) #50856e14f661950] - doc: shard not supported with watch mode (Pulkit Gupta) #50640b3d015de71] - doc: get rid of unnecessaryeslint-skipcomments (Antoine du Hamel) #50829168cbf9cb9] - doc: create deprecation code for isWebAssemblyCompiledModule (Marco Ippolito) #5048630baacba41] - doc: add CanadaHonk to triagers (CanadaHonk) #50848e6e7cbceac] - doc: fix typos in --allow-fs-* (Tobias Nießen) #50845e22ce9586f] - doc: update Crypto API doc for x509.keyUsage (Daniel Meechan) #50603549d4422b7] - doc: fix fs.writeFileSync return value documentation (Ryan Zimmerman) #507603c79e3cdba] - doc: update print results(detail) inPerformanceEntry(Jungku Lee) #50723aeaf96d06e] - doc: fixBuffer.allocUnsafedocumentation (Mert Can Altın) #50686347e1dd06a] - doc: run license-builder (github-actions[bot]) #50691a541b78bdb] - doc: add MrJithil to collaborators (Jithil P Ponnan) #5066690f415dd61] - doc: fix typo in fs.md (fwio) #50570e2388151ba] - doc: add missing description of argument insubtle.encrypt(Deokjin Kim) #5057839cc013465] - doc: update pm documentation to include resource (Ranieri Innocenti Spada) #50601ba6d427c23] - doc: correct attribution in v20.6.0 changelog (Jacob Smith) #505641b2dab8254] - doc: update to alignconsole.tablerow to the left (Jungku Lee) #505535d48ef7778] - doc: underline links (Rich Trott) #504815e6057c9d2] - doc: remove duplicate word (Gerhard Stöbich) #5047564bf2fd4ee] - doc: fix typo inwebstreams.md(André Santos) #50426cca55b8414] - doc: add information about Node-API versions >=9 (Michael Dawson) #50168d4be8fad83] - doc: add Ethan-Arrowood as a collaborator (Ethan Arrowood) #503930b311838f6] - doc: fix TOC inreleases.md(Bryce Seefieldt) #50372843d5f84ca] - esm: fallback togetSourcewhenloadreturns nullishsource(Antoine du Hamel) #508258d5469c84b] - esm: do not callgetSourcewhen format iscommonjs(Francesco Trotta) #50465b48cf314d3] - esm: bypass CJS loader in default load under--default-type=module(Antoine du Hamel) #50004c1a196c897] - (SEMVER-MINOR) esm: add import.meta.dirname and import.meta.filename (James Sumners) #48740435f9c9276] - fs: use default w flag for writeFileSync with utf8 encoding (Murilo Kakazu) #50990aa3209b880] - fs: add c++ fast path for writeFileSync utf8 (CanadaHonk) #4988405e25e0230] - fs: improve error perf of synclstat+fstat(CanadaHonk) #49868f94a24cb4b] - fs: improve error performance forrmdirSync(CanadaHonk) #49846cada22e2a4] - fs: fix to not return for void function (Jungku Lee) #50769ba40b2e33e] - fs: replace deprecatedpath._makeLongin copyFile (CanadaHonk) #50844d1b6bd660a] - fs: update param in jsdoc forreaddir(Jungku Lee) #5044811412e863a] - fs: do not throw error on cpSync internals (Yagiz Nizipli) #50185868a464c15] - fs,url: moveFromNamespacedPathtonode_url(Yagiz Nizipli) #50090de7fe08c7b] - fs,url: refactorFileURLToPathmethod (Yagiz Nizipli) #50090186e6e0395] - fs,url: moveFileURLToPathto node_url (Yagiz Nizipli) #50090aea7fe54af] - inspector: use private fields instead of symbols (Yagiz Nizipli) #5077648dbde71d8] - lib: use primordials for navigator.userAgent (Aras Abbasi) #50467fa220cac87] - lib: remove deprecated string methods (Jithil P Ponnan) #50592f1cf1c385f] - lib: fix assert shows diff messages in ESM and CJS (Jithil P Ponnan) #506343844af288f] - lib: make event static properties non writable and configurable (Muthukumar) #504250a0b416d6c] - lib: avoid memory allocation on nodeprecation flag (Vinicius Lourenço) #50231e7551d5770] - lib: align console.table row to the left (Jithil P Ponnan) #501350c85cebdf2] - meta: clarify nomination process according to Node.js charter (Matteo Collina) #50834f4070dd8d4] - meta: clarify recommendation for bug reproductions (Antoine du Hamel) #508822ddeead436] - meta: move cjihrig to TSC regular member (Colin Ihrig) #5081634a789d9be] - meta: add web-standards as WPTs owner (Filip Skokan) #5063640bbffa266] - meta: bump github/codeql-action from 2.21.9 to 2.22.5 (dependabot[bot]) #50513c49553631d] - meta: bump step-security/harden-runner from 2.5.1 to 2.6.0 (dependabot[bot]) #5051299df0138b0] - meta: bump ossf/scorecard-action from 2.2.0 to 2.3.1 (dependabot[bot]) #505099db6227ac6] - meta: fix spacing in collaborator list (Antoine du Hamel) #506412589a5a566] - meta: bump actions/setup-python from 4.7.0 to 4.7.1 (dependabot[bot]) #505105a86661a95] - meta: add crypto as crypto and webcrypto docs owner (Filip Skokan) #50579ac8d2b9cc2] - meta: bump actions/setup-node from 3.8.1 to 4.0.0 (dependabot[bot]) #50514bee2c0cf11] - meta: bump actions/checkout from 4.1.0 to 4.1.1 (dependabot[bot]) #5051191a0944e5f] - meta: add ethan.arrowood@vercel.com to mailmap (Ethan Arrowood) #504918d3cf8c4ee] - meta: add web-standards as web api visibility owner (Chengzhong Wu) #50418807c12de36] - meta: mention other notable changes section (Rafael Gonzaga) #5030921ab3c0f0b] - (SEMVER-MINOR) module: bootstrap module loaders in shadow realm (Chengzhong Wu) #486558e886a2fff] - (SEMVER-MINOR) module: remove useCustomLoadersIfPresent flag (Chengzhong Wu) #4865577e8361213] - module: execute--importsequentially (Antoine du Hamel) #50474fffc4951ac] - module: add application/json in accept header when fetching json module (Marco Ippolito) #50119f808e7a650] - net: check pipe mode and path (theanarkh) #50770cf3a4c5b84] - node-api: factor out common code into macros (Gabriel Schulhof) #50664a7d8f6b529] - perf_hooks: implement performance.now() with fast API calls (Joyee Cheung) #50492076dc7540b] - permission: do not create symlinks if target is relative (Tobias Nießen) #4915643160dcd2d] - permission: mark const functions as such (Tobias Nießen) #507057a661d7ad9] - permission: address coverity warning (Michael Dawson) #50215b2b4132c3e] - src: iterate on import attributes array correctly (Michaël Zasso) #5070311b3e470db] - (SEMVER-MINOR) src: create per isolate proxy env template (Chengzhong Wu) #48655d00412a083] - (SEMVER-MINOR) src: create fs_dir per isolate properties (Chengzhong Wu) #4865514cc3b9b90] - (SEMVER-MINOR) src: create worker per isolate properties (Chengzhong Wu) #48655621c4d66c2] - (SEMVER-MINOR) src: make process binding data weak (Chengzhong Wu) #4865507a4e94e84] - src: assert return value of BN_bn2binpad (Tobias Nießen) #50860158db2d61e] - src: fix coverity warning (Michael Dawson) #5084694363bb3fd] - src: fix compatility with upcoming V8 12.1 APIs (Cheng Zhao) #5070929d91b13e3] - (SEMVER-MINOR) src: add--disable-warningoption (Ethan Arrowood) #50661f054c337f8] - src: add IsolateScopes before using isolates (Keyhan Vakil) #50680d08eb382cd] - src: avoid copying strings in FSPermission::Apply (Tobias Nießen) #506626620df1c05] - src: remove erroneous default argument in RadixTree (Tobias Nießen) #50736436c3aef15] - src: fix JSONParser leaking internal V8 scopes (Keyhan Vakil) #506886f46d31018] - src: return error --env-file if file is not found (Ardi Nugraha) #505883d43fd359c] - src: avoid silent coercion to signed/unsigned int (Tobias Nießen) #50663c253e39b56] - src: handle errors from uv_pipe_connect2() (Deokjin Kim) #506573a9713bb5a] - src: use v8::Isolate::TryGetCurrent() in DumpJavaScriptBacktrace() (Joyee Cheung) #5051894f8a925a8] - src: print more information in C++ assertions (Joyee Cheung) #5024223f830616b] - src: hide node::credentials::HasOnly outside unit (Tobias Nießen) #50450b7ecb0a390] - src: readiterable entries may be empty (Matthew Aitken) #503984ef1d68715] - src: implement structuredClone in native (Joyee Cheung) #503309346f15138] - src: use find instead of char-by-char in FromFilePath() (Daniel Lemire) #502888414fb4d2a] - src: add commit hash shorthand in zlib version (Jithil P Ponnan) #50158a878e3abb0] - stream: fix enumerability of ReadableStream.from (Mattias Buelens) #5077995ed4ffc1e] - stream: fix enumerability of ReadableStream.prototype.values (Mattias Buelens) #507794cf155ca0c] - stream: add Symbol.toStringTag to Compression Streams (Filip Skokan) #507126012e3e781] - stream: fix Writable.destroy performance regression (Robert Nagy) #50478dd5206820c] - stream: pre-allocate _events (Robert Nagy) #50428829b82ed0f] - stream: remove no longer relevant comment (Robert Nagy) #5044698ae1b4132] - stream: use bit fields for construct/destroy (Robert Nagy) #5040808a0c6c56c] - stream: improve from perf (Raz Luvaton) #5035959f7316b8f] - stream: avoid calls to listenerCount (Robert Nagy) #503579d52430eb9] - stream: readable use bitmap accessors (Robert Nagy) #50350139d6c8d3b] - stream: use Array for Readable buffer (Robert Nagy) #503416206957e8d] - stream: optimize creation (Robert Nagy) #50337f87921de3b] - stream: refactor writable _write (Robert Nagy) #50198b338f3d3c2] - stream: avoid getter for defaultEncoding (Robert Nagy) #502031862235a26] - test: fix message v8 not normalising alphanumeric paths (Jithil P Ponnan) #507307c28a4ca8f] - test: fix dns test case failures after c-ares update to 1.21.0+ (Brad House) #507434544593d31] - test: replace forEach with for of (Conor Watson) #5059496143a3293] - test: replace forEach to for at test-webcrypto-sign-verify-ecdsa.js (Alessandro Di Nisio) #50795107b5e63c5] - test: replace foreach with for in test-https-simple.js (Shikha Mehta) #497939b2e5e9db4] - test: add note about unresolved spec issue (Mattias Buelens) #50779edce637c1a] - test: add note about readable streams with type owning (Mattias Buelens) #50779641044670b] - test: replace forEach with for-of in test-url-relative (vitosorriso) #5078875ee78438c] - test: replace forEach() with for ... of in test-tls-getprotocol.js (Steve Goode) #5060024f9d3fbeb] - test: enable idlharness tests for encoding (Mattias Buelens) #50778a9d290956e] - test: replace forEach in whatwg-encoding-custom-interop (Honza Machala) #506076584dd80f7] - test: replace forEach() with for-loop (Jan) #50596be54a22869] - test: improve test-bootstrap-modules.js (Joyee Cheung) #50708660e70e73b] - test: skip parallel/test-macos-app-sandbox if disk space < 120MB (Joyee Cheung) #507645712c41122] - test: replace foreach with for (Markus Muschol) #5059949e5f47b1c] - test: test streambase has already has a consumer (Jithil P Ponnan) #48059bb7d764c8e] - test: change forEach to for...of in path extname (Kyriakos Markakis) #506674d28ced079] - test: replace forEach with for...of (Ryan Williams) #5061192a153ecde] - test: migrate message v8 tests from Python to JS (Joshua LeMay) #50421a376284d8a] - test: use destructuring for accessing setting values (Honza Jedlička) #506097b9b1fba27] - test: replace forEach() with for .. of (Evgenia Blajer) #506059397b2da7e] - test: replace forEach() with for ... of in test-readline-keys.js (William Liang) #506049043ba4cfb] - test: replace forEach() with for ... of in test-http2-single-headers.js (spiritualized) #506069f911d31f6] - test: replace forEach with for of (john-mcinall) #506028a5f36fe74] - test: remove unused file (James Sumners) #505289950203340] - test: replace forEach with for of (Kevin Kühnemund) #5059703ba28f102] - test: replace forEach with for of (CorrWu) #49785ea61261b54] - test: replace forEach with for [...] of (Gabriel Bota) #506154349790913] - test: add WPT report test duration (Filip Skokan) #505747cacddfcc1] - test: replace forEach() with for ... of loop in test-global.js (Kajol) #49772889f58d07f] - test: skip test-diagnostics-channel-memory-leak.js (Joyee Cheung) #5032741644ee071] - test: improveUV_THREADPOOL_SIZEtests on.env(Yagiz Nizipli) #492131db44b9a53] - test: recognize wpt completion error (Chengzhong Wu) #50429ecfc951ddc] - test: report error wpt test results (Chengzhong Wu) #50429deb0351d95] - test: replace forEach() with for...of (Ram) #49794f885dfe5e3] - test: replace forEach() with for...of in test-trace-events-http (Chand) #497959dc63c56db] - test: replace forEach with for...of in test-fs-realpath-buffer-encoding (Niya Shiyas) #49804600d1260da] - test: fix timeout of test-cpu-prof-dir-worker.js in LoongArch devices (Shi Pujin) #50363099f5cfa0a] - test: fix vm assertion actual and expected order (Chengzhong Wu) #50371a31f9bfe01] - test: v8: Add test-linux-perf-logger test suite (Luke Albao) #503526c59114947] - test: ensure never settling promises are detected (Antoine du Hamel) #503189830ae4bf7] - test_runner: add tests for various mock timer issues (Mika Fischer) #503842c72ed85fb] - test_runner: pass abortSignal to test files (Moshe Atlow) #50630c33a84af11] - test_runner: replace forEach with for of (Tom Haddad) #5059529c68a22bb] - test_runner: output errors of suites (Moshe Atlow) #50361e64378643d] - (SEMVER-MINOR) test_runner: adds built in lcov reporter (Phil Nash) #500184aaaff413b] - test_runner: test return value of mocked promisified timers (Mika Fischer) #503314a830c2d9d] - (SEMVER-MINOR) test_runner: add Date to the supported mock APIs (Lucas Santos) #48638842dc01def] - (SEMVER-MINOR) test_runner, cli: add --test-timeout flag (Shubham Pandey) #50443613a9072b7] - tls: fix order of setting cipher before setting cert and key (Kumar Rishav) #50186d905c61e16] - tls: usevalidateFunctionforoptions.SNICallback(Deokjin Kim) #50530c8d6dd58e7] - tools: add macOS notarization verification step (Ulises Gascón) #50833c9bd0b0c0f] - tools: use macOS keychain to notarize the releases (Ulises Gascón) #50715932a5d7b2c] - tools: update eslint to 8.54.0 (Node.js GitHub Bot) #50809d7114d97be] - tools: update lint-md-dependencies to rollup@4.5.0 (Node.js GitHub Bot) #5080793085cf844] - tools: add workflow to update release links (Michaël Zasso) #5071066764c5d04] - tools: recognize GN files in dep_updaters (Cheng Zhao) #506932a451e176a] - tools: remove unused file (Ulises Gascon) #506228ce6403230] - tools: change minimatch install strategy (Marco Ippolito) #5047697778e2e77] - tools: update lint-md-dependencies to rollup@4.3.1 (Node.js GitHub Bot) #50675797f6a9ba8] - tools: add macOS notarization stapler (Ulises Gascón) #506258fa1319352] - tools: update eslint to 8.53.0 (Node.js GitHub Bot) #50559592f57970f] - tools: update lint-md-dependencies to rollup@4.3.0 (Node.js GitHub Bot) #505562fd78fc39e] - tools: compare ICU checksums before file changes (Michaël Zasso) #50522631d710fc4] - tools: improve update acorn-walk script (Marco Ippolito) #5047333fd2af2ab] - tools: update lint-md-dependencies to rollup@4.2.0 (Node.js GitHub Bot) #5049622b7a74838] - tools: update gyp-next to v0.16.1 (Michaël Zasso) #50380f5ccab5005] - tools: skip ruff on tools/gyp (Michaël Zasso) #50380408fd90508] - tools: update lint-md-dependencies to rollup@4.1.5 unified@11.0.4 (Node.js GitHub Bot) #50461685f936ccd] - tools: avoid npm install in deps installation (Marco Ippolito) #504137d43c5a094] - Revert "tools: update doc dependencies" (Richard Lau) #504148fd67c2e3e] - tools: update doc dependencies (Node.js GitHub Bot) #49988586becb507] - tools: run coverage CI only on relevant files (Antoine du Hamel) #503492d06eea6c5] - tools: update eslint to 8.52.0 (Node.js GitHub Bot) #503266a897baf16] - tools: update lint-md-dependencies (Node.js GitHub Bot) #50190e6e7f39b9e] - util: improve performance of normalizeEncoding (kylo5aby) #507213b6b1afa47] - v8,tools: expose necessary V8 defines (Cheng Zhao) #508202664012617] - vm: allow dynamic import with a referrer realm (Chengzhong Wu) #50360c6c0a74b54] - wasi: document security sandboxing status (Guy Bedford) #50396989814093e] - win,tools: upgrade Windows signing to smctl (Stefan Stojanovic) #50956v20.10.0: 2023-11-22, Version 20.10.0 'Iron' (LTS), @targosCompare Source
Notable Changes
--experimental-default-typeflag to flip module defaultsThe new flag
--experimental-default-typecan be used to flip the defaultmodule system used by Node.js. Input that is already explicitly defined as ES
modules or CommonJS, such as by a
package.json"type"field or.mjs/.cjsfile extension or the
--input-typeflag, is unaffected. What is currentlyimplicitly CommonJS would instead be interpreted as ES modules under
--experimental-default-type=module:String input provided via
--evalor STDIN, if--input-typeis unspecified.Files ending in
.jsor with no extension, if there is nopackage.jsonfilepresent in the same folder or any parent folder.
Files ending in
.jsor with no extension, if the nearest parentpackage.jsonfield lacks atypefield; unless the folder is inside anode_modulesfolder.In addition, extensionless files are interpreted as Wasm if
--experimental-wasm-modulesis passed and the file contains the "magic bytes"Wasm header.
Contributed by Geoffrey Booth in #49869.
Detect ESM syntax in ambiguous JavaScript
The new flag
--experimental-detect-modulecan be used to automatically run ESmodules when their syntax can be detected. For “ambiguous” files, which are
.jsor extensionless files with nopackage.jsonwith atypefield, Node.jswill parse the file to detect ES module syntax; if found, it will run the file
as an ES module, otherwise it will run the file as a CommonJS module. The same
applies to string input via
--evalorSTDIN.We hope to make detection enabled by default in a future version of Node.js.
Detection increases startup time, so we encourage everyone—especially package
authors—to add a
typefield topackage.json, even for the default"type": "commonjs". The presence of atypefield, or explicit extensionssuch as
.mjsor.cjs, will opt out of detection.Contributed by Geoffrey Booth in #50096.
New
flushoption in file system functionsWhen writing to files, it is possible that data is not immediately flushed to
permanent storage. This allows subsequent read operations to see stale data.
This MR adds a
'flush'option to thefs.writeFilefamily of functions whichforces the data to be flushed at the end of a successful write operation.
Contributed by Colin Ihrig in #50009 and #50095.
Experimental WebSocket client
Adds a
--experimental-websocketflag that adds aWebSocketglobal, as standardized by WHATWG.
Contributed by Matthew Aitken in #49830.
vm: fix V8 compilation cache support for vm.Script
Previously repeated compilation of the same source code using
vm.Scriptstopped hitting the V8 compilation cache after v16.x when support for
importModuleDynamicallywas added tovm.Script, resulting in a performanceregression that blocked users (in particular Jest users) from upgrading from
v16.x.
The recent fixes allow the compilation cache to be hit again
for
vm.Scriptwhen--experimental-vm-modulesis not used even in thepresence of the
importModuleDynamicallyoption, so that users affected by theperformance regression can now upgrade. Ongoing work is also being done to
enable compilation cache support for
vm.CompileFunction.Contributed by Joyee Cheung in #49950
and #50137.
Other notable changes
21453ae555] - (SEMVER-MINOR) deps: update uvwasi to 0.0.19 (Node.js GitHub Bot) #49908ee65e44c31] - esm: use import attributes instead of import assertions (Antoine du Hamel) #50140ffdc357167] - (SEMVER-MINOR) stream: allow passing stream class tostream.compose(Alex Yang) #501874861ad6431] - stream: improve performance of readable stream reads (Raz Luvaton) #501734b27087b30] - stream: optimize Writable (Robert Nagy) #50012709c6c0cab] - (SEMVER-MINOR) test_runner, cli: add --test-concurrency flag (Colin Ihrig) #4999657efd5292c] - (SEMVER-MINOR) vm: use import attributes instead of import assertions (Antoine du Hamel) #50141Commits
73757a5f42] - benchmark: fix race condition on fs benchs (Vinicius Lourenço) #5003523269717bb] - benchmark: add warmup to accessSync bench (Rafael Gonzaga) #5007388611d199a] - benchmark: improved config for blob,file benchmark (Vinícius Lourenço) #49730b70757476c] - benchmark: added new benchmarks for blob (Vinícius Lourenço) #49730458d9a82e3] - buffer: remove unnecessary assignment in fromString (Tobias Nießen) #50199878c0b332e] - build: fix IBM i build with Python 3.9 (Richard Lau) #48056773320e1de] - crypto: ensure valid point on elliptic curve in SubtleCrypto.importKey (Filip Skokan) #50234edb0ffd7d4] - crypto: use X509_ALGOR accessors instead of reaching into X509_ALGOR (David Benjamin) #500573f98c06dbb] - crypto: account for disabled SharedArrayBuffer (Shelley Vohr) #5003455485ff1cc] - crypto: return clear errors when loading invalid PFX data (Tim Perry) #4956668ec1e5eeb] - deps: upgrade npm to 10.2.3 (npm team) #50531b00c11ad7c] - deps: V8: cherry-pickd90d453(Michaël Zasso) #50077e63aef91b4] - deps: V8: cherry-pickf7d000a(Luke Albao) #500774b243b553a] - deps: V8: cherry-pick9721082(Shi Pujin) #500779d3cdcbebf] - deps: V8: cherry-pick840650f(Michaël Zasso) #500770c40b513fd] - deps: V8: cherry-picka1efa53(Michaël Zasso) #5007768cddd79f7] - deps: update archs files for openssl-3.0.12+quic1 (Node.js GitHub Bot) #504113308189180] - deps: upgrade openssl sources to quictls/openssl-3.0.12+quic1 (Node.js GitHub Bot) #50411b61707e535] - deps: update ada to 2.7.2 (Node.js GitHub Bot) #503381aecf0c17b] - deps: update corepack to 0.22.0 (Node.js GitHub Bot) #50325f5924f174c] - deps: update c-ares to 1.20.1 (Node.js GitHub Bot) #50082b705e19a95] - deps: update c-ares to 1.20.0 (Node.js GitHub Bot) #50082f72cbb7e02] - deps: V8: cherry-pick2590224(Joyee Cheung) #501566547bd2493] - deps: V8: cherry-pickea996ad(Antoine du Hamel) #5018316fd730e95] - deps: V8: cherry-picka0fd320(Antoine du Hamel) #50183614c3620c3] - deps: update corepack to 0.21.0 (Node.js GitHub Bot) #50088545aa74ae2] - deps: update simdutf to 3.2.18 (Node.js GitHub Bot) #500919302806c0a] - deps: update zlib to 1.2.13.1-motley-fef5869 (Node.js GitHub Bot) #5008503bf5c5d9a] - deps: update googletest to2dd1c13(Node.js GitHub Bot) #50081cd8e90690b] - deps: update googletest toe47544a(Node.js GitHub Bot) #4998240672cfe53] - deps: update ada to 2.6.10 (Node.js GitHub Bot) #4998434c7eb0eb2] - deps: fix call to undeclared functions 'ntohl' and 'htons' (MatteoBax) #4997903654b44b6] - deps: update ada to 2.6.9 (Node.js GitHub Bot) #493404c740b1dd8] - deps: update ada to 2.6.8 (Node.js GitHub Bot) #49340759cf5a760] - deps: update ada to 2.6.7 (Node.js GitHub Bot) #4934031a4e9781a] - deps: update ada to 2.6.5 (Node.js GitHub Bot) #493402ca867f2ab] - deps: update ada to 2.6.3 (Node.js GitHub Bot) #4934021453ae555] - (SEMVER-MINOR) deps: update uvwasi to 0.0.19 (Node.js GitHub Bot) #499087ca1228be8] - deps: V8: cherry-pick8ec2651(Abdirahim Musse) #498623cc41d253c] - deps: upgrade npm to 10.2.0 (npm team) #5002761b4afb7dd] - deps: update undici to 5.26.4 (Node.js GitHub Bot) #50274ea28738336] - doc: add loong64 info into platform list (Shi Pujin) #5008600c12b7a20] - doc: update release process LTS step (Richard Lau) #50299a9ba29ba10] - doc: fix release process table of contents (Richard Lau) #502164b5033519e] - doc: update apistream.compose(Alex Yang) #50206d4659e2080] - doc: add ReflectConstruct to known perf issues (Vinicius Lourenço) #50111ffa94612fd] - doc: fix typo in dgram docs (Peter Johnson) #50211f37b577b14] - doc: fix H4ad collaborator sort (Vinicius Lourenço) #50218c75264b1f9] - doc: add H4ad to collaborators (Vinícius Lourenço) #502175025e24ac7] - doc: update release-stewards with last sec-release (Rafael Gonzaga) #5017963379313d5] - doc: add command to keep major branch sync (Rafael Gonzaga) #5010285de4b8254] - doc: add loong64 to list of architectures (Shi Pujin) #50172ff8e1b860e] - doc: update security release process (Michael Dawson) #5016633470d965c] - doc: improve ccache explanation (Chengzhong Wu) #501337b97c44e2a] - doc: move danielleadams to TSC non-voting member (Danielle Adams) #501423d03ca9f31] - doc: fix description offs.readdirrecursiveoption (RamdohokarAngha) #48902aab045ec4b] - doc: mention files read before env setup (Rafael Gonzaga) #5007226a7608a24] - doc: move permission model to Active Development (Rafael Gonzaga) #50068d7bbf7f2c4] - doc: add command to get patch minors and majors (Rafael Gonzaga) #500679830165e34] - doc: use precise promise terminology in fs (Benjamin Gruenbaum) #50029585cbb211d] - doc: use precise terminology in test runner (Benjamin Gruenbaum) #500282862f07124] - doc: clarify explaination text on how to run the example (Anshul Sinha) #39020fe47c8ad91] - doc: reserve 119 for Electron 28 (David Sanders) #5002036ecd2c588] - doc: update Collaborator pronouns (Tierney Cyren) #50005315d82a73e] - doc: update link to Abstract Modules Records spec (Rich Trott) #49961f63a92bb6c] - doc: updated building docs for windows (Claudio W) #49767ad17126501] - doc: update CHANGELOG_V20 about vm fixes (Joyee Cheung) #4995124458e2ac3] - doc: document dangerous symlink behavior (Tobias Nießen) #49154337a676d1f] - doc: add main ARIA landmark to API docs (Rich Trott) #49882959ef7ac6b] - doc: add navigation ARIA landmark to doc ToC (Rich Trott) #49882a60fbf2ab3] - doc: mark Node.js 19 as End-of-Life (Richard Lau) #48283c255575699] - errors: improve performance of determine-specific-type (Aras Abbasi) #49696e66991e6b2] - errors: improve formatList in errors.js (Aras Abbasi) #49642c71e548b65] - errors: improve performance of instantiation (Aras Abbasi) #496543b867e4256] - esm: do not give wrong hints when detecting file format (Antoine du Hamel) #50314a589a1a905] - (SEMVER-MINOR) esm: detect ESM syntax in ambiguous JavaScript (Geoffrey Booth) #50096c64490e9aa] - esm: improve check for ESM syntax (Geoffrey Booth) #50127ee65e44c31] - esm: use import attributes instead of import assertions (Antoine du Hamel) #501404de838fdeb] - esm: bypass CommonJS loader under --default-type (Geoffrey Booth) #4998627e02b633d] - esm: unflag extensionless javascript and wasm in module scope (Geoffrey Booth) #499741e762ddf63] - esm: improvegetFormatOfExtensionlessFilespeed (Yagiz Nizipli) #49965112cc7f9f2] - esm: improve JSDoc annotation of internal functions (Antoine du Hamel) #49959c48cd84188] - esm: fix cache collision on JSON files using file: URL (Antoine du Hamel) #49887dc80ccef25] - esm: --experimental-default-type flag to flip module defaults (Geoffrey Booth) #4986901039795a2] - esm: require braces for modules code (Geoffrey Booth) #49657e49ebf8f9a] - fs: improve error performance forreadSync(Jungku Lee) #50033eb33f70260] - fs: improve error performance forfsyncSync(Jungku Lee) #498808d0edc6399] - fs: improve error performance formkdirSync(CanadaHonk) #4984736df27509e] - fs: improve error performance ofrealpathSync(Yagiz Nizipli) #499624242cb7d7f] - fs: improve error performance oflchownSync(Yagiz Nizipli) #4996289e7878e44] - fs: improve error performance ofsymlinkSync(Yagiz Nizipli) #49962af6a0611fe] - fs: improve error performance ofreadlinkSync(Yagiz Nizipli) #4996212cda31c52] - fs: improve error performance ofmkdtempSync(Yagiz Nizipli) #499629dba771acb] - fs: improve error performance oflinkSync(Yagiz Nizipli) #49962ea7902de13] - fs: improve error performance ofchownSync(Yagiz Nizipli) #4996239f31a38cf] - fs: improve error performance ofrenameSync(Yagiz Nizipli) #4996235164fa466] - (SEMVER-MINOR) fs: add flush option to appendFile() functions (Colin Ihrig) #5009506aa4b9fe9] - fs: improve error performance ofreaddirSync(Yagiz Nizipli) #50131b5aecebcd6] - fs: fixunlinkSynctypings (Yagiz Nizipli) #498596ddea07225] - fs: improve error perf of syncchmod+fchmod(CanadaHonk) #49859841367078e] - fs: improve error perf of sync*times(CanadaHonk) #49864eb52f73e3e] - fs: improve error performance of writevSync (IlyasShabi) #50038d1aa62f1f5] - fs: add flush option to createWriteStream() (Colin Ihrig) #5009357eb06edff] - fs: improve error performance forftruncateSync(André Alves) #5003222e3eb659a] - fs: add flush option to writeFile() functions (Colin Ihrig) #50009d7132d9214] - fs: improve error performance forfdatasyncSync(Jungku Lee) #49898bc2c0410d3] - fs: throw errors from sync branches instead of separate implementations (Joyee Cheung) #49913f46bcf1749] - http: refactor to make servername option normalization testable (Rongjian Zhang) #387331bfcf817af] - http2: allow streams to complete gracefully after goaway (Michael Lumish) #502025c66ec9e66] - inspector: simplify dispatchProtocolMessage (Daniel Lemire) #49780251ae1dd72] - lib: improve performance of validateStringArray and validateBooleanArray (Aras Abbasi) #49756d9c791a508] - lib: fix compileFunction throws range error for negative numbers (Jithil P Ponnan) #4985524cbc550c2] - lib: reduce overhead of validateObject (Vinicius Lourenço) #49928b80e9497f3] - lib: make fetch sync and return a Promise (Matthew Aitken) #49936d9eda6761b] - lib: fixprimordialstypings (Sam Verschueren) #498953e0d47c1f4] - lib: update params in jsdoc forHTTPRequestOptions(Jungku Lee) #49872a01050dec4] - (SEMVER-MINOR) lib: add WebSocket client (Matthew Aitken) #498305bca8feed2] - lib,test: do not hardcode Buffer.kMaxLength (Michaël Zasso) #49876e8ebed7a24] - meta: move Trott to TSC regular member (Rich Trott) #5029727e957cea8] - meta: ping TSC for offboarding (Tobias Nießen) #50147fab39062d5] - meta: bump actions/upload-artifact from 3.1.2 to 3.1.3 (dependabot[bot]) #5000046ec82496c] - meta: bump actions/cache from 3.3.1 to 3.3.2 (dependabot[bot]) #50003a634fb431e] - meta: bump github/codeql-action from 2.21.5 to 2.21.9 (dependabot[bot]) #50002c221f72911] - meta: bump actions/checkout from 3.6.0 to 4.1.0 (dependabot[bot]) #50001d356e5e395] - meta: update website team with new name (Rich Trott) #498832ff4e71452] - module: move helpers out of cjs loader (Geoffrey Booth) #49912142ac3f82d] - module, esm: jsdoc for modules files (Geoffrey Booth) #49523e2f0ef2a60] - node-api: update headers for better wasm support (Toyo Li) #49037db2a07fcd6] - node-api: run finalizers directly from GC (Vladimir Morozov) #42651c25716be8b] - os: cache homedir, remove getCheckedFunction (Aras Abbasi) #50037e8f024b4db] - perf_hooks: reduce overhead of new user timings (Vinicius Lourenço) #49914a517be0a5a] - perf_hooks: reducing overhead of performance observer entry list (Vinicius Lourenço) #5000842e49ec381] - perf_hooks: reduce overhead of new resource timings (Vinicius Lourenço) #49837c99e51ed1b] - src: generate default snapshot with --predictable (Joyee Cheung) #4874947164e238f] - src: fix TLSWrap lifetime bug in ALPN callback (Ben Noordhuis) #49635e1df69e73e] - src: set port in node_options to uint16_t (Yagiz Nizipli) #491511eb2af29b4] - src: name scoped lock (Mohammed Keyvanzadeh) #500105131fde655] - src: use exact return value foruv_os_getenv(Yagiz Nizipli) #49149ba169be5ca] - src: move const variable innode_file.htonode_file.cc(Jungku Lee) #496885a2351d3ab] - src: remove unused variable (Michaël Zasso) #49665f2f993a32f] - stream: simplify prefinish (Robert Nagy) #502046d7274e3ca] - stream: reduce scope of readable bitmap details (Robert Nagy) #49963ffdc357167] - (SEMVER-MINOR) stream: allow pass stream class tostream.compose(Alex Yang) #501874861ad6431] - stream: call helper function from push and unshift (Raz Luvaton) #50173e60b3ab31b] - stream: use private symbol for bitmap state (Robert Nagy) #49993ecbfb23f6b] - stream: lazy allocate back pressure buffer (Robert Nagy) #5001388c739bef4] - stream: avoid unnecessary drain for sync stream (Robert Nagy) #500144b27087b30] - stream: optimize Writable (Robert Nagy) #50012def55f80a1] - stream: avoid tick in writable hot path (Robert Nagy) #4996635ec93115d] - stream: writable state bitmap (Robert Nagy) #498996e0f0fafe4] - test: use ppc and ppc64 to skip SEA tests on PowerPC (Joyee Cheung) #50828a528bbceca] - test: mark SEA tests as flaky on PowerPC (Joyee Cheung) #507504e34f9a26e] - test: relax version check with shared OpenSSL (Luigi Pinca) #5050541ca1132eb] - test: fix crypto-dh error message for OpenSSL 3.x (Kerem Kat) #50395a6a05e8a88] - test: fix testsuite against zlib version 1.3 (Dominique Leuenberger) #503648dd895e574] - test: replace forEach with for..of in test-process-env (Niya Shiyas) #4982581886c66d1] - test: replace forEach with for..of in test-http-url (Niya Shiyas) #498407d8a18b257] - test: improve watch mode test (Moshe Atlow) #50319baa04b79ca] - test: settest-watch-mode-inspectas flaky (Yagiz Nizipli) #502593d9130bc2e] - Revert "test: settest-esm-loader-resolve-typeas flaky" (Antoine du Hamel) #5031572626f9a35] - test: replace forEach with for..of in test-http-perf_hooks.js (Niya Shiyas) #49818379a7255e8] - test: replace forEach with for..of in test-net-isipv4.js (Niya Shiyas) #49822b55fcd75da] - test: deflaketest-esm-loader-resolve-type(Antoine du Hamel) #502730134af3eeb] - test: replace forEach with for..of in test-http2-server (Niya Shiyas) #498198c15281d06] - test: replace forEach with for..of in test-http2-client-destroy.js (Niya Shiyas) #49820c37a75a898] - test: updateurlweb platform tests (Yagiz Nizipli) #50264ab5985d0e9] - test: settest-emit-after-on-destroyedas flaky (Yagiz Nizipli) #5024650181a19b8] - test: set inspector async stack test as flaky (Yagiz Nizipli) #50244b9e0fed995] - test: set test-worker-nearheaplimit-deadlock flaky (StefanStojanovic) #502772cfc4007d1] - test: settest-cli-node-optionsas flaky (Yagiz Nizipli) #50296788714b28f] - test: reduce the number of requests and parsers (Luigi Pinca) #502400dce19c8f6] - test: set crypto-timing test as flaky (Yagiz Nizipli) #502325d4b5ff1b8] - test: settest-structuredclone-*as flaky (Yagiz Nizipli) #502615c56081d67] - test: deflaketest-loaders-workers-spawned(Antoine du Hamel) #502513441e1982d] - test: improve code coverage of diagnostics_channel (Jithil P Ponnan) #50053696ba93329] - test: settest-esm-loader-resolve-typeas flaky (Yagiz Nizipli) #502268b260c5d6b] - test: set inspector async hook test as flaky (Yagiz Nizipli) #50252f3296d25e8] - test: skip test-benchmark-os.js on IBM i (Abdirahim Musse) #50208fefe17b02e] - test: set parallel http server test as flaky (Yagiz Nizipli) #50227228c87f329] - test: set test-worker-nearheaplimit-deadlock flaky (Stefan Stojanovic) #50238c2c2506eab] - test: settest-runner-watch-modeas flaky (Yagiz Nizipli) #5022116a07983d4] - test: set sea snapshot tests as flaky (Yagiz Nizipli) #502237cd406a0b8] - test: fix defect path traversal tests (Tobias Nießen) #501241cf3f8da32] - test: replace forEach with for..of in test-net-isipv6.js (Niya Shiyas) #49823214997a99e] - test: reduce number of repetition in test-heapdump-shadowrealm.js (Chengzhong Wu) #501049d836516e6] - test: replace forEach with for..of in test-parse-args.mjs (Niya Shiyas) #49824fee8b24603] - test: replace forEach() in test-net-perf_hooks with for of (Narcisa Codreanu) #498314c58b92ba8] - test: change forEach to for...of (Tiffany Lastimosa) #4979901b01527d7] - test: update skip for movedtest-wasm-web-api(Richard Lau) #49958179e293103] - Revert "test: mark test-runner-output as flaky" (Luigi Pinca) #49905829eb99afd] - test: disambiguate AIX and IBM i (Richard Lau) #48056126407d438] - test: deflake test-perf-hooks.js (Joyee Cheung) #49892393fd5b7c9] - test: migrate message error tests from Python to JS (Yiyun Lei) #497215dfe4236f8] - test: fix edge snapshot stack traces (Geoffrey Booth) #49659d164e537bf] - test,crypto: update WebCryptoAPI WPT (Filip Skokan) #5003955a03fedae] - test_runner: add test location for FileTests (Colin Ihrig) #4999910b35cfb6e] - test_runner: replace spurious if with else (Colin Ihrig) #4994327558c4314] - test_runner: catch reporter errors (Moshe Atlow) #49646709c6c0cab] - (SEMVER-MINOR) test_runner, cli: add --test-concurrency flag (Colin Ihrig) #4999664ef108dd9] - test_runner,test: fix flaky test-runner-cli-concurrency.js (Colin Ihrig) #50108d2def152d9] - tls: reduce TLS 'close' event listener warnings (Tim Perry) #50136294b650f5c] - tls: handle cases where the raw socket is destroyed (Luigi Pinca) #4998052b5693949] - tls: ciphers allow bang syntax (Chemi Atlow) #4971205ee35028b] - tools: update comment inupdate-uncidi.shandacorn_version.h(Jungku Lee) #5017535b160e6a3] - tools: refactor checkimports.py (Mohammed Keyvanzadeh) #50011b959d36b77] - tools: fix comments referencing dep_updaters scripts (Keksonoid) #50165bd5d5331b0] - tools: remove no-return-await lint rule (翠 / green) #50118b9adf3d66e] - tools: update lint-md-dependencies (Node.js GitHub Bot) #500834978bdc4ec] - tools: update eslint to 8.51.0 (Node.js GitHub Bot) #50084e323a367fd] - tools: remove genv8constants.py (Ben Noordhuis) #500231cc6cbff26] - tools: update eslint to 8.50.0 (Node.js GitHub Bot) #49989924231be2a] - tools: update lint-md-dependencies (Node.js GitHub Bot) #49983732b5661ea] - tools: add navigation ARIA landmark to generated API ToC (Rich Trott) #49882353a14278e] - tools: update github_reporter to 1.5.3 (Node.js GitHub Bot) #498770aaab45d7c] - tools: improve macOS notarization process output readability (Ulises Gascón) #50389ad326033e2] - tools: remove unusedversionfunction (Ulises Gascón) #503902f32472544] - tools: drop support for osx notarization with gon (Ulises Gascón) #502913b1c15aeb0] - tools: use osx notarytool for future releases (Ulises Gascon) #487010ddb87ede3] - typings: useSymbol.disposeandSymbol.asyncDisposein types (Niklas Mollenhauer) #50123bf5b2115a0] - util: remove internal mime fns from benchmarks (Aras Abbasi) #50201ac02cdb0ad] - util: lazy parse mime parameters (Aras Abbasi) #498899853fd96df] - vm: reject in importModuleDynamically without --experimental-vm-modules (Joyee Cheung) #501373697c19c80] - vm: use internal versions of compileFunction and Script (Joyee Cheung) #5013756bbc30a44] - vm: unify host-defined option generation in vm.compileFunction (Joyee Cheung) #5013757efd5292c] - (SEMVER-MINOR) vm: use import attributes instead of import assertions (Antoine du Hamel) #5014117581c2716] - vm: use default HDO when importModuleDynamically is not set (Joyee Cheung) #4995065e18aa8e7] - wasi: address coverity warning (Michael Dawson) #498665b695d6a8d] - wasi: fix up wasi tests for ibmi (Michael Dawson) #49953b86e1f5cbd] - (SEMVER-MINOR) wasi: updates required for latest uvwasi version (Michael Dawson) #49908b4d149b4d6] - worker: handle detachedMessagePortfrom a different context (Juan José) #49150f564ed4e05] - zlib: fix discovery of cpu-features.h for android (MatteoBax) #49828Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this MR and you won't be reminded about this update again.
This MR has been generated by Renovate Bot.
mentioned in commit
86c8c7659a