AlexRogalskiy / typescript-tools

Collection of TypeScript tools & utilities
GNU General Public License v3.0
2 stars 0 forks source link

:arrow_up: Updates node to v22 #2373

Open renovate[bot] opened 4 months ago

renovate[bot] commented 4 months ago

This PR contains the following updates:

Package Type Update Change
node (source) major 14.16.0 -> 22.8.0
node (source) major v14.17.0 -> 22.8.0
node docker major 14 -> 22
node (source) major 12.13.0 -> 22.8.0

Release Notes

nodejs/node (node) ### [`v22.8.0`](https://redirect.github.com/nodejs/node/releases/tag/v22.8.0): 2024-09-03, Version 22.8.0 (Current), @​RafaelGSS [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.17.0...v22.8.0) ##### New JS API for compile cache This release adds a new API `module.enableCompileCache()` that can be used to enable on-disk code caching of all modules loaded after this API is called. Previously this could only be enabled by the `NODE_COMPILE_CACHE` environment variable, so it could only set by end-users. This API allows tooling and library authors to enable caching of their own code. This is a built-in alternative to the [v8-compile-cache](https://www.npmjs.com/package/v8-compile-cache)/[v8-compile-cache-lib ](https://www.npmjs.com/package/v8-compile-cache-lib) packages, but have [better performance](https://redirect.github.com/nodejs/node/issues/47472#issuecomment-1970331362) and supports ESM. Thanks to Joyee Cheung for working on this. ##### New option for vm.createContext() to create a context with a freezable globalThis Node.js implements a flavor of `vm.createContext()` and friends that creates a context without contextifying its global object when vm.constants.DONT_CONTEXTIFY is used. This is suitable when users want to freeze the context (impossible when the global is contextified i.e. has interceptors installed) or speed up the global access if they don't need the interceptor behavior. Thanks to Joyee Cheung for working on this. ##### Support for coverage thresholds Node.js now supports requiring code coverage to meet a specific threshold before the process exits successfully. To use this feature, you need to enable the `--experimental-test-coverage` flag. You can set thresholds for the following types of coverage: - **Branch coverage**: Use `--test-coverage-branches=` - **Function coverage**: Use `--test-coverage-functions=` - **Line coverage**: Use `--test-coverage-lines=` `` should be an integer between 0 and 100. If an invalid value is provided, a `TypeError` will be thrown. If the code coverage fails to meet the specified thresholds for any category, the process will exit with code `1`. For instance, to enforce a minimum of 80% line coverage and 60% branch coverage, you can run: ```console $ node --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=60 example.js ``` Thanks Aviv Keller for working on this. ##### Other Notable Changes - \[[`1f2cc2fa47`](https://redirect.github.com/nodejs/node/commit/1f2cc2fa47)] - **(SEMVER-MINOR)** **src,lib**: add performance.uvMetricsInfo (Rafael Gonzaga) [#​54413](https://redirect.github.com/nodejs/node/pull/54413) - \[[`1e01bdc0d0`](https://redirect.github.com/nodejs/node/commit/1e01bdc0d0)] - **(SEMVER-MINOR)** **net**: exclude ipv6 loopback addresses from server.listen (Giovanni Bucci) [#​54264](https://redirect.github.com/nodejs/node/pull/54264) - \[[`97fa075c2e`](https://redirect.github.com/nodejs/node/commit/97fa075c2e)] - **(SEMVER-MINOR)** **test_runner**: support running tests in process (Colin Ihrig) [#​53927](https://redirect.github.com/nodejs/node/pull/53927) - \[[`858b583c88`](https://redirect.github.com/nodejs/node/commit/858b583c88)] - **(SEMVER-MINOR)** **test_runner**: defer inheriting hooks until run() (Colin Ihrig) [#​53927](https://redirect.github.com/nodejs/node/pull/53927) ##### Commits - \[[`94985df9d6`](https://redirect.github.com/nodejs/node/commit/94985df9d6)] - **benchmark**: fix benchmark for file path and URL conversion (Early Riser) [#​54190](https://redirect.github.com/nodejs/node/pull/54190) - \[[`ac178b094b`](https://redirect.github.com/nodejs/node/commit/ac178b094b)] - **buffer**: truncate instead of throw when writing beyond buffer (Robert Nagy) [#​54524](https://redirect.github.com/nodejs/node/pull/54524) - \[[`afd8c1eb4f`](https://redirect.github.com/nodejs/node/commit/afd8c1eb4f)] - **buffer**: allow invalid encoding in from (Robert Nagy) [#​54533](https://redirect.github.com/nodejs/node/pull/54533) - \[[`6f0cf35cd3`](https://redirect.github.com/nodejs/node/commit/6f0cf35cd3)] - **build**: reclaim disk space on macOS GHA runner (jakecastelli) [#​54658](https://redirect.github.com/nodejs/node/pull/54658) - \[[`467ac3aec4`](https://redirect.github.com/nodejs/node/commit/467ac3aec4)] - **build**: don't clean obj.target directory if it doesn't exist (Joyee Cheung) [#​54337](https://redirect.github.com/nodejs/node/pull/54337) - \[[`71fdf961df`](https://redirect.github.com/nodejs/node/commit/71fdf961df)] - **build**: update required python version to 3.8 (Aviv Keller) [#​54358](https://redirect.github.com/nodejs/node/pull/54358) - \[[`73604cf1c5`](https://redirect.github.com/nodejs/node/commit/73604cf1c5)] - **deps**: update nghttp2 to 1.63.0 (Node.js GitHub Bot) [#​54589](https://redirect.github.com/nodejs/node/pull/54589) - \[[`b00c087285`](https://redirect.github.com/nodejs/node/commit/b00c087285)] - **deps**: V8: cherry-pick [`e74d0f4`](https://redirect.github.com/nodejs/node/commit/e74d0f437fcd) (Joyee Cheung) [#​54279](https://redirect.github.com/nodejs/node/pull/54279) - \[[`33a6b3c7a9`](https://redirect.github.com/nodejs/node/commit/33a6b3c7a9)] - **deps**: backport ICU-22787 to fix ClangCL on Windows (Stefan Stojanovic) [#​54502](https://redirect.github.com/nodejs/node/pull/54502) - \[[`fe56949cbb`](https://redirect.github.com/nodejs/node/commit/fe56949cbb)] - **deps**: update c-ares to v1.33.1 (Node.js GitHub Bot) [#​54549](https://redirect.github.com/nodejs/node/pull/54549) - \[[`290f6ce619`](https://redirect.github.com/nodejs/node/commit/290f6ce619)] - **deps**: update amaro to 0.1.8 (Node.js GitHub Bot) [#​54520](https://redirect.github.com/nodejs/node/pull/54520) - \[[`b5843568b4`](https://redirect.github.com/nodejs/node/commit/b5843568b4)] - **deps**: update amaro to 0.1.7 (Node.js GitHub Bot) [#​54473](https://redirect.github.com/nodejs/node/pull/54473) - \[[`9c709209b4`](https://redirect.github.com/nodejs/node/commit/9c709209b4)] - **deps**: update undici to 6.19.8 (Node.js GitHub Bot) [#​54456](https://redirect.github.com/nodejs/node/pull/54456) - \[[`a5ce24181b`](https://redirect.github.com/nodejs/node/commit/a5ce24181b)] - **deps**: sqlite: fix Windows compilation (Colin Ihrig) [#​54433](https://redirect.github.com/nodejs/node/pull/54433) - \[[`3caf29ea88`](https://redirect.github.com/nodejs/node/commit/3caf29ea88)] - **deps**: update sqlite to 3.46.1 (Node.js GitHub Bot) [#​54433](https://redirect.github.com/nodejs/node/pull/54433) - \[[`68758d4b08`](https://redirect.github.com/nodejs/node/commit/68758d4b08)] - **doc**: add support me link for anonrig (Yagiz Nizipli) [#​54611](https://redirect.github.com/nodejs/node/pull/54611) - \[[`f5c5529266`](https://redirect.github.com/nodejs/node/commit/f5c5529266)] - **doc**: add alert on REPL from TCP socket (Rafael Gonzaga) [#​54594](https://redirect.github.com/nodejs/node/pull/54594) - \[[`bf824483cd`](https://redirect.github.com/nodejs/node/commit/bf824483cd)] - **doc**: fix typo in styleText description (Rafael Gonzaga) [#​54616](https://redirect.github.com/nodejs/node/pull/54616) - \[[`825d933fd4`](https://redirect.github.com/nodejs/node/commit/825d933fd4)] - **doc**: add getHeapStatistics() property descriptions (Benji Marinacci) [#​54584](https://redirect.github.com/nodejs/node/pull/54584) - \[[`80e5150160`](https://redirect.github.com/nodejs/node/commit/80e5150160)] - **doc**: fix module compile cache description (沈鸿飞) [#​54625](https://redirect.github.com/nodejs/node/pull/54625) - \[[`7fd033fe56`](https://redirect.github.com/nodejs/node/commit/7fd033fe56)] - **doc**: run license-builder (github-actions\[bot]) [#​54562](https://redirect.github.com/nodejs/node/pull/54562) - \[[`c499913732`](https://redirect.github.com/nodejs/node/commit/c499913732)] - **doc**: fix information about including coverage files (Aviv Keller) [#​54527](https://redirect.github.com/nodejs/node/pull/54527) - \[[`c3dc83befc`](https://redirect.github.com/nodejs/node/commit/c3dc83befc)] - **doc**: support collaborators - talk amplification (Michael Dawson) [#​54508](https://redirect.github.com/nodejs/node/pull/54508) - \[[`fc57beaad3`](https://redirect.github.com/nodejs/node/commit/fc57beaad3)] - **doc**: add note about shasum generation failure (Marco Ippolito) [#​54487](https://redirect.github.com/nodejs/node/pull/54487) - \[[`1800a58f49`](https://redirect.github.com/nodejs/node/commit/1800a58f49)] - **doc**: update websocket flag description to reflect stable API status (Yelim Koo) [#​54482](https://redirect.github.com/nodejs/node/pull/54482) - \[[`61affd77a7`](https://redirect.github.com/nodejs/node/commit/61affd77a7)] - **doc**: fix capitalization in module.md (shallow-beach) [#​54488](https://redirect.github.com/nodejs/node/pull/54488) - \[[`25419915c7`](https://redirect.github.com/nodejs/node/commit/25419915c7)] - **doc**: add esm examples to node:https (Alfredo González) [#​54399](https://redirect.github.com/nodejs/node/pull/54399) - \[[`83b5efeb54`](https://redirect.github.com/nodejs/node/commit/83b5efeb54)] - **doc**: reserve ABI 130 for Electron 33 (Calvin) [#​54383](https://redirect.github.com/nodejs/node/pull/54383) - \[[`6ccbd32ae8`](https://redirect.github.com/nodejs/node/commit/6ccbd32ae8)] - **doc, meta**: add missing `,` to `BUILDING.md` (Aviv Keller) [#​54409](https://redirect.github.com/nodejs/node/pull/54409) - \[[`fc08a9b0cd`](https://redirect.github.com/nodejs/node/commit/fc08a9b0cd)] - **fs**: refactor handleTimestampsAndMode to remove redundant call (HEESEUNG) [#​54369](https://redirect.github.com/nodejs/node/pull/54369) - \[[`4a664b5fcb`](https://redirect.github.com/nodejs/node/commit/4a664b5fcb)] - **lib**: respect terminal capabilities on styleText (Rafael Gonzaga) [#​54389](https://redirect.github.com/nodejs/node/pull/54389) - \[[`a9ce2b6a28`](https://redirect.github.com/nodejs/node/commit/a9ce2b6a28)] - **lib**: fix emit warning for debuglog.time when disabled (Vinicius Lourenço) [#​54275](https://redirect.github.com/nodejs/node/pull/54275) - \[[`b5a23c9783`](https://redirect.github.com/nodejs/node/commit/b5a23c9783)] - **meta**: remind users to use a supported version in bug reports (Aviv Keller) [#​54481](https://redirect.github.com/nodejs/node/pull/54481) - \[[`0d7171d8e9`](https://redirect.github.com/nodejs/node/commit/0d7171d8e9)] - **meta**: add more labels to dep-updaters (Aviv Keller) [#​54454](https://redirect.github.com/nodejs/node/pull/54454) - \[[`c4996c189f`](https://redirect.github.com/nodejs/node/commit/c4996c189f)] - **meta**: run coverage-windows when `vcbuild.bat` updated (Aviv Keller) [#​54412](https://redirect.github.com/nodejs/node/pull/54412) - \[[`3cf645768e`](https://redirect.github.com/nodejs/node/commit/3cf645768e)] - **module**: use amaro default transform values (Marco Ippolito) [#​54517](https://redirect.github.com/nodejs/node/pull/54517) - \[[`336496b90e`](https://redirect.github.com/nodejs/node/commit/336496b90e)] - **module**: add sourceURL magic comment hinting generated source (Chengzhong Wu) [#​54402](https://redirect.github.com/nodejs/node/pull/54402) - \[[`04f83b50ad`](https://redirect.github.com/nodejs/node/commit/04f83b50ad)] - ***Revert*** "**net**: validate host name for server listen" (jakecastelli) [#​54554](https://redirect.github.com/nodejs/node/pull/54554) - \[[`1e01bdc0d0`](https://redirect.github.com/nodejs/node/commit/1e01bdc0d0)] - **(SEMVER-MINOR)** **net**: exclude ipv6 loopback addresses from server.listen (Giovanni Bucci) [#​54264](https://redirect.github.com/nodejs/node/pull/54264) - \[[`3cd10a3f40`](https://redirect.github.com/nodejs/node/commit/3cd10a3f40)] - **node-api**: remove RefBase and CallbackWrapper (Vladimir Morozov) [#​53590](https://redirect.github.com/nodejs/node/pull/53590) - \[[`72c554abab`](https://redirect.github.com/nodejs/node/commit/72c554abab)] - **sqlite**: return results with null prototype (Michaël Zasso) [#​54350](https://redirect.github.com/nodejs/node/pull/54350) - \[[`e071651bb2`](https://redirect.github.com/nodejs/node/commit/e071651bb2)] - **src**: disable fast methods for `buffer.write` (Michaël Zasso) [#​54565](https://redirect.github.com/nodejs/node/pull/54565) - \[[`f8cbbc685a`](https://redirect.github.com/nodejs/node/commit/f8cbbc685a)] - **src**: use v8::Isolate::GetDefaultLocale() to compute navigator.language (Joyee Cheung) [#​54279](https://redirect.github.com/nodejs/node/pull/54279) - \[[`4baf4637eb`](https://redirect.github.com/nodejs/node/commit/4baf4637eb)] - **(SEMVER-MINOR)** **src**: add JS APIs for compile cache and NODE_DISABLE_COMPILE_CACHE (Joyee Cheung) [#​54501](https://redirect.github.com/nodejs/node/pull/54501) - \[[`101e299656`](https://redirect.github.com/nodejs/node/commit/101e299656)] - **src**: move more crypto_dh.cc code to ncrypto (James M Snell) [#​54459](https://redirect.github.com/nodejs/node/pull/54459) - \[[`e6e1f4e8bd`](https://redirect.github.com/nodejs/node/commit/e6e1f4e8bd)] - **src**: remove redundant AESCipherMode (Tobias Nießen) [#​54438](https://redirect.github.com/nodejs/node/pull/54438) - \[[`1ff3f63f5e`](https://redirect.github.com/nodejs/node/commit/1ff3f63f5e)] - **src**: handle errors correctly in `permission.cc` (Michaël Zasso) [#​54541](https://redirect.github.com/nodejs/node/pull/54541) - \[[`4938188682`](https://redirect.github.com/nodejs/node/commit/4938188682)] - **src**: return `v8::Object` from error constructors (Michaël Zasso) [#​54541](https://redirect.github.com/nodejs/node/pull/54541) - \[[`4578e9485b`](https://redirect.github.com/nodejs/node/commit/4578e9485b)] - **src**: use better return types in KVStore (Michaël Zasso) [#​54539](https://redirect.github.com/nodejs/node/pull/54539) - \[[`7d9e994791`](https://redirect.github.com/nodejs/node/commit/7d9e994791)] - **src**: change SetEncodedValue to return Maybe\ (Tobias Nießen) [#​54443](https://redirect.github.com/nodejs/node/pull/54443) - \[[`eef303028f`](https://redirect.github.com/nodejs/node/commit/eef303028f)] - **src**: remove cached data tag from snapshot metadata (Joyee Cheung) [#​54122](https://redirect.github.com/nodejs/node/pull/54122) - \[[`3a74c400d5`](https://redirect.github.com/nodejs/node/commit/3a74c400d5)] - **src**: improve `buffer.transcode` performance (Yagiz Nizipli) [#​54153](https://redirect.github.com/nodejs/node/pull/54153) - \[[`909c5320fd`](https://redirect.github.com/nodejs/node/commit/909c5320fd)] - **src**: move more crypto code to ncrypto (James M Snell) [#​54320](https://redirect.github.com/nodejs/node/pull/54320) - \[[`9ba75faf5f`](https://redirect.github.com/nodejs/node/commit/9ba75faf5f)] - **(SEMVER-MINOR)** **src,lib**: add performance.uvMetricsInfo (Rafael Gonzaga) [#​54413](https://redirect.github.com/nodejs/node/pull/54413) - \[[`fffc300c6d`](https://redirect.github.com/nodejs/node/commit/fffc300c6d)] - **stream**: change stream to use index instead of `for...of` (Wiyeong Seo) [#​54474](https://redirect.github.com/nodejs/node/pull/54474) - \[[`a4a6ef8d29`](https://redirect.github.com/nodejs/node/commit/a4a6ef8d29)] - **test**: fix test-tls-client-auth test for OpenSSL32 (Michael Dawson) [#​54610](https://redirect.github.com/nodejs/node/pull/54610) - \[[`76345a5d7c`](https://redirect.github.com/nodejs/node/commit/76345a5d7c)] - **test**: update TLS test for OpenSSL 3.2 (Richard Lau) [#​54612](https://redirect.github.com/nodejs/node/pull/54612) - \[[`522d5a359d`](https://redirect.github.com/nodejs/node/commit/522d5a359d)] - **test**: run V8 Fast API tests in release mode too (Michaël Zasso) [#​54570](https://redirect.github.com/nodejs/node/pull/54570) - \[[`edbecf5209`](https://redirect.github.com/nodejs/node/commit/edbecf5209)] - **test**: increase key size for ca2-cert.pem (Michael Dawson) [#​54599](https://redirect.github.com/nodejs/node/pull/54599) - \[[`bc976cfc93`](https://redirect.github.com/nodejs/node/commit/bc976cfc93)] - **test**: update test-abortsignal-cloneable to use node:test (James M Snell) [#​54581](https://redirect.github.com/nodejs/node/pull/54581) - \[[`9f1ce732a8`](https://redirect.github.com/nodejs/node/commit/9f1ce732a8)] - **test**: update test-assert-typedarray-deepequal to use node:test (James M Snell) [#​54585](https://redirect.github.com/nodejs/node/pull/54585) - \[[`c74f2aeb92`](https://redirect.github.com/nodejs/node/commit/c74f2aeb92)] - **test**: update test-assert to use node:test (James M Snell) [#​54585](https://redirect.github.com/nodejs/node/pull/54585) - \[[`a0be95e4cc`](https://redirect.github.com/nodejs/node/commit/a0be95e4cc)] - **test**: merge ongc and gcutil into gc.js (tannal) [#​54355](https://redirect.github.com/nodejs/node/pull/54355) - \[[`c10aff665e`](https://redirect.github.com/nodejs/node/commit/c10aff665e)] - **test**: move a couple of tests over to using node:test (James M Snell) [#​54582](https://redirect.github.com/nodejs/node/pull/54582) - \[[`dbbc790949`](https://redirect.github.com/nodejs/node/commit/dbbc790949)] - **test**: update test-aborted-util to use node:test (James M Snell) [#​54578](https://redirect.github.com/nodejs/node/pull/54578) - \[[`64442fce6b`](https://redirect.github.com/nodejs/node/commit/64442fce6b)] - **test**: refactor test-abortcontroller to use node:test (James M Snell) [#​54574](https://redirect.github.com/nodejs/node/pull/54574) - \[[`72345dee1c`](https://redirect.github.com/nodejs/node/commit/72345dee1c)] - **test**: fix embedding test for Windows (Vladimir Morozov) [#​53659](https://redirect.github.com/nodejs/node/pull/53659) - \[[`846e2b2896`](https://redirect.github.com/nodejs/node/commit/846e2b2896)] - **test**: refactor test_runner tests to change default reporter (Colin Ihrig) [#​54547](https://redirect.github.com/nodejs/node/pull/54547) - \[[`b5eb24c86a`](https://redirect.github.com/nodejs/node/commit/b5eb24c86a)] - **test**: force spec reporter in test-runner-watch-mode.mjs (Colin Ihrig) [#​54538](https://redirect.github.com/nodejs/node/pull/54538) - \[[`66ae9f4c0a`](https://redirect.github.com/nodejs/node/commit/66ae9f4c0a)] - **test**: use valid hostnames (Luigi Pinca) [#​54556](https://redirect.github.com/nodejs/node/pull/54556) - \[[`02d664b75f`](https://redirect.github.com/nodejs/node/commit/02d664b75f)] - **test**: fix improper path to URL conversion (Antoine du Hamel) [#​54509](https://redirect.github.com/nodejs/node/pull/54509) - \[[`8a4f8a9eff`](https://redirect.github.com/nodejs/node/commit/8a4f8a9eff)] - **test**: add tests for runner coverage with different stdout column widths (Pietro Marchini) [#​54494](https://redirect.github.com/nodejs/node/pull/54494) - \[[`b0ed8dbb2f`](https://redirect.github.com/nodejs/node/commit/b0ed8dbb2f)] - **test**: prevent V8 from writing into the system's tmpdir (Michaël Zasso) [#​54395](https://redirect.github.com/nodejs/node/pull/54395) - \[[`5ee234a5a6`](https://redirect.github.com/nodejs/node/commit/5ee234a5a6)] - **test,crypto**: update WebCryptoAPI WPT (Filip Skokan) [#​54593](https://redirect.github.com/nodejs/node/pull/54593) - \[[`a4bebf8559`](https://redirect.github.com/nodejs/node/commit/a4bebf8559)] - **test_runner**: ensure test watcher picks up new test files (Pietro Marchini) [#​54225](https://redirect.github.com/nodejs/node/pull/54225) - \[[`d4310fe9c1`](https://redirect.github.com/nodejs/node/commit/d4310fe9c1)] - **(SEMVER-MINOR)** **test_runner**: add support for coverage thresholds (Aviv Keller) [#​54429](https://redirect.github.com/nodejs/node/pull/54429) - \[[`0cf78aa24b`](https://redirect.github.com/nodejs/node/commit/0cf78aa24b)] - **test_runner**: refactor `mock_loader` (Antoine du Hamel) [#​54223](https://redirect.github.com/nodejs/node/pull/54223) - \[[`97fa075c2e`](https://redirect.github.com/nodejs/node/commit/97fa075c2e)] - **(SEMVER-MINOR)** **test_runner**: support running tests in process (Colin Ihrig) [#​53927](https://redirect.github.com/nodejs/node/pull/53927) - \[[`858b583c88`](https://redirect.github.com/nodejs/node/commit/858b583c88)] - **(SEMVER-MINOR)** **test_runner**: defer inheriting hooks until run() (Colin Ihrig) [#​53927](https://redirect.github.com/nodejs/node/pull/53927) - \[[`45b0250692`](https://redirect.github.com/nodejs/node/commit/45b0250692)] - **test_runner**: account for newline in source maps (Colin Ihrig) [#​54444](https://redirect.github.com/nodejs/node/pull/54444) - \[[`1c29e74d30`](https://redirect.github.com/nodejs/node/commit/1c29e74d30)] - **test_runner**: make `mock.module`'s `specifier` consistent with `import()` (Antoine du Hamel) [#​54416](https://redirect.github.com/nodejs/node/pull/54416) - \[[`cbe30a02a3`](https://redirect.github.com/nodejs/node/commit/cbe30a02a3)] - **test_runner**: finish build phase before running tests (Colin Ihrig) [#​54423](https://redirect.github.com/nodejs/node/pull/54423) - \[[`8a4b26f00c`](https://redirect.github.com/nodejs/node/commit/8a4b26f00c)] - **timers**: fix validation (Paolo Insogna) [#​54404](https://redirect.github.com/nodejs/node/pull/54404) - \[[`38798140c4`](https://redirect.github.com/nodejs/node/commit/38798140c4)] - **tools**: remove unused python files (Aviv Keller) [#​53928](https://redirect.github.com/nodejs/node/pull/53928) - \[[`da6c61def8`](https://redirect.github.com/nodejs/node/commit/da6c61def8)] - **tools**: add swc license (Marco Ippolito) [#​54462](https://redirect.github.com/nodejs/node/pull/54462) - \[[`16d4c437e1`](https://redirect.github.com/nodejs/node/commit/16d4c437e1)] - **typings**: provide internal types for wasi bindings (Andrew Moon) [#​54119](https://redirect.github.com/nodejs/node/pull/54119) - \[[`fe5666f006`](https://redirect.github.com/nodejs/node/commit/fe5666f006)] - **vm**: return all own names and symbols in property enumerator interceptor (Chengzhong Wu) [#​54522](https://redirect.github.com/nodejs/node/pull/54522) - \[[`db80eac496`](https://redirect.github.com/nodejs/node/commit/db80eac496)] - **(SEMVER-MINOR)** **vm**: introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) [#​54394](https://redirect.github.com/nodejs/node/pull/54394) - \[[`8ffdd1e2b2`](https://redirect.github.com/nodejs/node/commit/8ffdd1e2b2)] - **zlib**: simplify validators (Yagiz Nizipli) [#​54442](https://redirect.github.com/nodejs/node/pull/54442) ### [`v20.17.0`](https://redirect.github.com/nodejs/node/compare/v20.16.0...v20.17.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.16.0...v20.17.0) ### [`v20.16.0`](https://redirect.github.com/nodejs/node/compare/v20.15.1...v20.16.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.15.1...v20.16.0) ### [`v20.15.1`](https://redirect.github.com/nodejs/node/compare/v20.15.0...v20.15.1) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.15.0...v20.15.1) ### [`v20.15.0`](https://redirect.github.com/nodejs/node/releases/tag/v20.15.0): 2024-06-20, Version 20.15.0 'Iron' (LTS), @​marco-ippolito [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.14.0...v20.15.0) ##### test_runner: support test plans It is now possible to count the number of assertions and subtests that are expected to run within a test. If the number of assertions and subtests that run does not match the expected count, the test will fail. ```js test('top level test', (t) => { t.plan(2); t.assert.ok('some relevant assertion here'); t.subtest('subtest', () => {}); }); ``` Contributed by Colin Ihrig in [#​52860](https://redirect.github.com/nodejs/node/pull/52860) ##### inspector: introduce the `--inspect-wait` flag This release introduces the `--inspect-wait` flag, which allows debugger to wait for attachement. This flag is useful when you want to debug the code from the beginning. Unlike `--inspect-brk`, which breaks on the first line, this flag waits for debugger to be connected and then runs the code as soon as a session is established. Contributed by Kohei Ueno in [#​52734](https://redirect.github.com/nodejs/node/pull/52734) ##### zlib: expose zlib.crc32() This release exposes the crc32() function from zlib to user-land. It computes a 32-bit Cyclic Redundancy Check checksum of data. If value is specified, it is used as the starting value of the checksum, otherwise, 0 is used as the starting value. The CRC algorithm is designed to compute checksums and to detect error in data transmission. It's not suitable for cryptographic authentication. ```js const zlib = require('node:zlib'); const { Buffer } = require('node:buffer'); let crc = zlib.crc32('hello'); // 907060870 crc = zlib.crc32('world', crc); // 4192936109 crc = zlib.crc32(Buffer.from('hello', 'utf16le')); // 1427272415 crc = zlib.crc32(Buffer.from('world', 'utf16le'), crc); // 4150509955 ``` Contributed by Joyee Cheung in [#​52692](https://redirect.github.com/nodejs/node/pull/52692) ##### cli: allow running wasm in limited vmem with --disable-wasm-trap-handler By default, Node.js enables trap-handler-based WebAssembly bound checks. As a result, V8 does not need to insert inline bound checks int the code compiled from WebAssembly which may speedup WebAssembly execution significantly, but this optimization requires allocating a big virtual memory cage (currently 10GB). If the Node.js process does not have access to a large enough virtual memory address space due to system configurations or hardware limitations, users won't be able to run any WebAssembly that involves allocation in this virtual memory cage and will see an out-of-memory error. ```console $ ulimit -v 5000000 $ node -p "new WebAssembly.Memory({ initial: 10, maximum: 100 });" [eval]:1 new WebAssembly.Memory({ initial: 10, maximum: 100 }); ^ RangeError: WebAssembly.Memory(): could not allocate memory at [eval]:1:1 at runScriptInThisContext (node:internal/vm:209:10) at node:internal/process/execution:118:14 at [eval]-wrapper:6:24 at runScript (node:internal/process/execution:101:62) at evalScript (node:internal/process/execution:136:3) at node:internal/main/eval_string:49:3 ``` `--disable-wasm-trap-handler` disables this optimization so that users can at least run WebAssembly (with a less optimial performance) when the virtual memory address space available to their Node.js process is lower than what the V8 WebAssembly memory cage needs. Contributed by Joyee Cheung in [#​52766](https://redirect.github.com/nodejs/node/pull/52766) ##### Other Notable Changes - \[[`12512c3d0e`](https://redirect.github.com/nodejs/node/commit/12512c3d0e)] - **doc**: add pimterry to collaborators (Tim Perry) [#​52874](https://redirect.github.com/nodejs/node/pull/52874) - \[[`9d485b40bb`](https://redirect.github.com/nodejs/node/commit/9d485b40bb)] - **(SEMVER-MINOR)** **tools**: fix get_asan_state() in tools/test.py (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`e98c305f52`](https://redirect.github.com/nodejs/node/commit/e98c305f52)] - **(SEMVER-MINOR)** **tools**: support max_virtual_memory test configuration (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`dce0300896`](https://redirect.github.com/nodejs/node/commit/dce0300896)] - **(SEMVER-MINOR)** **tools**: support != in test status files (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) ##### Commits - \[[`227093bfec`](https://redirect.github.com/nodejs/node/commit/227093bfec)] - **assert**: add deep equal check for more Error type (Zhenwei Jin) [#​51805](https://redirect.github.com/nodejs/node/pull/51805) - \[[`184cfe5a71`](https://redirect.github.com/nodejs/node/commit/184cfe5a71)] - **benchmark**: filter non-present deps from `start-cli-version` (Adam Majer) [#​51746](https://redirect.github.com/nodejs/node/pull/51746) - \[[`8b3e83bb53`](https://redirect.github.com/nodejs/node/commit/8b3e83bb53)] - **buffer**: even faster atob (Daniel Lemire) [#​52443](https://redirect.github.com/nodejs/node/pull/52443) - \[[`8d628c3255`](https://redirect.github.com/nodejs/node/commit/8d628c3255)] - **buffer**: use size_t instead of uint32\_t to avoid segmentation fault (Xavier Stouder) [#​48033](https://redirect.github.com/nodejs/node/pull/48033) - \[[`16ae2b2933`](https://redirect.github.com/nodejs/node/commit/16ae2b2933)] - **buffer**: remove lines setting indexes to integer value (Zhenwei Jin) [#​52588](https://redirect.github.com/nodejs/node/pull/52588) - \[[`48c15d0dcd`](https://redirect.github.com/nodejs/node/commit/48c15d0dcd)] - **build**: remove deprecated calls for argument groups (Mohammed Keyvanzadeh) [#​52913](https://redirect.github.com/nodejs/node/pull/52913) - \[[`1be8232d17`](https://redirect.github.com/nodejs/node/commit/1be8232d17)] - **build**: drop base64 dep in GN build (Cheng) [#​52856](https://redirect.github.com/nodejs/node/pull/52856) - \[[`918962d6e7`](https://redirect.github.com/nodejs/node/commit/918962d6e7)] - **build**: make simdjson a public dep in GN build (Cheng) [#​52755](https://redirect.github.com/nodejs/node/pull/52755) - \[[`5215b6fd8e`](https://redirect.github.com/nodejs/node/commit/5215b6fd8e)] - **build, tools**: copy release assets to staging R2 bucket once built (flakey5) [#​51394](https://redirect.github.com/nodejs/node/pull/51394) - \[[`473fa73857`](https://redirect.github.com/nodejs/node/commit/473fa73857)] - **(SEMVER-MINOR)** **cli**: allow running wasm in limited vmem with --disable-wasm-trap-handler (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`954d2aded4`](https://redirect.github.com/nodejs/node/commit/954d2aded4)] - **cluster**: replace `forEach` with `for-of` loop (Jérôme Benoit) [#​50317](https://redirect.github.com/nodejs/node/pull/50317) - \[[`794e450ea7`](https://redirect.github.com/nodejs/node/commit/794e450ea7)] - **console**: colorize console error and warn (Jithil P Ponnan) [#​51629](https://redirect.github.com/nodejs/node/pull/51629) - \[[`0fb7c18f10`](https://redirect.github.com/nodejs/node/commit/0fb7c18f10)] - **crypto**: fix duplicated switch-case return values (Mustafa Ateş UZUN) [#​49030](https://redirect.github.com/nodejs/node/pull/49030) - \[[`cd1415c8b2`](https://redirect.github.com/nodejs/node/commit/cd1415c8b2)] - ***Revert*** "**crypto**: make timingSafeEqual faster for Uint8Array" (Tobias Nießen) [#​53390](https://redirect.github.com/nodejs/node/pull/53390) - \[[`b774544bb1`](https://redirect.github.com/nodejs/node/commit/b774544bb1)] - **deps**: enable unbundling of simdjson, simdutf, ada (Daniel Lemire) [#​52924](https://redirect.github.com/nodejs/node/pull/52924) - \[[`da4dbfc5fd`](https://redirect.github.com/nodejs/node/commit/da4dbfc5fd)] - **doc**: remove reference to AUTHORS file (Marco Ippolito) [#​52960](https://redirect.github.com/nodejs/node/pull/52960) - \[[`2f3f2ff8af`](https://redirect.github.com/nodejs/node/commit/2f3f2ff8af)] - **doc**: update hljs with the latest styles (Aviv Keller) [#​52911](https://redirect.github.com/nodejs/node/pull/52911) - \[[`3a1d17a9b1`](https://redirect.github.com/nodejs/node/commit/3a1d17a9b1)] - **doc**: mention quicker way to build docs (Alex Crawford) [#​52937](https://redirect.github.com/nodejs/node/pull/52937) - \[[`be309bd19d`](https://redirect.github.com/nodejs/node/commit/be309bd19d)] - **doc**: mention push.followTags config (Rafael Gonzaga) [#​52906](https://redirect.github.com/nodejs/node/pull/52906) - \[[`e62c6e2684`](https://redirect.github.com/nodejs/node/commit/e62c6e2684)] - **doc**: document pipeline with `end` option (Alois Klink) [#​48970](https://redirect.github.com/nodejs/node/pull/48970) - \[[`af27225cf6`](https://redirect.github.com/nodejs/node/commit/af27225cf6)] - **doc**: add example for `execFileSync` method and ref to stdio (Evan Shortiss) [#​39412](https://redirect.github.com/nodejs/node/pull/39412) - \[[`086626f9b1`](https://redirect.github.com/nodejs/node/commit/086626f9b1)] - **doc**: add examples and notes to http server.close et al (mary marchini) [#​49091](https://redirect.github.com/nodejs/node/pull/49091) - \[[`3aa3337a00`](https://redirect.github.com/nodejs/node/commit/3aa3337a00)] - **doc**: fix `dns.lookup` family `0` and `all` descriptions (Adam Jones) [#​51653](https://redirect.github.com/nodejs/node/pull/51653) - \[[`585f2a2e7f`](https://redirect.github.com/nodejs/node/commit/585f2a2e7f)] - **doc**: update `fs.realpath` documentation (sinkhaha) [#​48170](https://redirect.github.com/nodejs/node/pull/48170) - \[[`4bf3d44e1d`](https://redirect.github.com/nodejs/node/commit/4bf3d44e1d)] - **doc**: update fs read documentation for clarity (Mert Can Altin) [#​52453](https://redirect.github.com/nodejs/node/pull/52453) - \[[`ae5d47dde3`](https://redirect.github.com/nodejs/node/commit/ae5d47dde3)] - **doc**: watermark string behavior (Benjamin Gruenbaum) [#​52842](https://redirect.github.com/nodejs/node/pull/52842) - \[[`1e429d10d3`](https://redirect.github.com/nodejs/node/commit/1e429d10d3)] - **doc**: exclude commits with baking-for-lts (Marco Ippolito) [#​52896](https://redirect.github.com/nodejs/node/pull/52896) - \[[`3df3e37cdb`](https://redirect.github.com/nodejs/node/commit/3df3e37cdb)] - **doc**: add names next to release key bash commands (Aviv Keller) [#​52878](https://redirect.github.com/nodejs/node/pull/52878) - \[[`12512c3d0e`](https://redirect.github.com/nodejs/node/commit/12512c3d0e)] - **doc**: add pimterry to collaborators (Tim Perry) [#​52874](https://redirect.github.com/nodejs/node/pull/52874) - \[[`97e0fef019`](https://redirect.github.com/nodejs/node/commit/97e0fef019)] - **doc**: add more definitions to GLOSSARY.md (Aviv Keller) [#​52798](https://redirect.github.com/nodejs/node/pull/52798) - \[[`91fadac162`](https://redirect.github.com/nodejs/node/commit/91fadac162)] - **doc**: make docs more welcoming and descriptive for newcomers (Serkan Özel) [#​38056](https://redirect.github.com/nodejs/node/pull/38056) - \[[`a3b20126fd`](https://redirect.github.com/nodejs/node/commit/a3b20126fd)] - **doc**: add OpenSSL errors to API docs (John Lamp) [#​34213](https://redirect.github.com/nodejs/node/pull/34213) - \[[`9587ae9b5b`](https://redirect.github.com/nodejs/node/commit/9587ae9b5b)] - **doc**: simplify copy-pasting of `branch-diff` commands (Antoine du Hamel) [#​52757](https://redirect.github.com/nodejs/node/pull/52757) - \[[`6ea72a53c3`](https://redirect.github.com/nodejs/node/commit/6ea72a53c3)] - **doc**: add test_runner to subsystem (Raz Luvaton) [#​52774](https://redirect.github.com/nodejs/node/pull/52774) - \[[`972eafd983`](https://redirect.github.com/nodejs/node/commit/972eafd983)] - **events**: update MaxListenersExceededWarning message log (sinkhaha) [#​51921](https://redirect.github.com/nodejs/node/pull/51921) - \[[`74753ed1fe`](https://redirect.github.com/nodejs/node/commit/74753ed1fe)] - **events**: add stop propagation flag to `Event.stopImmediatePropagation` (Mickael Meausoone) [#​39463](https://redirect.github.com/nodejs/node/pull/39463) - \[[`75dd009649`](https://redirect.github.com/nodejs/node/commit/75dd009649)] - **events**: replace NodeCustomEvent with CustomEvent (Feng Yu) [#​43876](https://redirect.github.com/nodejs/node/pull/43876) - \[[`7d38c2e012`](https://redirect.github.com/nodejs/node/commit/7d38c2e012)] - **fs**: keep fs.promises.readFile read until EOF is reached (Zhenwei Jin) [#​52178](https://redirect.github.com/nodejs/node/pull/52178) - \[[`8cb13120d3`](https://redirect.github.com/nodejs/node/commit/8cb13120d3)] - **(SEMVER-MINOR)** **inspector**: introduce the `--inspect-wait` flag (Kohei Ueno) [#​52734](https://redirect.github.com/nodejs/node/pull/52734) - \[[`d5ab1de1fd`](https://redirect.github.com/nodejs/node/commit/d5ab1de1fd)] - **meta**: move `@anonrig` to TSC regular member (Yagiz Nizipli) [#​52932](https://redirect.github.com/nodejs/node/pull/52932) - \[[`f82d086e90`](https://redirect.github.com/nodejs/node/commit/f82d086e90)] - **path**: fix toNamespacedPath on Windows (Hüseyin Açacak) [#​52915](https://redirect.github.com/nodejs/node/pull/52915) - \[[`121ea13b50`](https://redirect.github.com/nodejs/node/commit/121ea13b50)] - **process**: improve event-loop (Aras Abbasi) [#​52108](https://redirect.github.com/nodejs/node/pull/52108) - \[[`eceac784aa`](https://redirect.github.com/nodejs/node/commit/eceac784aa)] - **repl**: fix disruptive autocomplete without inspector (Nitzan Uziely) [#​40661](https://redirect.github.com/nodejs/node/pull/40661) - \[[`89a910be82`](https://redirect.github.com/nodejs/node/commit/89a910be82)] - **src**: fix Worker termination in `inspector.waitForDebugger` (Daeyeon Jeong) [#​52527](https://redirect.github.com/nodejs/node/pull/52527) - \[[`033f985e8a`](https://redirect.github.com/nodejs/node/commit/033f985e8a)] - **src**: use `S_ISDIR` to check if the file is a directory (theanarkh) [#​52164](https://redirect.github.com/nodejs/node/pull/52164) - \[[`95128399f8`](https://redirect.github.com/nodejs/node/commit/95128399f8)] - **src**: allow preventing debug signal handler start (Shelley Vohr) [#​46681](https://redirect.github.com/nodejs/node/pull/46681) - \[[`b162aeae9e`](https://redirect.github.com/nodejs/node/commit/b162aeae9e)] - **src**: fix typo Unabled -> Unable (Simon Siefke) [#​52820](https://redirect.github.com/nodejs/node/pull/52820) - \[[`2dcbf1894a`](https://redirect.github.com/nodejs/node/commit/2dcbf1894a)] - **src**: avoid unused variable 'error' warning (Michaël Zasso) [#​52886](https://redirect.github.com/nodejs/node/pull/52886) - \[[`978ee0a635`](https://redirect.github.com/nodejs/node/commit/978ee0a635)] - **src**: only apply fix in main thread (Paolo Insogna) [#​52702](https://redirect.github.com/nodejs/node/pull/52702) - \[[`8fc52b38c6`](https://redirect.github.com/nodejs/node/commit/8fc52b38c6)] - **src**: fix test local edge case (Paolo Insogna) [#​52702](https://redirect.github.com/nodejs/node/pull/52702) - \[[`d02907ecc4`](https://redirect.github.com/nodejs/node/commit/d02907ecc4)] - **src**: remove misplaced windows code under posix guard in node.cc (Ali Hassan) [#​52545](https://redirect.github.com/nodejs/node/pull/52545) - \[[`af29120fa7`](https://redirect.github.com/nodejs/node/commit/af29120fa7)] - **stream**: use `ByteLengthQueuingStrategy` when not in `objectMode` (Jason) [#​48847](https://redirect.github.com/nodejs/node/pull/48847) - \[[`a5f3dd137c`](https://redirect.github.com/nodejs/node/commit/a5f3dd137c)] - **string_decoder**: throw an error when writing a too long buffer (zhenweijin) [#​52215](https://redirect.github.com/nodejs/node/pull/52215) - \[[`65fa95d57d`](https://redirect.github.com/nodejs/node/commit/65fa95d57d)] - **test**: add `Debugger.setInstrumentationBreakpoint` known issue (Konstantin Ulitin) [#​31137](https://redirect.github.com/nodejs/node/pull/31137) - \[[`0513e07805`](https://redirect.github.com/nodejs/node/commit/0513e07805)] - **test**: use `for-of` instead of `forEach` (Gibby Free) [#​49790](https://redirect.github.com/nodejs/node/pull/49790) - \[[`1d01325928`](https://redirect.github.com/nodejs/node/commit/1d01325928)] - **test**: verify request payload is uploaded consistently (Austin Wright) [#​34066](https://redirect.github.com/nodejs/node/pull/34066) - \[[`7dda156872`](https://redirect.github.com/nodejs/node/commit/7dda156872)] - **test**: add fuzzer for native/js string conversion (Adam Korczynski) [#​51120](https://redirect.github.com/nodejs/node/pull/51120) - \[[`5fb829b340`](https://redirect.github.com/nodejs/node/commit/5fb829b340)] - **test**: add fuzzer for `ClientHelloParser` (AdamKorcz) [#​51088](https://redirect.github.com/nodejs/node/pull/51088) - \[[`cc74bf789f`](https://redirect.github.com/nodejs/node/commit/cc74bf789f)] - **test**: fix broken env fuzzer by initializing process (AdamKorcz) [#​51080](https://redirect.github.com/nodejs/node/pull/51080) - \[[`800b6f65cf`](https://redirect.github.com/nodejs/node/commit/800b6f65cf)] - **test**: replace `forEach()` in `test-stream-pipe-unpipe-stream` (Dario) [#​50786](https://redirect.github.com/nodejs/node/pull/50786) - \[[`d08c9a6a31`](https://redirect.github.com/nodejs/node/commit/d08c9a6a31)] - **test**: test pipeline `end` on transform streams (Alois Klink) [#​48970](https://redirect.github.com/nodejs/node/pull/48970) - \[[`0be8123ede`](https://redirect.github.com/nodejs/node/commit/0be8123ede)] - **test**: improve coverage of lib/readline.js (Rongjian Zhang) [#​38646](https://redirect.github.com/nodejs/node/pull/38646) - \[[`410224415c`](https://redirect.github.com/nodejs/node/commit/410224415c)] - **test**: updated for each to for of in test file (lyannel) [#​50308](https://redirect.github.com/nodejs/node/pull/50308) - \[[`556e9a2127`](https://redirect.github.com/nodejs/node/commit/556e9a2127)] - **test**: move `test-http-server-request-timeouts-mixed` to sequential (Madhuri) [#​45722](https://redirect.github.com/nodejs/node/pull/45722) - \[[`0638274c07`](https://redirect.github.com/nodejs/node/commit/0638274c07)] - **test**: fix DNS cancel tests (Szymon Marczak) [#​44432](https://redirect.github.com/nodejs/node/pull/44432) - \[[`311bdc62bd`](https://redirect.github.com/nodejs/node/commit/311bdc62bd)] - **test**: add http agent to `executionAsyncResource` (psj-tar-gz) [#​34966](https://redirect.github.com/nodejs/node/pull/34966) - \[[`6001b164ab`](https://redirect.github.com/nodejs/node/commit/6001b164ab)] - **test**: reduce memory usage of test-worker-stdio (Adam Majer) [#​37769](https://redirect.github.com/nodejs/node/pull/37769) - \[[`986bfa26e9`](https://redirect.github.com/nodejs/node/commit/986bfa26e9)] - **test**: add common.expectRequiredModule() (Joyee Cheung) [#​52868](https://redirect.github.com/nodejs/node/pull/52868) - \[[`2246d4fd1e`](https://redirect.github.com/nodejs/node/commit/2246d4fd1e)] - **test**: crypto-rsa-dsa testing for dynamic openssl (Michael Dawson) [#​52781](https://redirect.github.com/nodejs/node/pull/52781) - \[[`1dce5dea0b`](https://redirect.github.com/nodejs/node/commit/1dce5dea0b)] - **test**: skip some console tests on dumb terminal (Adam Majer) [#​37770](https://redirect.github.com/nodejs/node/pull/37770) - \[[`0addeb240c`](https://redirect.github.com/nodejs/node/commit/0addeb240c)] - **test**: skip v8-updates/test-linux-perf-logger (Michaël Zasso) [#​52821](https://redirect.github.com/nodejs/node/pull/52821) - \[[`56e19e38f3`](https://redirect.github.com/nodejs/node/commit/56e19e38f3)] - **test**: drop test-crypto-timing-safe-equal-benchmarks (Rafael Gonzaga) [#​52751](https://redirect.github.com/nodejs/node/pull/52751) - \[[`0c5e58958c`](https://redirect.github.com/nodejs/node/commit/0c5e58958c)] - **test, crypto**: use correct object on assert (响马) [#​51820](https://redirect.github.com/nodejs/node/pull/51820) - \[[`d54aa47ec1`](https://redirect.github.com/nodejs/node/commit/d54aa47ec1)] - **(SEMVER-MINOR)** **test_runner**: support test plans (Colin Ihrig) [#​52860](https://redirect.github.com/nodejs/node/pull/52860) - \[[`0289a023a5`](https://redirect.github.com/nodejs/node/commit/0289a023a5)] - **test_runner**: fix watch mode race condition (Moshe Atlow) [#​52954](https://redirect.github.com/nodejs/node/pull/52954) - \[[`cf817e192e`](https://redirect.github.com/nodejs/node/commit/cf817e192e)] - **test_runner**: preserve hook promise when executed twice (Moshe Atlow) [#​52791](https://redirect.github.com/nodejs/node/pull/52791) - \[[`de541235fe`](https://redirect.github.com/nodejs/node/commit/de541235fe)] - **tools**: fix v8-update workflow (Michaël Zasso) [#​52957](https://redirect.github.com/nodejs/node/pull/52957) - \[[`f6290bc327`](https://redirect.github.com/nodejs/node/commit/f6290bc327)] - **tools**: add --certify-safe to nci-ci (Matteo Collina) [#​52940](https://redirect.github.com/nodejs/node/pull/52940) - \[[`0830b3115d`](https://redirect.github.com/nodejs/node/commit/0830b3115d)] - **tools**: fix doc update action (Marco Ippolito) [#​52890](https://redirect.github.com/nodejs/node/pull/52890) - \[[`9d485b40bb`](https://redirect.github.com/nodejs/node/commit/9d485b40bb)] - **(SEMVER-MINOR)** **tools**: fix get_asan_state() in tools/test.py (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`e98c305f52`](https://redirect.github.com/nodejs/node/commit/e98c305f52)] - **(SEMVER-MINOR)** **tools**: support max_virtual_memory test configuration (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`dce0300896`](https://redirect.github.com/nodejs/node/commit/dce0300896)] - **(SEMVER-MINOR)** **tools**: support != in test status files (Joyee Cheung) [#​52766](https://redirect.github.com/nodejs/node/pull/52766) - \[[`57006001ec`](https://redirect.github.com/nodejs/node/commit/57006001ec)] - **tools**: prepare custom rules for ESLint v9 (Michaël Zasso) [#​52889](https://redirect.github.com/nodejs/node/pull/52889) - \[[`403a4a7557`](https://redirect.github.com/nodejs/node/commit/403a4a7557)] - **tools**: update lint-md-dependencies to rollup@4.17.2 (Node.js GitHub Bot) [#​52836](https://redirect.github.com/nodejs/node/pull/52836) - \[[`01eff5860e`](https://redirect.github.com/nodejs/node/commit/01eff5860e)] - **tools**: update `gr2m/create-or-update-pull-request-action` (Antoine du Hamel) [#​52843](https://redirect.github.com/nodejs/node/pull/52843) - \[[`514f01ed59`](https://redirect.github.com/nodejs/node/commit/514f01ed59)] - **tools**: use sccache GitHub action (Michaël Zasso) [#​52839](https://redirect.github.com/nodejs/node/pull/52839) - \[[`8f8fb91927`](https://redirect.github.com/nodejs/node/commit/8f8fb91927)] - **tools**: specify a commit-message for V8 update workflow (Antoine du Hamel) [#​52844](https://redirect.github.com/nodejs/node/pull/52844) - \[[`b83fbf8709`](https://redirect.github.com/nodejs/node/commit/b83fbf8709)] - **tools**: fix V8 update workflow (Antoine du Hamel) [#​52822](https://redirect.github.com/nodejs/node/pull/52822) - \[[`be9d6f2176`](https://redirect.github.com/nodejs/node/commit/be9d6f2176)] - **url,tools,benchmark**: replace deprecated `substr()` (Jungku Lee) [#​51546](https://redirect.github.com/nodejs/node/pull/51546) - \[[`7603a51d45`](https://redirect.github.com/nodejs/node/commit/7603a51d45)] - **util**: fix `%s` format behavior with `Symbol.toPrimitive` (Chenyu Yang) [#​50992](https://redirect.github.com/nodejs/node/pull/50992) - \[[`d7eba50cf3`](https://redirect.github.com/nodejs/node/commit/d7eba50cf3)] - **util**: improve `isInsideNodeModules` (uzlopak) [#​52147](https://redirect.github.com/nodejs/node/pull/52147) - \[[`4ae4f7e517`](https://redirect.github.com/nodejs/node/commit/4ae4f7e517)] - **watch**: allow listening for grouped changes (Matthieu Sieben) [#​52722](https://redirect.github.com/nodejs/node/pull/52722) - \[[`1ff8f318c0`](https://redirect.github.com/nodejs/node/commit/1ff8f318c0)] - **watch**: enable passthrough ipc in watch mode (Zack) [#​50890](https://redirect.github.com/nodejs/node/pull/50890) - \[[`739adf90b1`](https://redirect.github.com/nodejs/node/commit/739adf90b1)] - **watch**: fix arguments parsing (Moshe Atlow) [#​52760](https://redirect.github.com/nodejs/node/pull/52760) - \[[`5161d95c30`](https://redirect.github.com/nodejs/node/commit/5161d95c30)] - **(SEMVER-MINOR)** **zlib**: expose zlib.crc32() (Joyee Cheung) [#​52692](https://redirect.github.com/nodejs/node/pull/52692) ### [`v20.14.0`](https://redirect.github.com/nodejs/node/compare/v20.13.1...v20.14.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.13.1...v20.14.0) ### [`v20.13.1`](https://redirect.github.com/nodejs/node/releases/tag/v20.13.1): 2024-05-09, Version 20.13.1 'Iron' (LTS), @​marco-ippolito [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.13.0...v20.13.1) #### 2024-05-09, Version 20.13.1 'Iron' (LTS), [@​marco-ippolito](https://redirect.github.com/marco-ippolito) ##### Revert "tools: install npm PowerShell scripts on Windows" Due to a regression in the npm installation on Windows, this commit reverts the change that installed npm PowerShell scripts on Windows. ##### Commits - \[[`b7d80802cc`](https://redirect.github.com/nodejs/node/commit/b7d80802cc)] - ***Revert*** "**tools**: install npm PowerShell scripts on Windows" (marco-ippolito) [#​52897](https://redirect.github.com/nodejs/node/pull/52897) ### [`v20.13.0`](https://redirect.github.com/nodejs/node/compare/v20.12.2...v20.13.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.12.2...v20.13.0) ### [`v20.12.2`](https://redirect.github.com/nodejs/node/releases/tag/v20.12.2): 2024-04-10, Version 20.12.2 'Iron' (LTS), @​RafaelGSS [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.12.1...v20.12.2) This is a security release. ##### Notable Changes - CVE-2024-27980 - Command injection via args parameter of `child_process.spawn` without shell option enabled on Windows ##### Commits - \[[`69ffc6d50d`](https://redirect.github.com/nodejs/node/commit/69ffc6d50d)] - **src**: disallow direct .bat and .cmd file spawning (Ben Noordhuis) [nodejs-private/node-private#563](https://redirect.github.com/nodejs-private/node-private/pull/563) ### [`v20.12.1`](https://redirect.github.com/nodejs/node/compare/v20.12.0...v20.12.1) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.12.0...v20.12.1) ### [`v20.12.0`](https://redirect.github.com/nodejs/node/compare/v20.11.1...v20.12.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.11.1...v20.12.0) ### [`v20.11.1`](https://redirect.github.com/nodejs/node/compare/v20.11.0...v20.11.1) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.11.0...v20.11.1) ### [`v20.11.0`](https://redirect.github.com/nodejs/node/compare/v20.10.0...v20.11.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.10.0...v20.11.0) ### [`v20.10.0`](https://redirect.github.com/nodejs/node/compare/v20.9.0...v20.10.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.9.0...v20.10.0) ### [`v20.9.0`](https://redirect.github.com/nodejs/node/compare/v20.8.1...v20.9.0) [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.8.1...v20.9.0) ### [`v20.8.1`](https://redirect.github.com/nodejs/node/releases/tag/v20.8.1): 2023-10-13, Version 20.8.1 (Current), @​RafaelGSS [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.8.0...v20.8.1) This is a security release. ##### Notable Changes The following CVEs are fixed in this release: - [CVE-2023-44487](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-44487): `nghttp2` Security Release (High) - [CVE-2023-45143](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-45143): `undici` Security Release (High) - [CVE-2023-39332](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39332): Path traversal through path stored in Uint8Array (High) - [CVE-2023-39331](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39331): Permission model improperly protects against path traversal (High) - [CVE-2023-38552](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-38552): Integrity checks according to policies can be circumvented (Medium) - [CVE-2023-39333](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-39333): Code injection via WebAssembly export names (Low) More detailed information on each of the vulnerabilities can be found in [October 2023 Security Releases](https://nodejs.org/en/blog/vulnerability/october-2023-security-releases/) blog post. ##### Commits - \[[`c86883e844`](https://redirect.github.com/nodejs/node/commit/c86883e844)] - **deps**: update nghttp2 to 1.57.0 (James M Snell) [#​50121](https://redirect.github.com/nodejs/node/pull/50121) - \[[`2860631359`](https://redirect.github.com/nodejs/node/commit/2860631359)] - **deps**: update undici to v5.26.3 (Matteo Collina) [#​50153](https://redirect.github.com/nodejs/node/pull/50153) - \[[`cd37838bf8`](https://redirect.github.com/nodejs/node/commit/cd37838bf8)] - **lib**: let deps require `node` prefixed modules (Matthew Aitken) [#​50047](https://redirect.github.com/nodejs/node/pull/50047) - \[[`f5c90b2951`](https://redirect.github.com/nodejs/node/commit/f5c90b2951)] - **module**: fix code injection through export names (Tobias Nießen) [nodejs-private/node-private#461](https://redirect.github.com/nodejs-private/node-private/pull/461) - \[[`fa5dae1944`](https://redirect.github.com/nodejs/node/commit/fa5dae1944)] - **permission**: fix Uint8Array path traversal (Tobias Nießen) [nodejs-private/node-private#456](https://redirect.github.com/nodejs-private/node-private/pull/456) - \[[`cd35275111`](https://redirect.github.com/nodejs/node/commit/cd35275111)] - **permission**: improve path traversal protection (Tobias Nießen) [nodejs-private/node-private#456](https://redirect.github.com/nodejs-private/node-private/pull/456) - \[[`a4cb7fc7c0`](https://redirect.github.com/nodejs/node/commit/a4cb7fc7c0)] - **policy**: use tamper-proof integrity check function (Tobias Nießen) [nodejs-private/node-private#462](https://redirect.github.com/nodejs-private/node-private/pull/462) ### [`v20.8.0`](https://redirect.github.com/nodejs/node/releases/tag/v20.8.0): 2023-09-28, Version 20.8.0 (Current), @​ruyadorno [Compare Source](https://redirect.github.com/nodejs/node/compare/v20.7.0...v20.8.0) ##### Notable Changes ##### Stream performance improvements Performance improvements to writable and readable streams, improving the creation and destruction by ±15% and reducing the memory overhead each stream takes in Node.js Contributed by Benjamin Gruenbaum in [#​49745](https://redirect.github.com/nodejs/node/pull/49745) and Raz Luvaton in [#​49834](https://redirect.github.com/nodejs/node/pull/49834). Performance improvements for readable webstream, improving readable stream async iterator consumption by ±140% and improving readable stream `pipeTo` consumption by ±60% Contributed by Raz Luvaton in [#​49662](https://redirect.github.com/nodejs/node/pull/49662) and [#​49690](https://redirect.github.com/nodejs/node/pull/49690). ##### Rework of memory management in `vm` APIs with the `importModuleDynamically` option This rework addressed a series of long-standing memory leaks and use-after-free issues in the following APIs that support `importModuleDynamically`: - `vm.Script` - `vm.compileFunction` - `vm.SyntheticModule` - `vm.SourceTextModule` This should enable affected users (in particular Jest users) to upgrade from older versions of Node.js. Contributed by Joyee Cheung in [#​48510](https://redirect.github.com/nodejs/node/pull/48510). ##### Other notable changes - \[[`32d4d29d02`](https://redirect.github.com/nodejs/node/commit/32d4d29d02)] - **deps**: add v8::Object::SetInternalFieldForNodeCore() (Joyee Cheung) [#​49874](https://redirect.github.com/nodejs/node/pull/49874) - \[[`0e686d096b`](https://redirect.github.com/nodejs/node/commit/0e686d096b)] - **doc**: deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) [#​49683](https://redirect.github.com/nodejs/node/pull/49683) - \[[`a5dd057540`](https://redirect.github.com/nodejs/node/commit/a5dd057540)] - **doc**: deprecate `util.toUSVString` (Yagiz Nizipli) [#​49725](https://redirect.github.com/nodejs/node/pull/49725) - \[[`7b6a73172f`](https://redirect.github.com/nodejs/node/commit/7b6a73172f)] - **doc**: deprecate calling `promisify` on a function that returns a promise (Antoine du Hamel) [#​49647](https://redirect.github.com/nodejs/node/pull/49647) - \[[`1beefd5f16`](https://redirect.github.com/nodejs/node/commit/1beefd5f16)] - **esm**: set all hooks as release candidate (Geoffrey Booth) [#​49597](https://redirect.github.com/nodejs/node/pull/49597) - \[[`b0ce78a75b`](https://redirect.github.com/nodejs/node/commit/b0ce78a75b)] - **module**: fix the leak in SourceTextModule and ContextifySript (Joyee Cheung) [#​48510](https://redirect.github.com/nodejs/node/pull/48510) - \[[`4e578f8ab1`](https://redirect.github.com/nodejs/node/commit/4e578f8ab1)] - **module**: fix leak of vm.SyntheticModule (Joyee Cheung) [#​48510](https://redirect.github.com/nodejs/node/pull/48510) - \[[`69e4218772`](https://redirect.github.com/nodejs/node/commit/69e4218772)] - **module**: use symbol in WeakMap to manage host defined options (Joyee Cheung) [#​48510](https://redirect.github.com/nodejs/node/pull/48510) - \[[`14ece0aa76`](https://redirect.github.com/nodejs/node/commit/14ece0aa76)] - **(SEMVER-MINOR)** **src**: allow embedders to override NODE_MODULE_VERSION (Cheng Zhao) [#​49279](https://redirect.github.com/nodejs/node/pull/49279) - \[[`9fd67fbff0`](https://redirect.github.com/nodejs/node/commit/9fd67fbff0)] - **stream**: use bitmap in writable state (Raz Luvaton) [#​49834](https://redirect.github.com/nodejs/node/pull/49834) - \[[`0ccd4638ac`](https://redirect.github.com/n

Configuration

📅 Schedule: Branch creation - "after 10pm every weekday,before 5am every weekday,every weekend" in timezone Europe/Moscow, Automerge - At any time (no schedule defined).

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

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.



This PR was generated by Mend Renovate. View the repository job log.

github-actions[bot] commented 4 months ago

Thanks for opening an issue! Make sure you've followed CONTRIBUTING.md.

github-actions[bot] commented 4 months ago

Hello from PR Helper

Is your PR ready for review and processing? Mark the PR ready by including #pr-ready in a comment.

If you still have work to do, even after marking this ready. Put the PR on hold by including #pr-onhold in a comment.

github-actions[bot] commented 4 months ago

Thanks for the PR!

This section of the codebase is owner by https://github.com/AlexRogalskiy/ - if they write a comment saying "LGTM" then it will be merged.