- Where: zoom.us
- When: September 12th, 4pm-5pm UTC (9am-10am Pacific Time, 18h-19h Central European Time)
- Location: link on calendar invite
None required if you've attended before. Send an email to the acting WebAssembly CG chair to sign up if it's your first time. The meeting is open to CG members only.
The meeting will be on a zoom.us video conference. Installation is required, see the calendar invite.
- Opening, welcome and roll call
- Opening of the meeting
- Introduction of attendees
- Find volunteers for note taking (acting chair to volunteer)
- Proposals and discussions
- Exception handling announcements slides
- Reminder: Upcoming vote on the exnref proposal in the Oct CG meeting
- Adding Ben Titzer as a co-champion to the proposal
- Vote to advance function references and GC proposals to phase 4 [30 min]
- Teaser: a DSL for authoring the spec [Andreas Rossberg, 30 min]
- Exception handling announcements slides
- Closure
None
None
- Zalim Bashorov
- Sergey Rubanov
- Deepti Gandluri
- Alon Zakai
- Nuno Pereira
- Derek Schuff
- Thomas Lively
- Slava Kuzmich
- Ben Green
- Asumu Takikawa
- Heejin Ahn
- Yury Delendik
- Conrad Watt
- Ilya Rezvov
- Jeff Charles
- Paolo Severini
- Ryan Hunt
- Ben Titzer
- Saul Cabrera
- Francis McCabe
- Sam Lindley
- Ben Visness
- Adam Klein
- Yuri Iozzelli
- Luke Wagner
- Andreas Rossberg
- Fedor Smirnov
- Dan Gohman
- Ashley Nelson
- Sean Jensen-Grey
- Petr Penzin
- Gordon Aplin
- Andrew Brown
- Dan Philips
- Brendan Dahl
- Manos Koukoutos
- Ashley Nelson
- Ioanna Demetriou
- Daniel Hillerström
- Jakob Kummerow
- Chris Woods
- Bailey Hayes
- Emanuel Ziegler
- Shoaib Kamil
- Matthew Yacobucci
- Matthias Liedtke
- Marat Dukhan
- Johnnie Birch
- Shravan Narayan
- talg
- Sam Clegg
- Dean Srebnick
- Ghislain HUDE
- Igor Iakovlev
- Alex Crichton
HA presenting (slides)
Introducing BT as co-champion
Couple of issues are linked in the EH proposal to reintroduce Exnref
Will be voting on the proposed changes (reintroducing exnref) in Oct in-person CG
AR presenting (slides)
BT: SA vote to advance both proposals to Phase 4
AT: The test covers the JS API behavior for structs and arrays, it’s ready and updated with the latest opcodes. What's missing is more tests for the casts that are used at the boundary; eg if you call a wasm function from JS. so we need that but the tests for objects are there.
AR: What about i31 interaction with that?
AT: I think that should be included in the tests for casts
AR: I should also thank TL and AT who both contributed to the core spec, and the JS spec.
AR: not sure about firefox implementation status?
RH: We are feature complete without array.fill, we have patches for it, they’ll be reviewed and merged soon. But they are very straightforward and I would consider our implementation feature-complete
DG: question about the JS API tests. In a lot of other proposal we do have those tests running on some engine before we merge the spec. Have we run these tests against any engines?
RH: these from the upstream spec, or WPT or something else?
DG: I think the ones that were mentioned in bullet 3, the open PRs for JS Tests
AT: the current PR has been tested against the current JSC implementation that’s WIP. I tested a previous version against V8. I haven’t tested the latest version but I can do that soon.
AR: This is my update, we would be all good for Phase 4, and minor syntax tweak
RH: If this is purely about getting details of text syntax, I’m comfortable with that, fine with figuring it out in the next week or so, was there also a PR for i32… ref.i32?
AR: yes, that already landed
RH: Text format, I don’t think is as important. We’re not doing anything with the binary, anything significant. We can resolve that after.
AR: if people are worried, I would think the JS tests would be a bigger hurdle
AK : Something not mentioned in the slides is that there are also toolchains targeting the proposal (in various levels of completion): Kotlin, Dart, Java, Ocaml (possibly others I'm not aware of)
DG: We could ask if there are any objections to going for Phase 4. Explicit objections and go from there. Does anyone have concerns or object to taking the poll today for both of these proposals together? Also, questions?
DG: i think that sounds good for the phase 4 poll then. DS should we do a zoom poll or a full poll?
RH: What’s the difference?
DS: One of these unanimous consent polls vs a full poll with the 5 options. If anyone is not able to use the zoom poll, just type in the chat and we’ll add those.
AR: I would suggest Zoom poll because it’s anonymous. Gives more honesty to the votes. I’ll have to stop screensharing to vote, unless there are further questions.
Poll:
- SF: 25 + 3 in chat
- F:16
- N: 4
- A: 0
- SA: 0
LW: congratulations and great work by all the folks who worked on getting the consensus
DG: Quick note to GC subgroup. Those meetings worked well. Thank you to everyone who made them a productive environment and congratulations again. Very exciting.
TL: thanks also to our toolchain partners; without the input from Kotllin, Dart, J2wasm, this wouldn’t have been possible
CW: Tangential question. Given this is the second (somewhat) conditional phase 4 vote we’ve taken. When we conditionally moved SIMD to Phase 4, did we end up satisfying the spec requirements or are those still pending?
DG: my understanding is that this isn’t a conditional vote, i think there was enough consensus that the changes are far enough along that people are comfortable that the missing pieces will be resolved soon.
CW: I’m fine with interpreting it that way, still curious on the state of SIMD, though it’s less related to this discussion.
DG: We wanted a full discussion on profiles before we do a “final” phase 4 vote. So that’s scheduled for the next meeting in Sept. Then we’d have a vote on the deterministic profile. In the context of relaxed SIMD, all the spec tests, texts exist and the requirements have been satisfied. But we need to have that one final discussion on the profiles proposal, and have a vote for making sure that we have a deterministic profile that exists, which the relaxed SIMD spec depends on before we can advance to Phase 4.
AR Presenting (slides)
TL: Is there a way to get involved or provide early feedback?
AR: We haven’t structured it yet, we have biweekly meetings, but not in a US friendly time, we have a repo, is it open?
CW: Currently not open but one of the things we’re preparing right now is to make a snapshot of it open. We want to have that available and discuss it at the in-person meeting.
AR: We should get it to a stage for the MUC meeting so people can look at it in more detail
PP: This is potentially going to be a huge SWE effort. How was that taken into account?
AR: How will this be maintained over time is a question we’re asking ourselves. This will require some maintenance especially when we extend the wasm spec in non-trivial ways. We’ll also have to extend the spec in non-trivial ways. One thing to say is the risk is not that large because we can always go back. We can generate a version of the spec and keep manually maintaining it if this does not work out anymore. I would hope it’s not the case but a real problem we have to think about.
PP: let’s talk more about that on github
DG: in-person CG will be hybrid and there will be virtual attendance too. Please register so we can send you the details.