You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Put the proposal on a vote at ECMA. Google and Mozilla were concerned about IP.
The proposal is to have every contributor to the Common Minimum API sign a transfer of copyright to ECMA. This would have to include any comments in meetings that led to a change in the spec.
Daniel and Andreu have committed to getting signatures from contributors.
Discussed AsyncContext in the context of server runtime apis (e.g. node/cf workers/deno)
For web APIs, APIs that take callbacks will store the context at the time the API is called, and will restore it when calling the callback.
Events have the context when addEventListener is called, which is the one that will be restored when the listener is called. But they might have another context (the dispatch snapshot), which is the JS context that caused the event to fire (e.g. the call to an API that started an async fetch that eventually fires an event). This dispatch snapshot isn't always present, e.g. for signals, IPC or messages from workers, since the thing that causes the event isn't JS code living inside the agent / V8 isolate.
In the web API, this dispatch snapshot might only be exposed for a subset of events, since it's not realistic to update every event in the web. It will be exposed as a property in Event subclasses, containing an AsyncContext.Snapshot value.
This clearly applies to WinterCG APIs, but we're hoping runtime-specific APIs would also use this.
Guy compared this to stack swtiching in WebAssembly (https://github.com/WebAssembly/stack-switching), suggesting that it might use similar mechanisms at the implementation level. Andreu was not previously aware of the parallels, and will look into it.
Agenda
AsyncContext
in the context of server runtime apis (e.g. node/cf workers/deno)addEventListener
is called, which is the one that will be restored when the listener is called. But they might have another context (the dispatch snapshot), which is the JS context that caused the event to fire (e.g. the call to an API that started an async fetch that eventually fires an event). This dispatch snapshot isn't always present, e.g. for signals, IPC or messages from workers, since the thing that causes the event isn't JS code living inside the agent / V8 isolate.Event
subclasses, containing anAsyncContext.Snapshot
value.Attendance
The text was updated successfully, but these errors were encountered: