Skip to content

2024-08-01 meeting #66

@lino-levan

Description

@lino-levan

Agenda

  • Review progress towards WinterTC
    • 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.
      • Full web integration document available at Add web integration document tc39/proposal-async-context#100.
    • 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.
  • Briefly discussed the CLI proposal
    • Not enough core members present to come to any conclusions

Attendance

Metadata

Metadata

Assignees

No one assigned

    Labels

    meetingAn issue announcing a meeting.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions