Skip to content

Commit

Permalink
Update Node.js to v20 (#4267)
Browse files Browse the repository at this point in the history
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [node](https://togithub.com/nodejs/node) | final | major |
`16-bookworm-slim` -> `20-bookworm-slim` |

---

### Release Notes

<details>
<summary>nodejs/node (node)</summary>

###
[`v20.11.1`](https://togithub.com/nodejs/node/releases/tag/v20.11.1):
2024-02-14, Version 20.11.1 &#x27;Iron&#x27; (LTS), @&#8203;RafaelGSS
prepared by @&#8203;marco-ippolito

[Compare
Source](https://togithub.com/nodejs/node/compare/v20.11.0...v20.11.1)

##### Notable changes

This is a security release.

##### Notable changes

- CVE-2024-21892 - Code injection and privilege escalation through Linux
capabilities- (High)
- CVE-2024-22019 - http: Reading unprocessed HTTP request with unbounded
chunk extension allows DoS attacks- (High)
- CVE-2024-21896 - Path traversal by monkey-patching Buffer internals-
(High)
- CVE-2024-22017 - setuid() does not drop all privileges due to io_uring
- (High)
- CVE-2023-46809 - Node.js is vulnerable to the Marvin Attack (timing
variant of the Bleichenbacher attack against
[PKCS#1](https://togithub.com/PKCS/node/issues/1) v1.5 padding) -
(Medium)
- CVE-2024-21891 - Multiple permission model bypasses due to improper
path traversal sequence sanitization - (Medium)
- CVE-2024-21890 - Improper handling of wildcards in --allow-fs-read and
--allow-fs-write (Medium)
- CVE-2024-22025 - Denial of Service by resource exhaustion in fetch()
brotli decoding - (Medium)
-   undici version 5.28.3
-   libuv version 1.48.0
-   OpenSSL version 3.0.13+quic1

##### Commits

- \[[`7079c062bb`](https://togithub.com/nodejs/node/commit/7079c062bb)]
- **crypto**: disable [PKCS#1](https://togithub.com/PKCS/node/issues/1)
padding for privateDecrypt (Michael Dawson)
[nodejs-private/node-private#525](https://togithub.com/nodejs-private/node-private/pull/525)
- \[[`186a6e1ffb`](https://togithub.com/nodejs/node/commit/186a6e1ffb)]
- **deps**: fix GHSA-f74f-cvh7-c6q6/CVE-2024-24806 (Santiago Gimeno)
[#&#8203;51737](https://togithub.com/nodejs/node/pull/51737)
- \[[`686da19abb`](https://togithub.com/nodejs/node/commit/686da19abb)]
- **deps**: disable io_uring support in libuv by default (Tobias Nießen)
[nodejs-private/node-private#529](https://togithub.com/nodejs-private/node-private/pull/529)
- \[[`f7b44bfbce`](https://togithub.com/nodejs/node/commit/f7b44bfbce)]
- **deps**: update archs files for openssl-3.0.13+quic1 (Node.js GitHub
Bot) [#&#8203;51614](https://togithub.com/nodejs/node/pull/51614)
- \[[`7a30fecea2`](https://togithub.com/nodejs/node/commit/7a30fecea2)]
- **deps**: upgrade openssl sources to quictls/openssl-3.0.13+quic1
(Node.js GitHub Bot)
[#&#8203;51614](https://togithub.com/nodejs/node/pull/51614)
- \[[`480fc169a8`](https://togithub.com/nodejs/node/commit/480fc169a8)]
- **fs**: protect against modified Buffer internals in
possiblyTransformPath (Tobias Nießen)
[nodejs-private/node-private#497](https://togithub.com/nodejs-private/node-private/pull/497)
- \[[`77ac7c3153`](https://togithub.com/nodejs/node/commit/77ac7c3153)]
- **http**: add maximum chunk extension size (Paolo Insogna)
[nodejs-private/node-private#519](https://togithub.com/nodejs-private/node-private/pull/519)
- \[[`ed7d149675`](https://togithub.com/nodejs/node/commit/ed7d149675)]
- **lib**: use cache fs internals against path traversal (RafaelGSS)
[nodejs-private/node-private#516](https://togithub.com/nodejs-private/node-private/pull/516)
- \[[`89bd5fc38f`](https://togithub.com/nodejs/node/commit/89bd5fc38f)]
- **lib**: update undici to v5.28.3 (Matteo Collina)
[nodejs-private/node-private#539](https://togithub.com/nodejs-private/node-private/pull/539)
- \[[`d01dd4291d`](https://togithub.com/nodejs/node/commit/d01dd4291d)]
- **permission**: fix wildcard when children > 1 (Rafael Gonzaga)
[#&#8203;51209](https://togithub.com/nodejs/node/pull/51209)
- \[[`40ff37dfcc`](https://togithub.com/nodejs/node/commit/40ff37dfcc)]
- **src**: fix HasOnly(capability) in node::credentials (Tobias Nießen)
[nodejs-private/node-private#505](https://togithub.com/nodejs-private/node-private/pull/505)
- \[[`3f6addd590`](https://togithub.com/nodejs/node/commit/3f6addd590)]
- **src,deps**: disable setuid() etc if io_uring enabled (Tobias Nießen)
[nodejs-private/node-private#529](https://togithub.com/nodejs-private/node-private/pull/529)
- \[[`d6da413aa4`](https://togithub.com/nodejs/node/commit/d6da413aa4)]
- **test,doc**: clarify wildcard usage (RafaelGSS)
[nodejs-private/node-private#517](https://togithub.com/nodejs-private/node-private/pull/517)
- \[[`c213910aea`](https://togithub.com/nodejs/node/commit/c213910aea)]
- **zlib**: pause stream if outgoing buffer is full (Matteo Collina)
[nodejs-private/node-private#541](https://togithub.com/nodejs-private/node-private/pull/541)

###
[`v20.11.0`](https://togithub.com/nodejs/node/releases/tag/v20.11.0):
2024-01-09, Version 20.11.0 &#x27;Iron&#x27; (LTS), @&#8203;UlisesGascon

[Compare
Source](https://togithub.com/nodejs/node/compare/v20.10.0...v20.11.0)

##### Notable Changes

- \[[`833190fe7c`](https://togithub.com/nodejs/node/commit/833190fe7c)]
- **crypto**: update root certificates to NSS 3.95 (Node.js GitHub Bot)
[#&#8203;50805](https://togithub.com/nodejs/node/pull/50805)
- \[[`a541b78bdb`](https://togithub.com/nodejs/node/commit/a541b78bdb)]
- **doc**: add MrJithil to collaborators (Jithil P Ponnan)
[#&#8203;50666](https://togithub.com/nodejs/node/pull/50666)
- \[[`d4be8fad83`](https://togithub.com/nodejs/node/commit/d4be8fad83)]
- **doc**: add Ethan-Arrowood as a collaborator (Ethan Arrowood)
[#&#8203;50393](https://togithub.com/nodejs/node/pull/50393)
- \[[`c1a196c897`](https://togithub.com/nodejs/node/commit/c1a196c897)]
- **(SEMVER-MINOR)** **esm**: add import.meta.dirname and
import.meta.filename (James Sumners)
[#&#8203;48740](https://togithub.com/nodejs/node/pull/48740)
- \[[`aa3209b880`](https://togithub.com/nodejs/node/commit/aa3209b880)]
- **fs**: add c++ fast path for writeFileSync utf8 (CanadaHonk)
[#&#8203;49884](https://togithub.com/nodejs/node/pull/49884)
- \[[`8e886a2fff`](https://togithub.com/nodejs/node/commit/8e886a2fff)]
- **(SEMVER-MINOR)** **module**: remove useCustomLoadersIfPresent flag
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`21ab3c0f0b`](https://togithub.com/nodejs/node/commit/21ab3c0f0b)]
- **(SEMVER-MINOR)** **module**: bootstrap module loaders in shadow
realm (Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`29d91b13e3`](https://togithub.com/nodejs/node/commit/29d91b13e3)]
- **(SEMVER-MINOR)** **src**: add `--disable-warning` option (Ethan
Arrowood) [#&#8203;50661](https://togithub.com/nodejs/node/pull/50661)
- \[[`11b3e470db`](https://togithub.com/nodejs/node/commit/11b3e470db)]
- **(SEMVER-MINOR)** **src**: create per isolate proxy env template
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`621c4d66c2`](https://togithub.com/nodejs/node/commit/621c4d66c2)]
- **(SEMVER-MINOR)** **src**: make process binding data weak (Chengzhong
Wu) [#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`139d6c8d3b`](https://togithub.com/nodejs/node/commit/139d6c8d3b)]
- **stream**: use Array for Readable buffer (Robert Nagy)
[#&#8203;50341](https://togithub.com/nodejs/node/pull/50341)
- \[[`6206957e8d`](https://togithub.com/nodejs/node/commit/6206957e8d)]
- **stream**: optimize creation (Robert Nagy)
[#&#8203;50337](https://togithub.com/nodejs/node/pull/50337)
- \[[`e64378643d`](https://togithub.com/nodejs/node/commit/e64378643d)]
- **(SEMVER-MINOR)** **test_runner**: adds built in lcov reporter (Phil
Nash) [#&#8203;50018](https://togithub.com/nodejs/node/pull/50018)
- \[[`4a830c2d9d`](https://togithub.com/nodejs/node/commit/4a830c2d9d)]
- **(SEMVER-MINOR)** **test_runner**: add Date to the supported mock
APIs (Lucas Santos)
[#&#8203;48638](https://togithub.com/nodejs/node/pull/48638)
- \[[`842dc01def`](https://togithub.com/nodejs/node/commit/842dc01def)]
- **(SEMVER-MINOR)** **test_runner, cli**: add --test-timeout flag
(Shubham Pandey)
[#&#8203;50443](https://togithub.com/nodejs/node/pull/50443)

##### Commits

- \[[`e40a559ab1`](https://togithub.com/nodejs/node/commit/e40a559ab1)]
- **benchmark**: update iterations in benchmark/util/splice-one.js (Liu
Jia) [#&#8203;50698](https://togithub.com/nodejs/node/pull/50698)
- \[[`00f7a5d26f`](https://togithub.com/nodejs/node/commit/00f7a5d26f)]
- **benchmark**: increase the iteration number to an appropriate value
(Lei Shi) [#&#8203;50766](https://togithub.com/nodejs/node/pull/50766)
- \[[`be6ad3f375`](https://togithub.com/nodejs/node/commit/be6ad3f375)]
- **benchmark**: rewrite import.meta benchmark (Joyee Cheung)
[#&#8203;50683](https://togithub.com/nodejs/node/pull/50683)
- \[[`9857364129`](https://togithub.com/nodejs/node/commit/9857364129)]
- **benchmark**: add misc/startup-cli-version benchmark (Joyee Cheung)
[#&#8203;50684](https://togithub.com/nodejs/node/pull/50684)
- \[[`22d729e7f5`](https://togithub.com/nodejs/node/commit/22d729e7f5)]
- **benchmark**: remove punycode from require-builtins fixture (Joyee
Cheung) [#&#8203;50689](https://togithub.com/nodejs/node/pull/50689)
- \[[`4cf10a149a`](https://togithub.com/nodejs/node/commit/4cf10a149a)]
- **benchmark**: change iterations in
benchmark/es/string-concatenations.js (Liu Jia)
[#&#8203;50585](https://togithub.com/nodejs/node/pull/50585)
- \[[`15c2ed93a8`](https://togithub.com/nodejs/node/commit/15c2ed93a8)]
- **benchmark**: add benchmarks for encodings (Aras Abbasi)
[#&#8203;50348](https://togithub.com/nodejs/node/pull/50348)
- \[[`8a896428ca`](https://togithub.com/nodejs/node/commit/8a896428ca)]
- **benchmark**: add more cases to Readable.from (Raz Luvaton)
[#&#8203;50351](https://togithub.com/nodejs/node/pull/50351)
- \[[`dbe6c5f354`](https://togithub.com/nodejs/node/commit/dbe6c5f354)]
- **benchmark**: skip test-benchmark-os on IBMi (Michael Dawson)
[#&#8203;50286](https://togithub.com/nodejs/node/pull/50286)
- \[[`179b4b6e62`](https://togithub.com/nodejs/node/commit/179b4b6e62)]
- **benchmark**: move permission-fs-read to
permission-processhas-fs-read (Aki Hasegawa-Johnson)
[#&#8203;49770](https://togithub.com/nodejs/node/pull/49770)
- \[[`32d65c001d`](https://togithub.com/nodejs/node/commit/32d65c001d)]
- **buffer**: improve Buffer.equals performance (kylo5aby)
[#&#8203;50621](https://togithub.com/nodejs/node/pull/50621)
- \[[`80ea83757e`](https://togithub.com/nodejs/node/commit/80ea83757e)]
- **build**: add GN configurations for simdjson (Cheng Zhao)
[#&#8203;50831](https://togithub.com/nodejs/node/pull/50831)
- \[[`904e645bcd`](https://togithub.com/nodejs/node/commit/904e645bcd)]
- **build**: add configuration flag to enable Maglev (Keyhan Vakil)
[#&#8203;50692](https://togithub.com/nodejs/node/pull/50692)
- \[[`019efa8a5a`](https://togithub.com/nodejs/node/commit/019efa8a5a)]
- **build**: fix GN configuration for deps/base64 (Cheng Zhao)
[#&#8203;50696](https://togithub.com/nodejs/node/pull/50696)
- \[[`a645d5ac54`](https://togithub.com/nodejs/node/commit/a645d5ac54)]
- **build**: disable flag v8\_scriptormodule_legacy_lifetime (Chengzhong
Wu) [#&#8203;50616](https://togithub.com/nodejs/node/pull/50616)
- \[[`8705058b09`](https://togithub.com/nodejs/node/commit/8705058b09)]
- **build**: add GN build files (Cheng Zhao)
[#&#8203;47637](https://togithub.com/nodejs/node/pull/47637)
- \[[`0a5e9c12cf`](https://togithub.com/nodejs/node/commit/0a5e9c12cf)]
- **build**: fix build with Python 3.12 (Luigi Pinca)
[#&#8203;50582](https://togithub.com/nodejs/node/pull/50582)
- \[[`ff5713dd43`](https://togithub.com/nodejs/node/commit/ff5713dd43)]
- **build**: support Python 3.12 (Shi Pujin)
[#&#8203;50209](https://togithub.com/nodejs/node/pull/50209)
- \[[`cfd50f229a`](https://togithub.com/nodejs/node/commit/cfd50f229a)]
- **build**: fix building when there is only python3 (Cheng Zhao)
[#&#8203;48462](https://togithub.com/nodejs/node/pull/48462)
- \[[`833190fe7c`](https://togithub.com/nodejs/node/commit/833190fe7c)]
- **crypto**: update root certificates to NSS 3.95 (Node.js GitHub Bot)
[#&#8203;50805](https://togithub.com/nodejs/node/pull/50805)
- \[[`54c46dae9e`](https://togithub.com/nodejs/node/commit/54c46dae9e)]
- **deps**: update zlib to 1.2.13.1-motley-5daffc7 (Node.js GitHub Bot)
[#&#8203;50803](https://togithub.com/nodejs/node/pull/50803)
- \[[`0be84e5a28`](https://togithub.com/nodejs/node/commit/0be84e5a28)]
- **deps**: update undici to 5.27.2 (Node.js GitHub Bot)
[#&#8203;50813](https://togithub.com/nodejs/node/pull/50813)
- \[[`ec67890824`](https://togithub.com/nodejs/node/commit/ec67890824)]
- **deps**: V8: cherry-pick
[`0f9ebbc`](https://togithub.com/nodejs/node/commit/0f9ebbc672c7)
(Chengzhong Wu)
[#&#8203;50867](https://togithub.com/nodejs/node/pull/50867)
- \[[`bc2ebb972b`](https://togithub.com/nodejs/node/commit/bc2ebb972b)]
- **deps**: V8: cherry-pick
[`13192d6`](https://togithub.com/nodejs/node/commit/13192d6e10fa) (Levi
Zim) [#&#8203;50552](https://togithub.com/nodejs/node/pull/50552)
- \[[`656135d70a`](https://togithub.com/nodejs/node/commit/656135d70a)]
- **deps**: update zlib to 1.2.13.1-motley-dfc48fc (Node.js GitHub Bot)
[#&#8203;50456](https://togithub.com/nodejs/node/pull/50456)
- \[[`41ee4bcc5d`](https://togithub.com/nodejs/node/commit/41ee4bcc5d)]
- **deps**: update ada to 2.7.4 (Node.js GitHub Bot)
[#&#8203;50815](https://togithub.com/nodejs/node/pull/50815)
- \[[`a40948b5c5`](https://togithub.com/nodejs/node/commit/a40948b5c5)]
- **deps**: update minimatch to 9.0.3 (Node.js GitHub Bot)
[#&#8203;50806](https://togithub.com/nodejs/node/pull/50806)
- \[[`7be1222c4a`](https://togithub.com/nodejs/node/commit/7be1222c4a)]
- **deps**: update simdutf to 4.0.4 (Node.js GitHub Bot)
[#&#8203;50772](https://togithub.com/nodejs/node/pull/50772)
- \[[`68e7d49db6`](https://togithub.com/nodejs/node/commit/68e7d49db6)]
- **deps**: upgrade npm to 10.2.4 (npm team)
[#&#8203;50751](https://togithub.com/nodejs/node/pull/50751)
- \[[`3d82d38336`](https://togithub.com/nodejs/node/commit/3d82d38336)]
- **deps**: escape Python strings correctly (Michaël Zasso)
[#&#8203;50695](https://togithub.com/nodejs/node/pull/50695)
- \[[`d3870ac957`](https://togithub.com/nodejs/node/commit/d3870ac957)]
- **deps**: update base64 to 0.5.1 (Node.js GitHub Bot)
[#&#8203;50629](https://togithub.com/nodejs/node/pull/50629)
- \[[`4b219b6ece`](https://togithub.com/nodejs/node/commit/4b219b6ece)]
- **deps**: update corepack to 0.23.0 (Node.js GitHub Bot)
[#&#8203;50563](https://togithub.com/nodejs/node/pull/50563)
- \[[`6c41b50922`](https://togithub.com/nodejs/node/commit/6c41b50922)]
- **deps**: update nghttp2 to 1.58.0 (Node.js GitHub Bot)
[#&#8203;50441](https://togithub.com/nodejs/node/pull/50441)
- \[[`3beee0ae8f`](https://togithub.com/nodejs/node/commit/3beee0ae8f)]
- **deps**: update acorn to 8.11.2 (Node.js GitHub Bot)
[#&#8203;50460](https://togithub.com/nodejs/node/pull/50460)
- \[[`220916fa93`](https://togithub.com/nodejs/node/commit/220916fa93)]
- **deps**: update undici to 5.27.0 (Node.js GitHub Bot)
[#&#8203;50463](https://togithub.com/nodejs/node/pull/50463)
- \[[`f9960b3545`](https://togithub.com/nodejs/node/commit/f9960b3545)]
- **deps**: update googletest to
[`116b7e5`](https://togithub.com/nodejs/node/commit/116b7e5) (Node.js
GitHub Bot) [#&#8203;50324](https://togithub.com/nodejs/node/pull/50324)
- \[[`d5c16f897a`](https://togithub.com/nodejs/node/commit/d5c16f897a)]
- **dns**: call handle.setServers() with a valid array (Luigi Pinca)
[#&#8203;50811](https://togithub.com/nodejs/node/pull/50811)
- \[[`1bd6537c97`](https://togithub.com/nodejs/node/commit/1bd6537c97)]
- **doc**: recommend supported Python versions (Luigi Pinca)
[#&#8203;50407](https://togithub.com/nodejs/node/pull/50407)
- \[[`402e257520`](https://togithub.com/nodejs/node/commit/402e257520)]
- **doc**: update notable changes in v21.1.0 (Joyee Cheung)
[#&#8203;50388](https://togithub.com/nodejs/node/pull/50388)
- \[[`032535e270`](https://togithub.com/nodejs/node/commit/032535e270)]
- **doc**: make theme consistent across api and other docs (Dima
Demakov) [#&#8203;50877](https://togithub.com/nodejs/node/pull/50877)
- \[[`d53842683f`](https://togithub.com/nodejs/node/commit/d53842683f)]
- **doc**: add a section regarding `instanceof` in `primordials.md`
(Antoine du Hamel)
[#&#8203;50874](https://togithub.com/nodejs/node/pull/50874)
- \[[`fe315055a7`](https://togithub.com/nodejs/node/commit/fe315055a7)]
- **doc**: update email to reflect affiliation (Yagiz Nizipli)
[#&#8203;50856](https://togithub.com/nodejs/node/pull/50856)
- \[[`e14f661950`](https://togithub.com/nodejs/node/commit/e14f661950)]
- **doc**: shard not supported with watch mode (Pulkit Gupta)
[#&#8203;50640](https://togithub.com/nodejs/node/pull/50640)
- \[[`b3d015de71`](https://togithub.com/nodejs/node/commit/b3d015de71)]
- **doc**: get rid of unnecessary `eslint-skip` comments (Antoine du
Hamel) [#&#8203;50829](https://togithub.com/nodejs/node/pull/50829)
- \[[`168cbf9cb9`](https://togithub.com/nodejs/node/commit/168cbf9cb9)]
- **doc**: create deprecation code for isWebAssemblyCompiledModule
(Marco Ippolito)
[#&#8203;50486](https://togithub.com/nodejs/node/pull/50486)
- \[[`30baacba41`](https://togithub.com/nodejs/node/commit/30baacba41)]
- **doc**: add CanadaHonk to triagers (CanadaHonk)
[#&#8203;50848](https://togithub.com/nodejs/node/pull/50848)
- \[[`e6e7cbceac`](https://togithub.com/nodejs/node/commit/e6e7cbceac)]
- **doc**: fix typos in --allow-fs-\* (Tobias Nießen)
[#&#8203;50845](https://togithub.com/nodejs/node/pull/50845)
- \[[`e22ce9586f`](https://togithub.com/nodejs/node/commit/e22ce9586f)]
- **doc**: update Crypto API doc for x509.keyUsage (Daniel Meechan)
[#&#8203;50603](https://togithub.com/nodejs/node/pull/50603)
- \[[`549d4422b7`](https://togithub.com/nodejs/node/commit/549d4422b7)]
- **doc**: fix fs.writeFileSync return value documentation (Ryan
Zimmerman) [#&#8203;50760](https://togithub.com/nodejs/node/pull/50760)
- \[[`3c79e3cdba`](https://togithub.com/nodejs/node/commit/3c79e3cdba)]
- **doc**: update print results(detail) in `PerformanceEntry` (Jungku
Lee) [#&#8203;50723](https://togithub.com/nodejs/node/pull/50723)
- \[[`aeaf96d06e`](https://togithub.com/nodejs/node/commit/aeaf96d06e)]
- **doc**: fix `Buffer.allocUnsafe` documentation (Mert Can Altın)
[#&#8203;50686](https://togithub.com/nodejs/node/pull/50686)
- \[[`347e1dd06a`](https://togithub.com/nodejs/node/commit/347e1dd06a)]
- **doc**: run license-builder (github-actions\[bot])
[#&#8203;50691](https://togithub.com/nodejs/node/pull/50691)
- \[[`a541b78bdb`](https://togithub.com/nodejs/node/commit/a541b78bdb)]
- **doc**: add MrJithil to collaborators (Jithil P Ponnan)
[#&#8203;50666](https://togithub.com/nodejs/node/pull/50666)
- \[[`90f415dd61`](https://togithub.com/nodejs/node/commit/90f415dd61)]
- **doc**: fix typo in fs.md (fwio)
[#&#8203;50570](https://togithub.com/nodejs/node/pull/50570)
- \[[`e2388151ba`](https://togithub.com/nodejs/node/commit/e2388151ba)]
- **doc**: add missing description of argument in `subtle.encrypt`
(Deokjin Kim)
[#&#8203;50578](https://togithub.com/nodejs/node/pull/50578)
- \[[`39cc013465`](https://togithub.com/nodejs/node/commit/39cc013465)]
- **doc**: update pm documentation to include resource (Ranieri
Innocenti Spada)
[#&#8203;50601](https://togithub.com/nodejs/node/pull/50601)
- \[[`ba6d427c23`](https://togithub.com/nodejs/node/commit/ba6d427c23)]
- **doc**: correct attribution in v20.6.0 changelog (Jacob Smith)
[#&#8203;50564](https://togithub.com/nodejs/node/pull/50564)
- \[[`1b2dab8254`](https://togithub.com/nodejs/node/commit/1b2dab8254)]
- **doc**: update to align `console.table` row to the left (Jungku Lee)
[#&#8203;50553](https://togithub.com/nodejs/node/pull/50553)
- \[[`5d48ef7778`](https://togithub.com/nodejs/node/commit/5d48ef7778)]
- **doc**: underline links (Rich Trott)
[#&#8203;50481](https://togithub.com/nodejs/node/pull/50481)
- \[[`5e6057c9d2`](https://togithub.com/nodejs/node/commit/5e6057c9d2)]
- **doc**: remove duplicate word (Gerhard Stöbich)
[#&#8203;50475](https://togithub.com/nodejs/node/pull/50475)
- \[[`64bf2fd4ee`](https://togithub.com/nodejs/node/commit/64bf2fd4ee)]
- **doc**: fix typo in `webstreams.md` (André Santos)
[#&#8203;50426](https://togithub.com/nodejs/node/pull/50426)
- \[[`cca55b8414`](https://togithub.com/nodejs/node/commit/cca55b8414)]
- **doc**: add information about Node-API versions >=9 (Michael Dawson)
[#&#8203;50168](https://togithub.com/nodejs/node/pull/50168)
- \[[`d4be8fad83`](https://togithub.com/nodejs/node/commit/d4be8fad83)]
- **doc**: add Ethan-Arrowood as a collaborator (Ethan Arrowood)
[#&#8203;50393](https://togithub.com/nodejs/node/pull/50393)
- \[[`0b311838f6`](https://togithub.com/nodejs/node/commit/0b311838f6)]
- **doc**: fix TOC in `releases.md` (Bryce Seefieldt)
[#&#8203;50372](https://togithub.com/nodejs/node/pull/50372)
- \[[`843d5f84ca`](https://togithub.com/nodejs/node/commit/843d5f84ca)]
- **esm**: fallback to `getSource` when `load` returns nullish `source`
(Antoine du Hamel)
[#&#8203;50825](https://togithub.com/nodejs/node/pull/50825)
- \[[`8d5469c84b`](https://togithub.com/nodejs/node/commit/8d5469c84b)]
- **esm**: do not call `getSource` when format is `commonjs` (Francesco
Trotta) [#&#8203;50465](https://togithub.com/nodejs/node/pull/50465)
- \[[`b48cf314d3`](https://togithub.com/nodejs/node/commit/b48cf314d3)]
- **esm**: bypass CJS loader in default load under
`--default-type=module` (Antoine du Hamel)
[#&#8203;50004](https://togithub.com/nodejs/node/pull/50004)
- \[[`c1a196c897`](https://togithub.com/nodejs/node/commit/c1a196c897)]
- **(SEMVER-MINOR)** **esm**: add import.meta.dirname and
import.meta.filename (James Sumners)
[#&#8203;48740](https://togithub.com/nodejs/node/pull/48740)
- \[[`435f9c9276`](https://togithub.com/nodejs/node/commit/435f9c9276)]
- **fs**: use default w flag for writeFileSync with utf8 encoding
(Murilo Kakazu)
[#&#8203;50990](https://togithub.com/nodejs/node/pull/50990)
- \[[`aa3209b880`](https://togithub.com/nodejs/node/commit/aa3209b880)]
- **fs**: add c++ fast path for writeFileSync utf8 (CanadaHonk)
[#&#8203;49884](https://togithub.com/nodejs/node/pull/49884)
- \[[`05e25e0230`](https://togithub.com/nodejs/node/commit/05e25e0230)]
- **fs**: improve error perf of sync `lstat`+`fstat` (CanadaHonk)
[#&#8203;49868](https://togithub.com/nodejs/node/pull/49868)
- \[[`f94a24cb4b`](https://togithub.com/nodejs/node/commit/f94a24cb4b)]
- **fs**: improve error performance for `rmdirSync` (CanadaHonk)
[#&#8203;49846](https://togithub.com/nodejs/node/pull/49846)
- \[[`cada22e2a4`](https://togithub.com/nodejs/node/commit/cada22e2a4)]
- **fs**: fix to not return for void function (Jungku Lee)
[#&#8203;50769](https://togithub.com/nodejs/node/pull/50769)
- \[[`ba40b2e33e`](https://togithub.com/nodejs/node/commit/ba40b2e33e)]
- **fs**: replace deprecated `path._makeLong` in copyFile (CanadaHonk)
[#&#8203;50844](https://togithub.com/nodejs/node/pull/50844)
- \[[`d1b6bd660a`](https://togithub.com/nodejs/node/commit/d1b6bd660a)]
- **fs**: update param in jsdoc for `readdir` (Jungku Lee)
[#&#8203;50448](https://togithub.com/nodejs/node/pull/50448)
- \[[`11412e863a`](https://togithub.com/nodejs/node/commit/11412e863a)]
- **fs**: do not throw error on cpSync internals (Yagiz Nizipli)
[#&#8203;50185](https://togithub.com/nodejs/node/pull/50185)
- \[[`868a464c15`](https://togithub.com/nodejs/node/commit/868a464c15)]
- **fs,url**: move `FromNamespacedPath` to `node_url` (Yagiz Nizipli)
[#&#8203;50090](https://togithub.com/nodejs/node/pull/50090)
- \[[`de7fe08c7b`](https://togithub.com/nodejs/node/commit/de7fe08c7b)]
- **fs,url**: refactor `FileURLToPath` method (Yagiz Nizipli)
[#&#8203;50090](https://togithub.com/nodejs/node/pull/50090)
- \[[`186e6e0395`](https://togithub.com/nodejs/node/commit/186e6e0395)]
- **fs,url**: move `FileURLToPath` to node_url (Yagiz Nizipli)
[#&#8203;50090](https://togithub.com/nodejs/node/pull/50090)
- \[[`aea7fe54af`](https://togithub.com/nodejs/node/commit/aea7fe54af)]
- **inspector**: use private fields instead of symbols (Yagiz Nizipli)
[#&#8203;50776](https://togithub.com/nodejs/node/pull/50776)
- \[[`48dbde71d8`](https://togithub.com/nodejs/node/commit/48dbde71d8)]
- **lib**: use primordials for navigator.userAgent (Aras Abbasi)
[#&#8203;50467](https://togithub.com/nodejs/node/pull/50467)
- \[[`fa220cac87`](https://togithub.com/nodejs/node/commit/fa220cac87)]
- **lib**: remove deprecated string methods (Jithil P Ponnan)
[#&#8203;50592](https://togithub.com/nodejs/node/pull/50592)
- \[[`f1cf1c385f`](https://togithub.com/nodejs/node/commit/f1cf1c385f)]
- **lib**: fix assert shows diff messages in ESM and CJS (Jithil P
Ponnan) [#&#8203;50634](https://togithub.com/nodejs/node/pull/50634)
- \[[`3844af288f`](https://togithub.com/nodejs/node/commit/3844af288f)]
- **lib**: make event static properties non writable and configurable
(Muthukumar)
[#&#8203;50425](https://togithub.com/nodejs/node/pull/50425)
- \[[`0a0b416d6c`](https://togithub.com/nodejs/node/commit/0a0b416d6c)]
- **lib**: avoid memory allocation on nodeprecation flag (Vinicius
Lourenço) [#&#8203;50231](https://togithub.com/nodejs/node/pull/50231)
- \[[`e7551d5770`](https://togithub.com/nodejs/node/commit/e7551d5770)]
- **lib**: align console.table row to the left (Jithil P Ponnan)
[#&#8203;50135](https://togithub.com/nodejs/node/pull/50135)
- \[[`0c85cebdf2`](https://togithub.com/nodejs/node/commit/0c85cebdf2)]
- **meta**: clarify nomination process according to Node.js charter
(Matteo Collina)
[#&#8203;50834](https://togithub.com/nodejs/node/pull/50834)
- \[[`f4070dd8d4`](https://togithub.com/nodejs/node/commit/f4070dd8d4)]
- **meta**: clarify recommendation for bug reproductions (Antoine du
Hamel) [#&#8203;50882](https://togithub.com/nodejs/node/pull/50882)
- \[[`2ddeead436`](https://togithub.com/nodejs/node/commit/2ddeead436)]
- **meta**: move cjihrig to TSC regular member (Colin Ihrig)
[#&#8203;50816](https://togithub.com/nodejs/node/pull/50816)
- \[[`34a789d9be`](https://togithub.com/nodejs/node/commit/34a789d9be)]
- **meta**: add web-standards as WPTs owner (Filip Skokan)
[#&#8203;50636](https://togithub.com/nodejs/node/pull/50636)
- \[[`40bbffa266`](https://togithub.com/nodejs/node/commit/40bbffa266)]
- **meta**: bump github/codeql-action from 2.21.9 to 2.22.5
(dependabot\[bot])
[#&#8203;50513](https://togithub.com/nodejs/node/pull/50513)
- \[[`c49553631d`](https://togithub.com/nodejs/node/commit/c49553631d)]
- **meta**: bump step-security/harden-runner from 2.5.1 to 2.6.0
(dependabot\[bot])
[#&#8203;50512](https://togithub.com/nodejs/node/pull/50512)
- \[[`99df0138b0`](https://togithub.com/nodejs/node/commit/99df0138b0)]
- **meta**: bump ossf/scorecard-action from 2.2.0 to 2.3.1
(dependabot\[bot])
[#&#8203;50509](https://togithub.com/nodejs/node/pull/50509)
- \[[`9db6227ac6`](https://togithub.com/nodejs/node/commit/9db6227ac6)]
- **meta**: fix spacing in collaborator list (Antoine du Hamel)
[#&#8203;50641](https://togithub.com/nodejs/node/pull/50641)
- \[[`2589a5a566`](https://togithub.com/nodejs/node/commit/2589a5a566)]
- **meta**: bump actions/setup-python from 4.7.0 to 4.7.1
(dependabot\[bot])
[#&#8203;50510](https://togithub.com/nodejs/node/pull/50510)
- \[[`5a86661a95`](https://togithub.com/nodejs/node/commit/5a86661a95)]
- **meta**: add crypto as crypto and webcrypto docs owner (Filip Skokan)
[#&#8203;50579](https://togithub.com/nodejs/node/pull/50579)
- \[[`ac8d2b9cc2`](https://togithub.com/nodejs/node/commit/ac8d2b9cc2)]
- **meta**: bump actions/setup-node from 3.8.1 to 4.0.0
(dependabot\[bot])
[#&#8203;50514](https://togithub.com/nodejs/node/pull/50514)
- \[[`bee2c0cf11`](https://togithub.com/nodejs/node/commit/bee2c0cf11)]
- **meta**: bump actions/checkout from 4.1.0 to 4.1.1 (dependabot\[bot])
[#&#8203;50511](https://togithub.com/nodejs/node/pull/50511)
- \[[`91a0944e5f`](https://togithub.com/nodejs/node/commit/91a0944e5f)]
- **meta**: add <[email protected]> to mailmap (Ethan Arrowood)
[#&#8203;50491](https://togithub.com/nodejs/node/pull/50491)
- \[[`8d3cf8c4ee`](https://togithub.com/nodejs/node/commit/8d3cf8c4ee)]
- **meta**: add web-standards as web api visibility owner (Chengzhong
Wu) [#&#8203;50418](https://togithub.com/nodejs/node/pull/50418)
- \[[`807c12de36`](https://togithub.com/nodejs/node/commit/807c12de36)]
- **meta**: mention other notable changes section (Rafael Gonzaga)
[#&#8203;50309](https://togithub.com/nodejs/node/pull/50309)
- \[[`21ab3c0f0b`](https://togithub.com/nodejs/node/commit/21ab3c0f0b)]
- **(SEMVER-MINOR)** **module**: bootstrap module loaders in shadow
realm (Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`8e886a2fff`](https://togithub.com/nodejs/node/commit/8e886a2fff)]
- **(SEMVER-MINOR)** **module**: remove useCustomLoadersIfPresent flag
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`77e8361213`](https://togithub.com/nodejs/node/commit/77e8361213)]
- **module**: execute `--import` sequentially (Antoine du Hamel)
[#&#8203;50474](https://togithub.com/nodejs/node/pull/50474)
- \[[`fffc4951ac`](https://togithub.com/nodejs/node/commit/fffc4951ac)]
- **module**: add application/json in accept header when fetching json
module (Marco Ippolito)
[#&#8203;50119](https://togithub.com/nodejs/node/pull/50119)
- \[[`f808e7a650`](https://togithub.com/nodejs/node/commit/f808e7a650)]
- **net**: check pipe mode and path (theanarkh)
[#&#8203;50770](https://togithub.com/nodejs/node/pull/50770)
- \[[`cf3a4c5b84`](https://togithub.com/nodejs/node/commit/cf3a4c5b84)]
- **node-api**: factor out common code into macros (Gabriel Schulhof)
[#&#8203;50664](https://togithub.com/nodejs/node/pull/50664)
- \[[`a7d8f6b529`](https://togithub.com/nodejs/node/commit/a7d8f6b529)]
- **perf_hooks**: implement performance.now() with fast API calls (Joyee
Cheung) [#&#8203;50492](https://togithub.com/nodejs/node/pull/50492)
- \[[`076dc7540b`](https://togithub.com/nodejs/node/commit/076dc7540b)]
- **permission**: do not create symlinks if target is relative (Tobias
Nießen) [#&#8203;49156](https://togithub.com/nodejs/node/pull/49156)
- \[[`43160dcd2d`](https://togithub.com/nodejs/node/commit/43160dcd2d)]
- **permission**: mark const functions as such (Tobias Nießen)
[#&#8203;50705](https://togithub.com/nodejs/node/pull/50705)
- \[[`7a661d7ad9`](https://togithub.com/nodejs/node/commit/7a661d7ad9)]
- **permission**: address coverity warning (Michael Dawson)
[#&#8203;50215](https://togithub.com/nodejs/node/pull/50215)
- \[[`b2b4132c3e`](https://togithub.com/nodejs/node/commit/b2b4132c3e)]
- **src**: iterate on import attributes array correctly (Michaël Zasso)
[#&#8203;50703](https://togithub.com/nodejs/node/pull/50703)
- \[[`11b3e470db`](https://togithub.com/nodejs/node/commit/11b3e470db)]
- **(SEMVER-MINOR)** **src**: create per isolate proxy env template
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`d00412a083`](https://togithub.com/nodejs/node/commit/d00412a083)]
- **(SEMVER-MINOR)** **src**: create fs_dir per isolate properties
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`14cc3b9b90`](https://togithub.com/nodejs/node/commit/14cc3b9b90)]
- **(SEMVER-MINOR)** **src**: create worker per isolate properties
(Chengzhong Wu)
[#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`621c4d66c2`](https://togithub.com/nodejs/node/commit/621c4d66c2)]
- **(SEMVER-MINOR)** **src**: make process binding data weak (Chengzhong
Wu) [#&#8203;48655](https://togithub.com/nodejs/node/pull/48655)
- \[[`07a4e94e84`](https://togithub.com/nodejs/node/commit/07a4e94e84)]
- **src**: assert return value of BN_bn2binpad (Tobias Nießen)
[#&#8203;50860](https://togithub.com/nodejs/node/pull/50860)
- \[[`158db2d61e`](https://togithub.com/nodejs/node/commit/158db2d61e)]
- **src**: fix coverity warning (Michael Dawson)
[#&#8203;50846](https://togithub.com/nodejs/node/pull/50846)
- \[[`94363bb3fd`](https://togithub.com/nodejs/node/commit/94363bb3fd)]
- **src**: fix compatility with upcoming V8 12.1 APIs (Cheng Zhao)
[#&#8203;50709](https://togithub.com/nodejs/node/pull/50709)
- \[[`29d91b13e3`](https://togithub.com/nodejs/node/commit/29d91b13e3)]
- **(SEMVER-MINOR)** **src**: add `--disable-warning` option (Ethan
Arrowood) [#&#8203;50661](https://togithub.com/nodejs/node/pull/50661)
- \[[`f054c337f8`](https://togithub.com/nodejs/node/commit/f054c337f8)]
- **src**: add IsolateScopes before using isolates (Keyhan Vakil)
[#&#8203;50680](https://togithub.com/nodejs/node/pull/50680)
- \[[`d08eb382cd`](https://togithub.com/nodejs/node/commit/d08eb382cd)]
- **src**: avoid copying strings in FSPermission::Apply (Tobias Nießen)
[#&#8203;50662](https://togithub.com/nodejs/node/pull/50662)
- \[[`6620df1c05`](https://togithub.com/nodejs/node/commit/6620df1c05)]
- **src**: remove erroneous default argument in RadixTree (Tobias
Nießen) [#&#8203;50736](https://togithub.com/nodejs/node/pull/50736)
- \[[`436c3aef15`](https://togithub.com/nodejs/node/commit/436c3aef15)]
- **src**: fix JSONParser leaking internal V8 scopes (Keyhan Vakil)
[#&#8203;50688](https://togithub.com/nodejs/node/pull/50688)
- \[[`6f46d31018`](https://togithub.com/nodejs/node/commit/6f46d31018)]
- **src**: return error --env-file if file is not found (Ardi Nugraha)
[#&#8203;50588](https://togithub.com/nodejs/node/pull/50588)
- \[[`3d43fd359c`](https://togithub.com/nodejs/node/commit/3d43fd359c)]
- **src**: avoid silent coercion to signed/unsigned int (Tobias Nießen)
[#&#8203;50663](https://togithub.com/nodejs/node/pull/50663)
- \[[`c253e39b56`](https://togithub.com/nodejs/node/commit/c253e39b56)]
- **src**: handle errors from uv_pipe_connect2() (Deokjin Kim)
[#&#8203;50657](https://togithub.com/nodejs/node/pull/50657)
- \[[`3a9713bb5a`](https://togithub.com/nodejs/node/commit/3a9713bb5a)]
- **src**: use v8::Isolate::TryGetCurrent() in DumpJavaScriptBacktrace()
(Joyee Cheung)
[#&#8203;50518](https://togithub.com/nodejs/node/pull/50518)
- \[[`94f8a925a8`](https://togithub.com/nodejs/node/commit/94f8a925a8)]
- **src**: print more information in C++ assertions (Joyee Cheung)
[#&#8203;50242](https://togithub.com/nodejs/node/pull/50242)
- \[[`23f830616b`](https://togithub.com/nodejs/node/commit/23f830616b)]
- **src**: hide node::credentials::HasOnly outside unit (Tobias Nießen)
[#&#8203;50450](https://togithub.com/nodejs/node/pull/50450)
- \[[`b7ecb0a390`](https://togithub.com/nodejs/node/commit/b7ecb0a390)]
- **src**: readiterable entries may be empty (Matthew Aitken)
[#&#8203;50398](https://togithub.com/nodejs/node/pull/50398)
- \[[`4ef1d68715`](https://togithub.com/nodejs/node/commit/4ef1d68715)]
- **src**: implement structuredClone in native (Joyee Cheung)
[#&#8203;50330](https://togithub.com/nodejs/node/pull/50330)
- \[[`9346f15138`](https://togithub.com/nodejs/node/commit/9346f15138)]
- **src**: use find instead of char-by-char in FromFilePath() (Daniel
Lemire) [#&#8203;50288](https://togithub.com/nodejs/node/pull/50288)
- \[[`8414fb4d2a`](https://togithub.com/nodejs/node/commit/8414fb4d2a)]
- **src**: add commit hash shorthand in zlib version (Jithil P Ponnan)
[#&#8203;50158](https://togithub.com/nodejs/node/pull/50158)
- \[[`a878e3abb0`](https://togithub.com/nodejs/node/commit/a878e3abb0)]
- **stream**: fix enumerability of ReadableStream.from (Mattias Buelens)
[#&#8203;50779](https://togithub.com/nodejs/node/pull/50779)
- \[[`95ed4ffc1e`](https://togithub.com/nodejs/node/commit/95ed4ffc1e)]
- **stream**: fix enumerability of ReadableStream.prototype.values
(Mattias Buelens)
[#&#8203;50779](https://togithub.com/nodejs/node/pull/50779)
- \[[`4cf155ca0c`](https://togithub.com/nodejs/node/commit/4cf155ca0c)]
- **stream**: add Symbol.toStringTag to Compression Streams (Filip
Skokan) [#&#8203;50712](https://togithub.com/nodejs/node/pull/50712)
- \[[`6012e3e781`](https://togithub.com/nodejs/node/commit/6012e3e781)]
- **stream**: fix Writable.destroy performance regression (Robert Nagy)
[#&#8203;50478](https://togithub.com/nodejs/node/pull/50478)
- \[[`dd5206820c`](https://togithub.com/nodejs/node/commit/dd5206820c)]
- **stream**: pre-allocate \_events (Robert Nagy)
[#&#8203;50428](https://togithub.com/nodejs/node/pull/50428)
- \[[`829b82ed0f`](https://togithub.com/nodejs/node/commit/829b82ed0f)]
- **stream**: remove no longer relevant comment (Robert Nagy)
[#&#8203;50446](https://togithub.com/nodejs/node/pull/50446)
- \[[`98ae1b4132`](https://togithub.com/nodejs/node/commit/98ae1b4132)]
- **stream**: use bit fields for construct/destroy (Robert Nagy)
[#&#8203;50408](https://togithub.com/nodejs/node/pull/50408)
- \[[`08a0c6c56c`](https://togithub.com/nodejs/node/commit/08a0c6c56c)]
- **stream**: improve from perf (Raz Luvaton)
[#&#8203;50359](https://togithub.com/nodejs/node/pull/50359)
- \[[`59f7316b8f`](https://togithub.com/nodejs/node/commit/59f7316b8f)]
- **stream**: avoid calls to listenerCount (Robert Nagy)
[#&#8203;50357](https://togithub.com/nodejs/node/pull/50357)
- \[[`9d52430eb9`](https://togithub.com/nodejs/node/commit/9d52430eb9)]
- **stream**: readable use bitmap accessors (Robert Nagy)
[#&#8203;50350](https://togithub.com/nodejs/node/pull/50350)
- \[[`139d6c8d3b`](https://togithub.com/nodejs/node/commit/139d6c8d3b)]
- **stream**: use Array for Readable buffer (Robert Nagy)
[#&#8203;50341](https://togithub.com/nodejs/node/pull/50341)
- \[[`6206957e8d`](https://togithub.com/nodejs/node/commit/6206957e8d)]
- **stream**: optimize creation (Robert Nagy)
[#&#8203;50337](https://togithub.com/nodejs/node/pull/50337)
- \[[`f87921de3b`](https://togithub.com/nodejs/node/commit/f87921de3b)]
- **stream**: refactor writable \_write (Robert Nagy)
[#&#8203;50198](https://togithub.com/nodejs/node/pull/50198)
- \[[`b338f3d3c2`](https://togithub.com/nodejs/node/commit/b338f3d3c2)]
- **stream**: avoid getter for defaultEncoding (Robert Nagy)
[#&#8203;50203](https://togithub.com/nodejs/node/pull/50203)
- \[[`1862235a26`](https://togithub.com/nodejs/node/commit/1862235a26)]
- **test**: fix message v8 not normalising alphanumeric paths (Jithil P
Ponnan) [#&#8203;50730](https://togithub.com/nodejs/node/pull/50730)
- \[[`7c28a4ca8f`](https://togithub.com/nodejs/node/commit/7c28a4ca8f)]
- **test**: fix dns test case failures after c-ares update to 1.21.0+
(Brad House)
[#&#8203;50743](https://togithub.com/nodejs/node/pull/50743)
- \[[`4544593d31`](https://togithub.com/nodejs/node/commit/4544593d31)]
- **test**: replace forEach with for of (Conor Watson)
[#&#8203;50594](https://togithub.com/nodejs/node/pull/50594)
- \[[`96143a3293`](https://togithub.com/nodejs/node/commit/96143a3293)]
- **test**: replace forEach to for at
test-webcrypto-sign-verify-ecdsa.js (Alessandro Di Nisio)
[#&#8203;50795](https://togithub.com/nodejs/node/pull/50795)
- \[[`107b5e63c5`](https://togithub.com/nodejs/node/commit/107b5e63c5)]
- **test**: replace foreach with for in test-https-simple.js (Shikha
Mehta) [#&#8203;49793](https://togithub.com/nodejs/node/pull/49793)
- \[[`9b2e5e9db4`](https://togithub.com/nodejs/node/commit/9b2e5e9db4)]
- **test**: add note about unresolved spec issue (Mattias Buelens)
[#&#8203;50779](https://togithub.com/nodejs/node/pull/50779)
- \[[`edce637c1a`](https://togithub.com/nodejs/node/commit/edce637c1a)]
- **test**: add note about readable streams with type owning (Mattias
Buelens) [#&#8203;50779](https://togithub.com/nodejs/node/pull/50779)
- \[[`641044670b`](https://togithub.com/nodejs/node/commit/641044670b)]
- **test**: replace forEach with for-of in test-url-relative
(vitosorriso)
[#&#8203;50788](https://togithub.com/nodejs/node/pull/50788)
- \[[`75ee78438c`](https://togithub.com/nodejs/node/commit/75ee78438c)]
- **test**: replace forEach() with for ... of in test-tls-getprotocol.js
(Steve Goode)
[#&#8203;50600](https://togithub.com/nodejs/node/pull/50600)
- \[[`24f9d3fbeb`](https://togithub.com/nodejs/node/commit/24f9d3fbeb)]
- **test**: enable idlharness tests for encoding (Mattias Buelens)
[#&#8203;50778](https://togithub.com/nodejs/node/pull/50778)
- \[[`a9d290956e`](https://togithub.com/nodejs/node/commit/a9d290956e)]
- **test**: replace forEach in whatwg-encoding-custom-interop (Honza
Machala) [#&#8203;50607](https://togithub.com/nodejs/node/pull/50607)
- \[[`6584dd80f7`](https://togithub.com/nodejs/node/commit/6584dd80f7)]
- **test**: replace forEach() with for-loop (Jan)
[#&#8203;50596](https://togithub.com/nodejs/node/pull/50596)
- \[[`be54a22869`](https://togithub.com/nodejs/node/commit/be54a22869)]
- **test**: improve test-bootstrap-modules.js (Joyee Cheung)
[#&#8203;50708](https://togithub.com/nodejs/node/pull/50708)
- \[[`660e70e73b`](https://togithub.com/nodejs/node/commit/660e70e73b)]
- **test**: skip parallel/test-macos-app-sandbox if disk space < 120MB
(Joyee Cheung)
[#&#8203;50764](https://togithub.com/nodejs/node/pull/50764)
- \[[`5712c41122`](https://togithub.com/nodejs/node/commit/5712c41122)]
- **test**: replace foreach with for (Markus Muschol)
[#&#8203;50599](https://togithub.com/nodejs/node/pull/50599)
- \[[`49e5f47b1c`](https://togithub.com/nodejs/node/commit/49e5f47b1c)]
- **test**: test streambase has already has a consumer (Jithil P Ponnan)
[#&#8203;48059](https://togithub.com/nodejs/node/pull/48059)
- \[[`bb7d764c8e`](https://togithub.com/nodejs/node/commit/bb7d764c8e)]
- **test**: change forEach to for...of in path extname (Kyriakos
Markakis) [#&#8203;50667](https://togithub.com/nodejs/node/pull/50667)
- \[[`4d28ced079`](https://togithub.com/nodejs/node/commit/4d28ced079)]
- **test**: replace forEach with for...of (Ryan Williams)
[#&#8203;50611](https://togithub.com/nodejs/node/pull/50611)
- \[[`92a153ecde`](https://togithub.com/nodejs/node/commit/92a153ecde)]
- **test**: migrate message v8 tests from Python to JS (Joshua LeMay)
[#&#8203;50421](https://togithub.com/nodejs/node/pull/50421)
- \[[`a376284d8a`](https://togithub.com/nodejs/node/commit/a376284d8a)]
- **test**: use destructuring for accessing setting values (Honza
Jedlička) [#&#8203;50609](https://togithub.com/nodejs/node/pull/50609)
- \[[`7b9b1fba27`](https://togithub.com/nodejs/node/commit/7b9b1fba27)]
- **test**: replace forEach() with for .. of (Evgenia Blajer)
[#&#8203;50605](https://togithub.com/nodejs/node/pull/50605)
- \[[`9397b2da7e`](https://togithub.com/nodejs/node/commit/9397b2da7e)]
- **test**: replace forEach() with for ... of in test-readline-keys.js
(William Liang)
[#&#8203;50604](https://togithub.com/nodejs/node/pull/50604)
- \[[`9043ba4cfb`](https://togithub.com/nodejs/node/commit/9043ba4cfb)]
- **test**: replace forEach() with for ... of in
test-http2-single-headers.js (spiritualized)
[#&#8203;50606](https://togithub.com/nodejs/node/pull/50606)
- \[[`9f911d31f6`](https://togithub.com/nodejs/node/commit/9f911d31f6)]
- **test**: replace forEach with for of (john-mcinall)
[#&#8203;50602](https://togithub.com/nodejs/node/pull/50602)
- \[[`8a5f36fe74`](https://togithub.com/nodejs/node/commit/8a5f36fe74)]
- **test**: remove unused file (James Sumners)
[#&#8203;50528](https://togithub.com/nodejs/node/pull/50528)
- \[[`9950203340`](https://togithub.com/nodejs/node/commit/9950203340)]
- **test**: replace forEach with for of (Kevin Kühnemund)
[#&#8203;50597](https://togithub.com/nodejs/node/pull/50597)
- \[[`03ba28f102`](https://togithub.com/nodejs/node/commit/03ba28f102)]
- **test**: replace forEach with for of (CorrWu)
[#&#8203;49785](https://togithub.com/nodejs/node/pull/49785)
- \[[`ea61261b54`](https://togithub.com/nodejs/node/commit/ea61261b54)]
- **test**: replace forEach with for \[...] of (Gabriel Bota)
[#&#8203;50615](https://togithub.com/nodejs/node/pull/50615)
- \[[`4349790913`](https://togithub.com/nodejs/node/commit/4349790913)]
- **test**: add WPT report test duration (Filip Skokan)
[#&#8203;50574](https://togithub.com/nodejs/node/pull/50574)
- \[[`7cacddfcc1`](https://togithub.com/nodejs/node/commit/7cacddfcc1)]
- **test**: replace forEach() with for ... of loop in test-global.js
(Kajol) [#&#8203;49772](https://togithub.com/nodejs/node/pull/49772)
- \[[`889f58d07f`](https://togithub.com/nodejs/node/commit/889f58d07f)]
- **test**: skip test-diagnostics-channel-memory-leak.js (Joyee Cheung)
[#&#8203;50327](https://togithub.com/nodejs/node/pull/50327)
- \[[`41644ee071`](https://togithub.com/nodejs/node/commit/41644ee071)]
- **test**: improve `UV_THREADPOOL_SIZE` tests on `.env` (Yagiz Nizipli)
[#&#8203;49213](https://togithub.com/nodejs/node/pull/49213)
- \[[`1db44b9a53`](https://togithub.com/nodejs/node/commit/1db44b9a53)]
- **test**: recognize wpt completion error (Chengzhong Wu)
[#&#8203;50429](https://togithub.com/nodejs/node/pull/50429)
- \[[`ecfc951ddc`](https://togithub.com/nodejs/node/commit/ecfc951ddc)]
- **test**: report error wpt test results (Chengzhong Wu)
[#&#8203;50429](https://togithub.com/nodejs/node/pull/50429)
- \[[`deb0351d95`](https://togithub.com/nodejs/node/commit/deb0351d95)]
- **test**: replace forEach() with for...of (Ram)
[#&#8203;49794](https://togithub.com/nodejs/node/pull/49794)
- \[[`f885dfe5e3`](https://togithub.com/nodejs/node/commit/f885dfe5e3)]
- **test**: replace forEach() with for...of in test-trace-events-http
(Chand) [#&#8203;49795](https://togithub.com/nodejs/node/pull/49795)
- \[[`9dc63c56db`](https://togithub.com/nodejs/node/commit/9dc63c56db)]
- **test**: replace forEach with for...of in
test-fs-realpath-buffer-encoding (Niya Shiyas)
[#&#8203;49804](https://togithub.com/nodejs/node/pull/49804)
- \[[`600d1260da`](https://togithub.com/nodejs/node/commit/600d1260da)]
- **test**: fix timeout of test-cpu-prof-dir-worker.js in LoongArch
devices (Shi Pujin)
[#&#8203;50363](https://togithub.com/nodejs/node/pull/50363)
- \[[`099f5cfa0a`](https://togithub.com/nodejs/node/commit/099f5cfa0a)]
- **test**: fix vm assertion actual and expected order (Chengzhong Wu)
[#&#8203;50371](https://togithub.com/nodejs/node/pull/50371)
- \[[`a31f9bfe01`](https://togithub.com/nodejs/node/commit/a31f9bfe01)]
- **test**: v8: Add test-linux-perf-logger test suite (Luke Albao)
[#&#8203;50352](https://togithub.com/nodejs/node/pull/50352)
- \[[`6c59114947`](https://togithub.com/nodejs/node/commit/6c59114947)]
- **test**: ensure never settling promises are detected (Antoine du
Hamel) [#&#8203;50318](https://togithub.com/nodejs/node/pull/50318)
- \[[`9830ae4bf7`](https://togithub.com/nodejs/node/commit/9830ae4bf7)]
- **test_runner**: add tests for various mock timer issues (Mika
Fischer) [#&#8203;50384](https://togithub.com/nodejs/node/pull/50384)
- \[[`2c72ed85fb`](https://togithub.com/nodejs/node/commit/2c72ed85fb)]
- **test_runner**: pass abortSignal to test files (Moshe Atlow)
[#&#8203;50630](https://togithub.com/nodejs/node/pull/50630)
- \[[`c33a84af11`](https://togithub.com/nodejs/node/commit/c33a84af11)]
- **test_runner**: replace forEach with for of (Tom Haddad)
[#&#8203;50595](https://togithub.com/nodejs/node/pull/50595)
- \[[`29c68a22bb`](https://togithub.com/nodejs/node/commit/29c68a22bb)]
- **test_runner**: output errors of suites (Moshe Atlow)
[#&#8203;50361](https://togithub.com/nodejs/node/pull/50361)
- \[[`e64378643d`](https://togithub.com/nodejs/node/commit/e64378643d)]
- **(SEMVER-MINOR)** **test_runner**: adds built in lcov reporter (Phil
Nash) [#&#8203;50018](https://togithub.com/nodejs/node/pull/50018)
- \[[`4aaaff413b`](https://togithub.com/nodejs/node/commit/4aaaff413b)]
- **test_runner**: test return value of mocked promisified timers (Mika
Fischer) [#&#8203;50331](https://togithub.com/nodejs/node/pull/50331)
- \[[`4a830c2d9d`](https://togithub.com/nodejs/node/commit/4a830c2d9d)]
- **(SEMVER-MINOR)** **test_runner**: add Date to the supported mock
APIs (Lucas Santos)
[#&#8203;48638](https://togithub.com/nodejs/node/pull/48638)
- \[[`842dc01def`](https://togithub.com/nodejs/node/commit/842dc01def)]
- **(SEMVER-MINOR)** **test_runner, cli**: add --test-timeout flag
(Shubham Pandey)
[#&#8203;50443](https://togithub.com/nodejs/node/pull/50443)
- \[[`613a9072b7`](https://togithub.com/nodejs/node/commit/613a9072b7)]
- **tls**: fix order of setting cipher before setting cert and key
(Kumar Rishav)
[#&#8203;50186](https://togithub.com/nodejs/node/pull/50186)
- \[[`d905c61e16`](https://togithub.com/nodejs/node/commit/d905c61e16)]
- **tls**: use `validateFunction` for `options.SNICallback` (Deokjin
Kim) [#&#8203;50530](https://togithub.com/nodejs/node/pull/50530)
- \[[`c8d6dd58e7`](https://togithub.com/nodejs/node/commit/c8d6dd58e7)]
- **tools**: add macOS notarization verification step (Ulises Gascón)
[#&#8203;50833](https://togithub.com/nodejs/node/pull/50833)
- \[[`c9bd0b0c0f`](https://togithub.com/nodejs/node/commit/c9bd0b0c0f)]
- **tools**: use macOS keychain to notarize the releases (Ulises Gascón)
[#&#8203;50715](https://togithub.com/nodejs/node/pull/50715)
- \[[`932a5d7b2c`](https://togithub.com/nodejs/node/commit/932a5d7b2c)]
- **tools**: update eslint to 8.54.0 (Node.js GitHub Bot)
[#&#8203;50809](https://togithub.com/nodejs/node/pull/50809)
- \[[`d7114d97be`](https://togithub.com/nodejs/node/commit/d7114d97be)]
- **tools**: update lint-md-dependencies to [email protected] (Node.js GitHub
Bot) [#&#8203;50807](https://togithub.com/nodejs/node/pull/50807)
- \[[`93085cf844`](https://togithub.com/nodejs/node/commit/93085cf844)]
- **tools**: add workflow to update release links (Michaël Zasso)
[#&#8203;50710](https://togithub.com/nodejs/node/pull/50710)
- \[[`66764c5d04`](https://togithub.com/nodejs/node/commit/66764c5d04)]
- **tools**: recognize GN files in dep_updaters (Cheng Zhao)
[#&#8203;50693](https://togithub.com/nodejs/node/pull/50693)
- \[[`2a451e176a`](https://togithub.com/nodejs/node/commit/2a451e176a)]
- **tools**: remove unused file (Ulises Gascon)
[#&#8203;50622](https://togithub.com/nodejs/node/pull/50622)
- \[[`8ce6403230`](https://togithub.com/nodejs/node/commit/8ce6403230)]
- **tools**: change minimatch install strategy (Marco Ippolito)
[#&#8203;50476](https://togithub.com/nodejs/node/pull/50476)
- \[[`97778e2e77`](https://togithub.com/nodejs/node/commit/97778e2e77)]
- **tools**: update lint-md-dependencies to [email protected] (Node.js GitHub
Bot) [#&#8203;50675](https://togithub.com/nodejs/node/pull/50675)
- \[[`797f6a9ba8`](https://togithub.com/nodejs/node/commit/797f6a9ba8)]
- **tools**: add macOS notarization stapler (Ulises Gascón)
[#&#8203;50625](https://togithub.com/nodejs/node/pull/50625)
- \[[`8fa1319352`](https://togithub.com/nodejs/node/commit/8fa1319352)]
- **tools**: update eslint to 8.53.0 (Node.js GitHub Bot)
[#&#8203;50559](https://togithub.com/nodejs/node/pull/50559)
- \[[`592f57970f`](https://togithub.com/nodejs/node/commit/592f57970f)]
- **tools**: update lint-md-dependencies to [email protected] (Node.js GitHub
Bot) [#&#8203;50556](https://togithub.com/nodejs/node/pull/50556)
- \[[`2fd78fc39e`](https://togithub.com/nodejs/node/commit/2fd78fc39e)]
- **tools**: compare ICU checksums before file changes (Michaël Zasso)
[#&#8203;50522](https://togithub.com/nodejs/node/pull/50522)
- \[[`631d710fc4`](https://togithub.com/nodejs/node/commit/631d710fc4)]
- **tools**: improve update acorn-walk script (Marco Ippolito)
[#&#8203;50473](https://togithub.com/nodejs/node/pull/50473)
- \[[`33fd2af2ab`](https://togithub.com/nodejs/node/commit/33fd2af2ab)]
- **tools**: update lint-md-dependencies to [email protected] (Node.js GitHub
Bot) [#&#8203;50496](https://togithub.com/nodejs/node/pull/50496)
- \[[`22b7a74838`](https://togithub.com/nodejs/node/commit/22b7a74838)]
- **tools**: update gyp-next to v0.16.1 (Michaël Zasso)
[#&#8203;50380](https://togithub.com/nodejs/node/pull/50380)
- \[[`f5ccab5005`](https://togithub.com/nodejs/node/commit/f5ccab5005)]
- **tools**: skip ruff on tools/gyp (Michaël Zasso)
[#&#8203;50380](https://togithub.com/nodejs/node/pull/50380)
- \[[`408fd90508`](https://togithub.com/nodejs/node/commit/408fd90508)]
- **tools**: update lint-md-dependencies to [email protected] [email protected]
(Node.js GitHub Bot)
[#&#8203;50461](https://togithub.com/nodejs/node/pull/50461)
- \[[`685f936ccd`](https://togithub.com/nodejs/node/commit/685f936ccd)]
- **tools**: avoid npm install in deps installation (Marco Ippolito)
[#&#8203;50413](https://togithub.com/nodejs/node/pull/50413)
- \[[`7d43c5a094`](https://togithub.com/nodejs/node/commit/7d43c5a094)]
- ***Revert*** "**tools**: update doc dependencies" (Richard Lau)
[#&#8203;50414](https://togithub.com/nodejs/node/pull/50414)
- \[[`8fd67c2e3e`](https://togithub.com/nodejs/node/commit/8fd67c2e3e)]
- **tools**: update doc dependencies (Node.js GitHub Bot)
[#&#8203;49988](https://togithub.com/nodejs/node/pull/49988)
- \[[`586becb507`](https://togithub.com/nodejs/node/commit/586becb507)]
- **tools**: run coverage CI only on relevant files (Antoine du Hamel)
[#&#8203;50349](https://togithub.com/nodejs/node/pull/50349)
- \[[`2d06eea6c5`](https://togithub.com/nodejs/node/commit/2d06eea6c5)]
- **tools**: update eslint to 8.52.0 (Node.js GitHub Bot)
[#&#8203;50326](https://togithub.com/nodejs/node/pull/50326)
- \[[`6a897baf16`](https://togithub.com/nodejs/node/commit/6a897baf16)]
- **tools**: update lint-md-dependencies (Node.js GitHub Bot)
[#&#8203;50190](https://togithub.com/nodejs/node/pull/50190)
- \[[`e6e7f39b9e`](https://togithub.com/nodejs/node/commit/e6e7f39b9e)]
- **util**: improve performance of normalizeEncoding (kylo5aby)
[#&#8203;50721](https://togithub.com/nodejs/node/pull/50721)
- \[[`3b6b1afa47`](https://togithub.com/nodejs/node/commit/3b6b1afa47)]
- **v8,tools**: expose necessary V8 defines (Cheng Zhao)
[#&#8203;50820](https://togithub.com/nodejs/node/pull/50820)
- \[[`2664012617`](https://togithub.com/nodejs/node/commit/2664012617)]
- **vm**: allow dynamic import with a referrer realm (Chengzhong Wu)
[#&#8203;50360](https://togithub.com/nodejs/node/pull/50360)
- \[[`c6c0a74b54`](https://togithub.com/nodejs/node/commit/c6c0a74b54)]
- **wasi**: document security sandboxing status (Guy Bedford)
[#&#8203;50396](https://togithub.com/nodejs/node/pull/50396)
- \[[`989814093e`](https://togithub.com/nodejs/node/commit/989814093e)]
- **win,tools**: upgrade Windows signing to smctl (Stefan Stojanovic)
[#&#8203;50956](https://togithub.com/nodejs/node/pull/50956)

###
[`v20.10.0`](https://togithub.com/nodejs/node/releases/tag/v20.10.0):
2023-11-22, Version 20.10.0 &#x27;Iron&#x27; (LTS), @&#8203;targos

[Compare
Source](https://togithub.com/nodejs/node/compare/v20.9.0...v20.10.0)

##### Notable Changes

##### `--experimental-default-type` flag to flip module defaults

The new flag `--experimental-default-type` can be used to flip the
default
module 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`/`.cjs`
file extension or the `--input-type` flag, is unaffected. What is
currently
implicitly CommonJS would instead be interpreted as ES modules under
`--experimental-default-type=module`:

- String input provided via `--eval` or STDIN, if `--input-type` is
unspecified.

- Files ending in `.js` or with no extension, if there is no
`package.json` file
    present in the same folder or any parent folder.

-   Files ending in `.js` or with no extension, if the nearest parent
`package.json` field lacks a `type` field; unless the folder is inside a
    `node_modules` folder.

In addition, extensionless files are interpreted as Wasm if
`--experimental-wasm-modules` is passed and the file contains the "magic
bytes"
Wasm header.

Contributed by Geoffrey Booth in
[#&#8203;49869](https://togithub.com/nodejs/node/pull/49869).

##### Detect ESM syntax in ambiguous JavaScript

The new flag `--experimental-detect-module` can be used to automatically
run ES
modules when their syntax can be detected. For “ambiguous” files, which
are
`.js` or extensionless files with no `package.json` with a `type` field,
Node.js
will 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 `--eval` or `STDIN`.

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 `type` field to `package.json`, even for the default
`"type": "commonjs"`. The presence of a `type` field, or explicit
extensions
such as `.mjs` or `.cjs`, will opt out of detection.

Contributed by Geoffrey Booth in
[#&#8203;50096](https://togithub.com/nodejs/node/pull/50096).

##### New `flush` option in file system functions

When 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 PR adds a `'flush'` option to the `fs.writeFile` family of
functions which
forces the data to be flushed at the end of a successful write
operation.

Contributed by Colin Ihrig in
[#&#8203;50009](https://togithub.com/nodejs/node/pull/50009) and
[#&#8203;50095](https://togithub.com/nodejs/node/pull/50095).

##### Experimental WebSocket client

Adds a `--experimental-websocket` flag that adds a
[`WebSocket`](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket)
global, as [standardized by
WHATWG](https://websockets.spec.whatwg.org/#the-websocket-interface).

Contributed by Matthew Aitken in
[#&#8203;49830](https://togithub.com/nodejs/node/pull/49830).

##### vm: fix V8 compilation cache support for vm.Script

Previously repeated compilation of the same source code using
`vm.Script`
stopped hitting the V8 compilation cache after v16.x when support for
`importModuleDynamically` was added to `vm.Script`, resulting in a
performance
regression 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.Script` when `--experimental-vm-modules` is not used even in the
presence of the `importModuleDynamically` option, so that users affected
by the
performance regression can now upgrade. Ongoing work is also being done
to
enable compilation cache support for `vm.CompileFunction`.

Contributed by Joyee Cheung in
[#&#8203;49950](https://togithub.com/nodejs/node/pull/49950)
and [#&#8203;50137](https://togithub.com/nodejs/node/pull/50137).

##### Other notable changes

- \[[`21453ae555`](https://togithub.com/nodejs/node/commit/21453ae555)]
- **(SEMVER-MINOR)** **deps**: update uvwasi to 0.0.19 (Node.js GitHub
Bot) [#&#8203;49908](https://togithub.com/nodejs/node/pull/49908)
-   \[[`ee65e44c31`](ht

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 6am on Monday" in timezone
Europe/Paris, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **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.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/cozy/cozy-stack).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy45My4xIiwidXBkYXRlZEluVmVyIjoiMzcuMjIwLjIiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIifQ==-->
  • Loading branch information
sblaisot committed Mar 6, 2024
2 parents 7ec25bf + 5ecac93 commit ecffa74
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion scripts/docker/production/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ RUN ./scripts/build.sh release ./cozy-stack


# Multi-stage image: the main image
FROM node:16-bookworm-slim
FROM node:20-bookworm-slim

ENV COUCHDB_PROTOCOL=http \
COUCHDB_HOST=couchdb \
Expand Down

0 comments on commit ecffa74

Please sign in to comment.