lib: add WeakRef and FinalizationRegistry to primordials#37263
lib: add WeakRef and FinalizationRegistry to primordials#37263aduh95 merged 1 commit intonodejs:masterfrom
WeakRef and FinalizationRegistry to primordials#37263Conversation
|
Thanks! Any chance you could also make the (new'ish) weak event handler machinery in event_target use this? (It's the other place I know in the code that uses FinalizationRegistry and WeakRef). |
|
I wouldn't expect this to work yet. WeakRef can still be disabled with a V8 flag ( |
|
I might just go change that, moving the error snapshot use instead of creation. |
|
FWIW, Node.js already fails to start when the |
|
@jasnell the issue is that V8 disables flagged globals during snapshot, regardless of whether you expect them to be available later or not. |
|
I'v e submitted https://chromium-review.googlesource.com/c/v8/v8/+/2741582/ to unblock this. |
|
@aduh95 cloudflare uses that flag for workers, probably can't land. |
|
I'd like to talk to the V8 team about a new flag system which allows them to be snapshotted, but they don't seem to care at all about our design constraints or maintaining contact with us so it's been delayed. |
|
Flag has been removed upstream, I've opened #38162 to test if that makes the tests pass. |
846fc79 to
f98f3b5
Compare
f98f3b5 to
0669710
Compare
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com> PR-URL: nodejs#37263 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
0669710 to
78343bb
Compare
|
Landed in 78343bb |
This cleans up the two TODOs in:
node/lib/internal/util/iterable_weak_map.js
Lines 11 to 21 in aac2713