Skip to content

[pull] main from Hawthorne001:main#380

Merged
pull[bot] merged 1 commit intoMainbaseT:mainfrom
Hawthorne001:main
Feb 11, 2026
Merged

[pull] main from Hawthorne001:main#380
pull[bot] merged 1 commit intoMainbaseT:mainfrom
Hawthorne001:main

Conversation

@pull
Copy link

@pull pull bot commented Feb 11, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

The new exposed `AbortSignal.any()`, stores dependent signals via
`WeakRef` in the source signal's `dependentSignals` set. When the
dependent signal is created as a temporary (e.g.
`AbortSignal.any([...]).addEventListener("abort", cb)`), there are no
strong references to it. V8's GC can collect it, destroying the abort
listener and leaving promises unresolvable.

The fix stores a strong reference to dependent signals on the source
signal (via an `activeDependents` set) whenever `addEventListener` refs
a source timer. The strong reference is cleaned up in
`removeEventListener` and `runAbortSteps`.
@pull pull bot locked and limited conversation to collaborators Feb 11, 2026
@pull pull bot added the ⤵️ pull label Feb 11, 2026
@pull pull bot merged commit 652d4d2 into MainbaseT:main Feb 11, 2026
1 check failed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant