Commit Graph
240 Commits
Author SHA1 Message Date
James M Snell 27d6cfa9b2 net: improve performance of net.BlockList
* fix duplicate address insertion in SocketAddressBlockList
* fix BlockList rule listing order to match apply
* add minor bound check in BlockList
* improve performance of BlockList apply
* eliminating shared_ptr
* check fast api path
* add clear method to BlockList
* general storage improvements to BlockList
* use shared locks for BlockList reads
* add bulk address adding to BlockList
* add BlockList benchmark
* add remove range/subnet to BlockList
* add cidr notation parsing to BlockList
* add additional apis to BlockList
* add private subnet presets to BlockList

Signed-off-by: James M Snell <jasnell@gmail.com>
Assisted-by: OpenCode/Opus
PR-URL: https://github.com/nodejs/node/pull/64974
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
2026-08-06 05:50:42 -07:00
Antoine du Hamel 3f2fc8aaef 2026-08-05, Version 26.7.0 (Current)
Notable changes:

crypto:
  * (SEMVER-MINOR) support loading private keys through STORE loaders (Filip Skokan) https://github.com/nodejs/node/pull/63949
  * update root certificates to NSS 3.125 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/64746
lib:
  * (SEMVER-MINOR) add perfetto support (Chengzhong Wu) https://github.com/nodejs/node/pull/64565
module:
  * (SEMVER-MINOR) implement `Symbol.dispose` in ModuleHooks (Remco Haszing) https://github.com/nodejs/node/pull/63928
test_runner:
  * (SEMVER-MINOR) add support for `--test-coverage-include-all` (avivkeller) https://github.com/nodejs/node/pull/64830

PR-URL: https://github.com/nodejs/node/pull/65027
2026-08-05 18:21:40 +02:00
Antoine du Hamel 401ea64c3e 2026-08-03, Version 24.19.0 'Krypton' (LTS)
Notable changes:

buffer:
  * (SEMVER-MINOR) implement `blob.textStream()` (Matthew Aitken) https://github.com/nodejs/node/pull/64036
deps:
  * (SEMVER-MINOR) update OpenSSL build config to support compression (Tim Perry) https://github.com/nodejs/node/pull/62217
doc:
  * (SEMVER-MINOR) update `blockList` stability status to release candidate (alphaleadership) https://github.com/nodejs/node/pull/63050
  * mark `stream.compose` stable (Matteo Collina) https://github.com/nodejs/node/pull/62562
esm:
  * (SEMVER-MINOR) add `--experimental-import-text` flag (Efe) https://github.com/nodejs/node/pull/62300
fs:
  * (SEMVER-MINOR) support caller-supplied `readFile()` buffers (Matteo Collina) https://github.com/nodejs/node/pull/63634
http:
  * (SEMVER-MINOR) add `httpValidation` option to configure header value validation (RajeshKumar11) https://github.com/nodejs/node/pull/61597
net:
  * (SEMVER-MINOR) support `TCP_KEEPINTVL` and `TCP_KEEPCNT` in `setKeepAlive` (Guy Bedford) https://github.com/nodejs/node/pull/63825
perf_hooks:
  * (SEMVER-MINOR) sample delay per event loop iteration (Pablo Erhard) https://github.com/nodejs/node/pull/62935
src:
  * (SEMVER-MINOR) allow empty `--experimental-config-file` (Marco Ippolito) https://github.com/nodejs/node/pull/61610
stream:
  * (SEMVER-MINOR) expose `ReadableStreamTee` (Matteo Collina) https://github.com/nodejs/node/pull/64195
tls:
  * (SEMVER-MINOR) report negotiated TLS groups (Filip Skokan) https://github.com/nodejs/node/pull/64119
  * (SEMVER-MINOR) add `certificateCompression` option (Tim Perry) https://github.com/nodejs/node/pull/62217

PR-URL: https://github.com/nodejs/node/pull/64654
2026-08-03 15:30:35 +02:00
greenhead 808904f229 doc: fix typos in documentation
Signed-off-by: greenhead <shren0812@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/64900
Reviewed-By: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
2026-08-03 11:44:23 +00:00
Ethan Arrowood 6d8baeabb0 net: add experimental net/promises API
Add an experimental `net/promises` namespace, accessible via
`require('node:net/promises')` or `net.promises`, mirroring the existing
`fs/promises` and `dns/promises` modules.

It provides promise-based variants of net's one-shot lifecycle
operations:

- `connect()` returns a promise that fulfills with a connected Socket
  once the 'connect' event fires, and rejects on connection failure or
  when an optional AbortSignal is aborted, destroying the socket.
- `listen()` creates a server, begins listening, and returns a promise
  that fulfills with the listening Server once the 'listening' event
  fires. It rejects if the server fails to bind or an optional
  AbortSignal is aborted, closing the server.

The functions are named for the actions they await, forming a parallel
`connect()`/`listen()` pair. This is intentionally not the callback
API's factory taxonomy: there `createConnection()` is canonical because
it both creates a socket and initiates connecting, whereas
`createServer()` is a pure factory that does not listen. A
`createConnection`/`createServer` pairing would be inconsistent here
because `createServer` has no completion to await, so no
`createConnection` alias is provided.

Refs: https://github.com/nodejs/node/issues/21482
Assisted-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Ethan Arrowood <ethan@arrowood.dev>
PR-URL: https://github.com/nodejs/node/pull/63965
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2026-07-28 19:29:48 +00:00
Matteo Collina fdcb1de9fe net: support TCP handle transfer on Windows
Signed-off-by: Matteo Collina <hello@matteocollina.com>
PR-URL: https://github.com/nodejs/node/pull/64460
Fixes: https://github.com/nodejs/node/issues/64456
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Stefan Stojanovic <stefan.stojanovic@janeasystems.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2026-07-24 17:25:38 -07:00
Guy Bedford b420cb649d net: support AF_UNIX paths in net.BoundSocket
Signed-off-by: Guy Bedford <guybedford@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/64399
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2026-07-24 16:11:39 -07:00
YuSheng Chen 1b42f7600e doc: fix socket.readyState state descriptions
Signed-off-by: yusheng <samuel871211@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/64468
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2026-07-20 21:51:40 +00:00
Guy Bedford 39ed68cd7c net: support sync connect for BoundSocket
When a net.Socket is constructed from a net.BoundSocket, support
synchronous connect().

Signed-off-by: Guy Bedford <guybedford@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/64375
Reviewed-By: James M Snell <jasnell@gmail.com>
2026-07-16 00:56:40 +00:00
Efe KarasakalandHerrtian e84b517d67 doc: document net Socket server property
Based on #63458.

Co-authored-by: Herrtian <70463940+Herrtian@users.noreply.github.com>
Signed-off-by: Efe Karasakal <hi@efe.dev>
Signed-off-by: Herrtian <70463940+Herrtian@users.noreply.github.com>
PR-URL: https://github.com/nodejs/node/pull/64364
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2026-07-13 18:58:47 +00:00
Matteo Collina 47b6ef28e6 net: make TCP Server and Socket transferable across worker threads
Allow a listening net.Server or an accepted net.Socket to be moved to
another thread by listing it in the transferList of a worker_threads
postMessage() call. Unix only; Windows throws.

Signed-off-by: Matteo Collina <hello@matteocollina.com>
PR-URL: https://github.com/nodejs/node/pull/64225
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
2026-07-12 15:11:28 +00:00
Antoine du Hamel cc37ad592f 2026-06-24, Version 26.4.0 (Current)
Notable changes:

deps:
  * (SEMVER-MINOR) update OpenSSL build config to support compression (Tim Perry) https://github.com/nodejs/node/pull/62217
doc:
  * (SEMVER-MINOR) update `blockList` stability status to release candidate (alphaleadership) https://github.com/nodejs/node/pull/63050
fs:
  * (SEMVER-MINOR) support caller-supplied `readFile()` buffers (Matteo Collina) https://github.com/nodejs/node/pull/63634
http:
  * (SEMVER-MINOR) close pre-request sockets in `closeIdleConnections` (semimikoh) https://github.com/nodejs/node/pull/63470
loader:
  * (SEMVER-MINOR) implement package maps (Maël Nison) https://github.com/nodejs/node/pull/62239
net:
  * (SEMVER-MINOR) support `TCP_KEEPINTVL` and `TCP_KEEPCNT` in `setKeepAlive` (Guy Bedford) https://github.com/nodejs/node/pull/63825
tls:
  * (SEMVER-MINOR) add `certificateCompression` option (Tim Perry) https://github.com/nodejs/node/pull/62217
vfs:
  * (SEMVER-MINOR) dispatch `node:fs/promises` to mounted VFS instances (Matteo Collina) https://github.com/nodejs/node/pull/63537
  * (SEMVER-MINOR) add minimal `node:vfs` subsystem (Matteo Collina) https://github.com/nodejs/node/pull/63115

PR-URL: https://github.com/nodejs/node/pull/64058
2026-06-25 01:20:15 +02:00
Guy Bedford e3cdb14678 net: early TCP binding via synchronous net.BoundSocket
Signed-off-by: Guy Bedford <guybedford@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/63951
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2026-06-20 14:40:48 -07:00
Guy Bedford 1efdce3353 net: support TCP_KEEPINTVL and TCP_KEEPCNT in setKeepAlive
Signed-off-by: Guy Bedford <guybedford@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/63825
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2026-06-13 23:12:25 +00:00
alphaleadership 60dab8d2e3 doc: update blockList stability status to release candidate
Signed-off-by: arbinger <alphaleadershipyt@protonmail.com>
PR-URL: https://github.com/nodejs/node/pull/63050
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
2026-06-02 15:24:30 +02:00
Node.js GitHub Bot 0dceddde2c 2026-04-15, Version 24.15.0 'Krypton' (LTS)
Notable changes:

cli:
  * (SEMVER-MINOR) add --max-heap-size option (tannal) https://github.com/nodejs/node/pull/58708
  * add --require-module/--no-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/60959
crypto:
  * (SEMVER-MINOR) add raw key formats support to the KeyObject APIs (Filip Skokan) https://github.com/nodejs/node/pull/62240
fs:
  * (SEMVER-MINOR) add `throwIfNoEntry` option for fs.stat and fs.promises.stat (Juan José) https://github.com/nodejs/node/pull/61178
http2:
  * (SEMVER-MINOR) add http1Options for HTTP/1 fallback configuration (Amol Yadav) https://github.com/nodejs/node/pull/61713
module:
  * mark require(esm) as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60959
  * mark module compile cache as stable (Joyee Cheung) https://github.com/nodejs/node/pull/60971
net:
  * (SEMVER-MINOR) add `setTOS` and `getTOS` to `Socket` (Amol Yadav) https://github.com/nodejs/node/pull/61503
sqlite:
  * (SEMVER-MINOR) add limits property to DatabaseSync (Mert Can Altin) https://github.com/nodejs/node/pull/61298
  * mark as release candidate (Matteo Collina) https://github.com/nodejs/node/pull/61262
src:
  * (SEMVER-MINOR) add C++ support for diagnostics channels (RafaelGSS) https://github.com/nodejs/node/pull/61869
stream:
  * (SEMVER-MINOR) rename `Duplex.toWeb()` type option to `readableType` (René) https://github.com/nodejs/node/pull/61632
test_runner:
  * add exports option for module mocks (sangwook) https://github.com/nodejs/node/pull/61727
  * (SEMVER-MINOR) expose worker ID for concurrent test execution (Ali Hassan) https://github.com/nodejs/node/pull/61394
  * (SEMVER-MINOR) show interrupted test on SIGINT (Matteo Collina) https://github.com/nodejs/node/pull/61676

PR-URL: https://github.com/nodejs/node/pull/62681
2026-04-15 18:59:05 +02:00
YuSheng Chen d0e75fd65b doc: fix broken links of net.md
PR-URL: https://github.com/nodejs/node/pull/61673
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2026-02-09 15:32:50 +00:00
Antoine du Hamel 1818bb7e81 2026-02-03, Version 25.6.0 (Current)
Notable changes:

async_hooks:
  * (SEMVER-MINOR) add `trackPromises` option to `createHook()` (Joyee Cheung) https://github.com/nodejs/node/pull/61415
net:
  * (SEMVER-MINOR) add `setTOS` and `getTOS` to `Socket` (Amol Yadav) https://github.com/nodejs/node/pull/61503
src:
  * (SEMVER-MINOR) add initial support for ESM in embedder API (Joyee Cheung) https://github.com/nodejs/node/pull/61548
  * improve `TextEncoder` encode performance with `simdutf` (Mert Can Altin) https://github.com/nodejs/node/pull/61496
stream:
  * (SEMVER-MINOR) add `bytes()` method to `node:stream/consumers` (wantaek) https://github.com/nodejs/node/pull/60426
test_runner:
  * (SEMVER-MINOR) add `env` option to `run` function (Ethan Arrowood) https://github.com/nodejs/node/pull/61367
url:
  * update Ada to v3.4.2 and support Unicode 17 (Yagiz Nizipli) https://github.com/nodejs/node/pull/61593

PR-URL: https://github.com/nodejs/node/pull/61635
2026-02-03 12:37:44 +01:00
YuSheng Chen 9ee3566f3b doc: update server.dropMaxConnection link
PR-URL: https://github.com/nodejs/node/pull/61584
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
2026-02-03 08:38:19 +00:00
Amol Yadav 5212c07147 net: add setTOS and getTOS to Socket
PR-URL: https://github.com/nodejs/node/pull/61503
Fixes: https://github.com/nodejs/node/issues/61489
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2026-02-02 12:23:31 +01:00
mag123c 650f51fe45 doc: add reusePort error behavior to net module
PR-URL: https://github.com/nodejs/node/pull/61250
Fixes: https://github.com/nodejs/node/issues/61018
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2026-01-04 02:13:31 +00:00
Xavier Stouder 879b95efea doc: correct options for net.Socket class and socket.connect
blockList, keepAlive, keepAliveInitialDelay and noDelay are wrongly
documented for socket.connect options and missing on net.Socket
constructor options documentation

Fixes: https://github.com/nodejs/node/issues/59823
PR-URL: https://github.com/nodejs/node/pull/61179
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
2025-12-29 00:47:15 +00:00
Rod Vagg 71da1a8495 net: increase network family autoselection timeout to 500ms
The current 250ms timeout is too short for high-latency network
environments, causing connection failures in IPv4-only networks when
connecting to dual-stack hosts. This increases the timeout to 500ms
to better handle satellite, cellular, and geographically distant
connections.

The timeout should be reconsidered when parallel connections are
implemented as per RFC 8305.

Refs: https://github.com/nodejs/node/issues/54359
Refs: https://github.com/nodejs/node/issues/48145
PR-URL: https://github.com/nodejs/node/pull/60334
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2025-11-04 17:56:49 +00:00
Node.js GitHub Bot fba8e6ab4a 2025-08-28, Version 22.19.0 'Jod' (LTS)
Notable changes:

cli:
  * (SEMVER-MINOR) add NODE_USE_SYSTEM_CA=1 (Joyee Cheung) https://github.com/nodejs/node/pull/59276
  * (SEMVER-MINOR) support `${pid}` placeholder in --cpu-prof-name (Haram Jeong) https://github.com/nodejs/node/pull/59072
crypto:
  * (SEMVER-MINOR) add tls.setDefaultCACertificates() (Joyee Cheung) https://github.com/nodejs/node/pull/58822
dns:
  * (SEMVER-MINOR) support max timeout (theanarkh) https://github.com/nodejs/node/pull/58440
doc:
  * update the instruction on how to verify releases (Antoine du Hamel) https://github.com/nodejs/node/pull/59113
esm:
  * (SEMVER-MINOR) unflag --experimental-wasm-modules (Guy Bedford) https://github.com/nodejs/node/pull/57038
http:
  * (SEMVER-MINOR) add server.keepAliveTimeoutBuffer option (Haram Jeong) https://github.com/nodejs/node/pull/59243
lib:
  * docs deprecate _http_* (Sebastian Beltran) https://github.com/nodejs/node/pull/59293
net:
  * (SEMVER-MINOR) update net.blocklist to allow file save and file management (alphaleadership) https://github.com/nodejs/node/pull/58087
process:
  * (SEMVER-MINOR) add threadCpuUsage (Paolo Insogna) https://github.com/nodejs/node/pull/56467
zlib:
  * (SEMVER-MINOR) add dictionary support to zstdCompress and zstdDecompress (lluisemper) https://github.com/nodejs/node/pull/59240

PR-URL: https://github.com/nodejs/node/pull/59641
2025-08-28 23:08:02 +02:00
Antoine du Hamel c836bd6746 2025-07-31, Version 24.5.0 (Current)
Notable changes:

cli:
  * (SEMVER-MINOR) support `${pid}` placeholder in `--cpu-prof-name` (Haram Jeong) https://github.com/nodejs/node/pull/59072
crypto:
  * (SEMVER-MINOR) add `tls.setDefaultCACertificates()` (Joyee Cheung) https://github.com/nodejs/node/pull/58822
deps:
  * upgrade to openssl-3.5.1 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/59234
dns:
  * (SEMVER-MINOR) support max timeout (theanarkh) https://github.com/nodejs/node/pull/58440
doc:
  * update the instruction on how to verify releases (Antoine du Hamel) https://github.com/nodejs/node/pull/59113
esm:
  * (SEMVER-MINOR) unflag `--experimental-wasm-modules` (Guy Bedford) https://github.com/nodejs/node/pull/57038
http,https:
  * (SEMVER-MINOR) add built-in proxy support in http/https.request and `Agent` (Joyee Cheung) https://github.com/nodejs/node/pull/58980
net:
  * (SEMVER-MINOR) update net.blocklist to allow file save and file management (alphaleadership) https://github.com/nodejs/node/pull/58087
test:
  * (SEMVER-MINOR) move http proxy tests to test/client-proxy (Joyee Cheung) https://github.com/nodejs/node/pull/58980
worker:
  * (SEMVER-MINOR) add web locks api (ishabi) https://github.com/nodejs/node/pull/58666

PR-URL: https://github.com/nodejs/node/pull/59257
2025-07-31 23:44:19 +02:00
Aviv Keller 4102dcc226 doc: fix typed list formatting
PR-URL: https://github.com/nodejs/node/pull/59019
Refs: https://github.com/nodejs/api-docs-tooling/issues/348
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
Reviewed-By: Claudio Wunder <cwunder@gnome.org>
2025-07-15 17:18:42 +00:00
alphaleadership 4de0197441 net: update net.blocklist to allow file save and file management
PR-URL: https://github.com/nodejs/node/pull/58087
Fixes: https://github.com/nodejs/node/issues/56252
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-07-08 20:37:51 +00:00
Node.js GitHub Bot fe4aa9c502 2025-06-09, Version 24.2.0 (Current)
Notable changes:

doc:
  * add Filip Skokan to TSC (Rafael Gonzaga) https://github.com/nodejs/node/pull/58499
  * deprecate `util.isNativeError` in favor of `Error.isError` (Miguel Marcondes Filho) https://github.com/nodejs/node/pull/58262
  * deprecate passing an empty string to `options.shell` (Antoine du Hamel) https://github.com/nodejs/node/pull/58564
  * deprecate HTTP/2 priority signaling (Matteo Collina) https://github.com/nodejs/node/pull/58313
  * (SEMVER-MINOR) graduate `Symbol.dispose`/`asyncDispose` from experimental (James M Snell) https://github.com/nodejs/node/pull/58467
esm:
  * (SEMVER-MINOR) implement import.meta.main (Joe) https://github.com/nodejs/node/pull/57804
fs:
  * (SEMVER-MINOR) add `autoClose` option to `FileHandle` `readableWebStream` (James M Snell) https://github.com/nodejs/node/pull/58548
http:
  * deprecate instantiating classes without new (Yagiz Nizipli) https://github.com/nodejs/node/pull/58518
http2:
  * (SEMVER-MINOR) add diagnostics channel 'http2.server.stream.finish' (Darshan Sen) https://github.com/nodejs/node/pull/58560
  * (SEMVER-MAJOR) remove support for priority signaling (Matteo Collina) https://github.com/nodejs/node/pull/58293
lib:
  * (SEMVER-MINOR) graduate error codes that have been around for years (James M Snell) https://github.com/nodejs/node/pull/58541
perf_hooks:
  * (SEMVER-MINOR) make event loop delay histogram disposable (James M Snell) https://github.com/nodejs/node/pull/58384
src:
  * (SEMVER-MINOR) support namespace options in configuration file (Pietro Marchini) https://github.com/nodejs/node/pull/58073
permission:
  * implicit allow-fs-read to app entrypoint (Rafael Gonzaga) https://github.com/nodejs/node/pull/58579
test:
  * (SEMVER-MINOR) add disposable histogram test (James M Snell) https://github.com/nodejs/node/pull/58384
  * (SEMVER-MINOR) add test for async disposable worker thread (James M Snell) https://github.com/nodejs/node/pull/58385
util:
  * (SEMVER-MINOR) add 'none' style to styleText (James M Snell) https://github.com/nodejs/node/pull/58437
worker:
  * (SEMVER-MINOR) make Worker async disposable (James M Snell) https://github.com/nodejs/node/pull/58385

PR-URL: https://github.com/nodejs/node/pull/58635
2025-06-09 23:45:29 +02:00
James M Snell ba6651ab4f doc: graduate Symbol.dispose/asyncDispose from experimental
Now that Symbol.dispose and Symbol.asyncDispose have been
enabled by default and are expected to likely advance to
stage 4 this week, let's graduate them from experimental
status.

PR-URL: https://github.com/nodejs/node/pull/58467
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Dario Piotrowicz <dario.piotrowicz@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2025-05-28 09:51:25 -07:00
Ruy Adorno a344300bfa 2025-01-07, Version 22.13.0 'Jod' (LTS)
Notable changes:

assert:
  * (SEMVER-MINOR) add partialDeepStrictEqual (Giovanni Bucci) https://github.com/nodejs/node/pull/54630
cli:
  * (SEMVER-MINOR) implement --trace-env and --trace-env-[js|native]-stack (Joyee Cheung) https://github.com/nodejs/node/pull/55604
crypto:
  * graduate WebCryptoAPI Ed25519 and X25519 algorithms as stable (Filip Skokan) https://github.com/nodejs/node/pull/56142
dgram:
  * (SEMVER-MINOR) support blocklist in udp (theanarkh) https://github.com/nodejs/node/pull/56087
doc:
  * stabilize util.styleText (Rafael Gonzaga) https://github.com/nodejs/node/pull/56265
  * move typescript support to active development (Marco Ippolito) https://github.com/nodejs/node/pull/55536
  * add LJHarb to collaborators (Jordan Harband) https://github.com/nodejs/node/pull/56132
  * (SEMVER-MINOR) add report version and history section (Chengzhong Wu) https://github.com/nodejs/node/pull/56130
  * (SEMVER-MINOR) sort --report-exclude alphabetically (Rafael Gonzaga) https://github.com/nodejs/node/pull/55788
doc,lib,src,test:
  * (SEMVER-MINOR) unflag sqlite module (Colin Ihrig) https://github.com/nodejs/node/pull/55890
module:
  * (SEMVER-MINOR) only emit require(esm) warning under --trace-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/56194
  * (SEMVER-MINOR) add module.stripTypeScriptTypes (Marco Ippolito) https://github.com/nodejs/node/pull/55282
net:
  * (SEMVER-MINOR) support blocklist in net.connect (theanarkh) https://github.com/nodejs/node/pull/56075
  * (SEMVER-MINOR) add SocketAddress.parse (James M Snell) https://github.com/nodejs/node/pull/56076
  * (SEMVER-MINOR) add net.BlockList.isBlockList(value) (James M Snell) https://github.com/nodejs/node/pull/56078
  * (SEMVER-MINOR) support blocklist for net.Server (theanarkh) https://github.com/nodejs/node/pull/56079
process:
  * (SEMVER-MINOR) deprecate `features.{ipv6,uv}` and `features.tls_*` (René) https://github.com/nodejs/node/pull/55545
report:
  * (SEMVER-MINOR) fix typos in report keys and bump the version (Yuan-Ming Hsu) https://github.com/nodejs/node/pull/56068
sqlite:
  * (SEMVER-MINOR) aggregate constants in a single property (Edigleysson Silva (Edy)) https://github.com/nodejs/node/pull/56213
  * (SEMVER-MINOR) add `StatementSync.prototype.iterate` method (tpoisseau) https://github.com/nodejs/node/pull/54213
src:
  * (SEMVER-MINOR) add cli option to preserve env vars on dr (Rafael Gonzaga) https://github.com/nodejs/node/pull/55697
src,lib:
  * (SEMVER-MINOR) stabilize permission model (Rafael Gonzaga) https://github.com/nodejs/node/pull/56201
util:
  * (SEMVER-MINOR) add sourcemap support to getCallSites (Marco Ippolito) https://github.com/nodejs/node/pull/55589

PR-URL: https://github.com/nodejs/node/pull/56329
2025-01-07 14:36:47 -05:00
Antoine du Hamel b9329306c6 2024-12-10, Version 23.4.0 (Current)
Notable changes:

assert:
  * (SEMVER-MINOR) add partialDeepStrictEqual (Giovanni Bucci) https://github.com/nodejs/node/pull/54630
cli:
  * (SEMVER-MINOR) implement --trace-env and --trace-env-[js|native]-stack (Joyee Cheung) https://github.com/nodejs/node/pull/55604
doc:
  * add LJHarb to collaborators (Jordan Harband) https://github.com/nodejs/node/pull/56132
doc,lib,src,test:
  * (SEMVER-MINOR) unflag sqlite module (Colin Ihrig) https://github.com/nodejs/node/pull/55890
net:
  * (SEMVER-MINOR) support blocklist in net.connect (theanarkh) https://github.com/nodejs/node/pull/56075
  * (SEMVER-MINOR) add SocketAddress.parse (James M Snell) https://github.com/nodejs/node/pull/56076
  * (SEMVER-MINOR) add net.BlockList.isBlockList(value) (James M Snell) https://github.com/nodejs/node/pull/56078
  * (SEMVER-MINOR) support blocklist for net.Server (theanarkh) https://github.com/nodejs/node/pull/56079
process:
  * (SEMVER-MINOR) deprecate `features.{ipv6,uv}` and `features.tls_*` (René) https://github.com/nodejs/node/pull/55545
sqlite:
  * (SEMVER-MINOR) add `StatementSync.prototype.iterate` method (tpoisseau) https://github.com/nodejs/node/pull/54213

PR-URL: https://github.com/nodejs/node/pull/56119
2024-12-10 16:36:07 +01:00
theanarkh f26a1da909 net: support blocklist in net.connect
PR-URL: https://github.com/nodejs/node/pull/56075
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-12-06 04:36:24 +00:00
James M Snell 3c2da4b849 net: add SocketAddress.parse
Adds a new `net.SocketAddress.parse(...)` API.

```js
const addr = SocketAddress.parse('123.123.123.123:1234');
console.log(addr.address);  // 123.123.123.123
console.log(addr.port); 1234
```

PR-URL: https://github.com/nodejs/node/pull/56076
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2024-12-04 09:29:30 -08:00
James M Snell c7de0ec86c net: add net.BlockList.isBlockList(value)
PR-URL: https://github.com/nodejs/node/pull/56078
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: theanarkh <theratliter@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2024-12-04 07:48:30 -08:00
Ruy Adorno 7924ea3518 2024-12-03, Version 22.12.0 'Jod' (LTS)
Notable changes:

assert:
  * (SEMVER-MINOR) make assertion_error use Myers diff algorithm (Giovanni Bucci) https://github.com/nodejs/node/pull/54862
buffer:
  * (SEMVER-MINOR) make Buffer work with resizable ArrayBuffer (James M Snell) https://github.com/nodejs/node/pull/55377
crypto:
  * update root certificates to NSS 3.104 (Richard Lau) https://github.com/nodejs/node/pull/55681
doc:
  * enforce strict policy to semver-major releases (Rafael Gonzaga) https://github.com/nodejs/node/pull/55732
  * add jazelly to collaborators (Jason Zhang) https://github.com/nodejs/node/pull/55531
esm:
  * mark import attributes and JSON module as stable (Nicolò Ribaudo) https://github.com/nodejs/node/pull/55333
http:
  * (SEMVER-MINOR) add diagnostic channel `http.client.request.created` (Marco Ippolito) https://github.com/nodejs/node/pull/55586
lib:
  * (SEMVER-MINOR) add UV_UDP_REUSEPORT for udp (theanarkh) https://github.com/nodejs/node/pull/55403
module:
  * (SEMVER-MINOR) unflag --experimental-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/55085
net:
  * (SEMVER-MINOR) add UV_TCP_REUSEPORT for tcp (theanarkh) https://github.com/nodejs/node/pull/55408
sqlite:
  * (SEMVER-MINOR) add support for SQLite Session Extension (Bart Louwers) https://github.com/nodejs/node/pull/54181
tools:
  * fix root certificate updater (Richard Lau) https://github.com/nodejs/node/pull/55681

PR-URL: https://github.com/nodejs/node/pull/56040
2024-12-03 14:44:27 -05:00
theanarkh d5d1e80763 net: support blocklist for net.Server
PR-URL: https://github.com/nodejs/node/pull/56079
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
2024-12-02 15:21:31 +00:00
Antoine du Hamel 7ddd2c2282 2024-10-24, Version 23.1.0 (Current)
Notable changes:

assert:
  * (SEMVER-MINOR) make `assertion_error` use Myers diff algorithm (Giovanni Bucci) https://github.com/nodejs/node/pull/54862
buffer:
  * (SEMVER-MINOR) make `Buffer` work with resizable `ArrayBuffer` (James M Snell) https://github.com/nodejs/node/pull/55377
esm:
  * mark import attributes and JSON module as stable (Nicolò Ribaudo) https://github.com/nodejs/node/pull/55333
lib:
  * (SEMVER-MINOR) add `UV_UDP_REUSEPORT` for udp (theanarkh) https://github.com/nodejs/node/pull/55403
net:
  * (SEMVER-MINOR) add `UV_TCP_REUSEPORT` for tcp (theanarkh) https://github.com/nodejs/node/pull/55408
test_runner:
  * mark `MockTimers` as stable (Erick Wendel) https://github.com/nodejs/node/pull/55398

PR-URL: https://github.com/nodejs/node/pull/55513
2024-10-24 23:26:25 +02:00
theanarkh 7bc3e16da1 net: add UV_TCP_REUSEPORT for tcp
PR-URL: https://github.com/nodejs/node/pull/55408
Refs: https://github.com/libuv/libuv/pull/4407
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-10-21 13:10:53 +00:00
theanarkh cf7406927f lib: add flag to drop connection when running in cluster mode
PR-URL: https://github.com/nodejs/node/pull/54927
Refs: https://github.com/nodejs/node/issues/54882
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2024-10-17 15:11:41 +00:00
Ihor Rohovets 32efeea0c0 doc: fix initial default value of autoSelectFamily
Specify the initial default value of `autoSelectFamily`
in description of `net.setDefaultAutoSelectFamily()`
as specified in description of `net.getDefaultAutoSelectFamily()`.

PR-URL: https://github.com/nodejs/node/pull/55245
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
2024-10-05 02:06:36 +00:00
Alfredo González e6427e1d87 doc: add esm examples to node:net
PR-URL: https://github.com/nodejs/node/pull/55134
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2024-09-28 15:48:33 +00:00
sendoru 5368cdcf8a doc: move the YAML changes element
moved YAML changes element regarding to `onread` option
from `socket.connect(options[, connectListener])`
to `new net.Socket([options])`

PR-URL: https://github.com/nodejs/node/pull/55112
Refs: https://github.com/nodejs/node/pull/25436
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2024-09-28 13:51:22 +00:00
sendoru a5200da1d0 doc: move onread option from socket.connect() to new net.socket()
Fixes: https://github.com/nodejs/node/issues/53792
PR-URL: https://github.com/nodejs/node/pull/54194
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
2024-08-05 23:36:20 +00:00
theanarkh 75884678d7 src: add UV_PIPE_NO_TRUNCATE for bind in pipe_wrap.cc
PR-URL: https://github.com/nodejs/node/pull/52347
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
2024-05-06 12:56:36 +00:00
Luigi Pinca a6f9a34c54 doc: replace U+00A0 with U+0020
Replace NO-BREAK SPACE (U+00A0) with SPACE (U+0020) in `doc/api/net.md`.

PR-URL: https://github.com/nodejs/node/pull/52590
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2024-04-21 09:03:50 +00:00
Luigi Pinca ba9e1e0ffb doc: sort options alphabetically
Sort options alphabetically in `doc/api/net.md`.

PR-URL: https://github.com/nodejs/node/pull/52589
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2024-04-21 08:55:04 +00:00
Paolo Insogna 833e342f15 net: add CLI option for autoSelectFamilyAttemptTimeout
PR-URL: https://github.com/nodejs/node/pull/52474
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2024-04-17 09:06:12 +00:00
Richard Lau 6d2d3f17ba 2024-03-26, Version 20.12.0 'Iron' (LTS)
Notable changes:

build:
  * (SEMVER-MINOR) build opt to set local location of headers (Michael Dawson) https://github.com/nodejs/node/pull/51525
crypto:
  * (SEMVER-MINOR) implement crypto.hash() (Joyee Cheung) https://github.com/nodejs/node/pull/51044
  * update root certificates to NSS 3.98 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/51794
doc:
  * add lemire to collaborators (Daniel Lemire) https://github.com/nodejs/node/pull/51572
  * add zcbenz to collaborators (Cheng Zhao) https://github.com/nodejs/node/pull/51812
lib:
  * (SEMVER-MINOR) move encodingsMap to internal/util (Joyee Cheung) https://github.com/nodejs/node/pull/51044
sea:
  * (SEMVER-MINOR) support sea.getRawAsset() (Joyee Cheung) https://github.com/nodejs/node/pull/50960
  * (SEMVER-MINOR) support embedding assets (Joyee Cheung) https://github.com/nodejs/node/pull/50960
src:
  * (SEMVER-MINOR) print string content better in BlobDeserializer (Joyee Cheung) https://github.com/nodejs/node/pull/50960
util:
  * (SEMVER-MINOR) add styleText API to text formatting (Rafael Gonzaga) https://github.com/nodejs/node/pull/51850
vm:
  * (SEMVER-MINOR) support using the default loader to handle dynamic import() (Joyee Cheung) https://github.com/nodejs/node/pull/51244

PR-URL: https://github.com/nodejs/node/pull/52212
2024-03-26 17:42:38 +00:00
theanarkh 707155424b doc: optimize the doc about Unix abstract socket
PR-URL: https://github.com/nodejs/node/pull/52043
Refs: https://github.com/nodejs/node/pull/50904
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2024-03-19 15:29:54 +00:00
Rafael Gonzaga e1d3ad4224 doc: fix type of connectionAttempt parameter
PR-URL: https://github.com/nodejs/node/pull/51490
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
2024-01-19 16:12:16 +00:00