node/lib
Trivikram Kamat 75aec8ecf8
process: fix finalization cleanup ref tracking
Use SafeSet collections for finalization refs so insertion, removal,
and emptiness checks match the identity-based tracking model.

This also fixes cleanup removal for collected refs. Previously cleanup
used the ref index as the splice delete count, which could remove later
live refs when the collected ref was not first.

Signed-off-by: Kamat, Trivikram <16024985+trivikr@users.noreply.github.com>
Assisted-by: openai:gpt-5.5
PR-URL: https://github.com/nodejs/node/pull/64087
Fixes: https://github.com/nodejs/node/issues/64086
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk>
2026-06-30 21:38:02 +00:00
..
assert
dns
fs
inspector
internal process: fix finalization cleanup ref tracking 2026-06-30 21:38:02 +00:00
path
readline
stream stream: add stream/iter to classic stream adapters 2026-04-06 09:59:56 -07:00
test
timers
util
zlib stream: add stream/iter Implementation 2026-03-27 19:55:08 -07:00
_http_agent.js http: avoid stream listeners on idle agent sockets 2026-06-20 14:58:11 +00:00
_http_client.js http: add httpValidation option to configure header value validation 2026-05-30 08:10:58 +00:00
_http_common.js http: add httpValidation option to configure header value validation 2026-05-30 08:10:58 +00:00
_http_incoming.js http: make req.headers have a null prototype 2026-04-25 09:28:53 +00:00
_http_outgoing.js http: add httpValidation option to configure header value validation 2026-05-30 08:10:58 +00:00
_http_server.js http: add httpValidation option to configure header value validation 2026-05-30 08:10:58 +00:00
_tls_common.js
_tls_wrap.js
assert.js
async_hooks.js domain: port to AsyncLocalStorage 2026-06-21 19:42:03 +00:00
buffer.js buffer: optimize Buffer.prototype.copy 2026-06-12 23:26:19 +00:00
child_process.js lib: handle --permission-audit when propagating flags 2026-05-06 19:21:11 +00:00
cluster.js
console.js
constants.js
crypto.js crypto: implement randomUUIDv7() 2026-04-05 10:12:21 +00:00
dgram.js dgram: add synchronous Socket connectSync() 2026-06-17 19:09:05 +00:00
diagnostics_channel.js diagnostics_channel: return original thenable 2026-06-26 10:02:49 +00:00
dns.js dns,net: reject hostnames with embedded NUL bytes 2026-06-18 06:29:24 +02:00
domain.js domain: port to AsyncLocalStorage 2026-06-21 19:42:03 +00:00
dtls.js lib: apply minor dtls cleanups 2026-05-31 12:49:51 -07:00
eslint.config_partial.mjs lib: add Iterator global to primordials 2026-06-13 17:31:16 +00:00
events.js lib: lazily initialize kEvents and kHandlers maps 2026-06-23 16:19:28 +00:00
ffi.js ffi: add experimental fast FFI call API for AArch64 and x86_64 2026-06-16 09:35:02 +00:00
fs.js fs: support caller-supplied readFile() buffers 2026-06-13 10:08:05 +00:00
http.js
http2.js
https.js
inspector.js
module.js
net.js net: early TCP binding via synchronous net.BoundSocket 2026-06-20 14:40:48 -07:00
os.js
path.js Revert "path: fix win32 normalize false-positive on reserved names" 2026-06-30 14:29:38 +01:00
perf_hooks.js
process.js
punycode.js
querystring.js
quic.js quic: fix broken listEndpoints export, test callbacks & nghttp3 include 2026-06-14 13:06:39 +00:00
readline.js
repl.js repl: lazy-load acorn and defer vm context creation 2026-06-23 18:44:53 +09:00
sea.js
sqlite.js
stream.js
string_decoder.js
sys.js
test.js test_runner: add getTestContext() 2026-04-01 10:09:41 +00:00
timers.js
tls.js tls: add certificateCompression option 2026-06-19 16:07:24 +02:00
trace_events.js
tty.js
url.js
util.js lib: add lint rule to enforce use of kEmptyObject 2026-06-10 10:56:56 +00:00
v8.js v8: add cpu profile options 2026-04-26 19:36:36 +00:00
vfs.js vfs: add minimal node:vfs subsystem 2026-05-23 18:43:31 +00:00
vm.js lib: add lint rule to enforce use of kEmptyObject 2026-06-10 10:56:56 +00:00
wasi.js lib: add lint rule to enforce use of kEmptyObject 2026-06-10 10:56:56 +00:00
worker_threads.js
zlib.js zlib: expose rejectGarbageAfterEnd option 2026-06-27 11:22:32 +00:00