17:49
<Michael Ficarra>
will someone tell me why structuredClone is in HTML and not ECMAScript?
17:49
<Michael Ficarra>
this kinda thing is going to keep happening https://github.com/whatwg/html/issues/10425
17:50
<littledan>
ask Mark Miller, he has repeated his stance recently that structured clone is somehow bad and shouldn't be moved to ECMAScript. (I don't actually know the reason.)
17:53
<shu>
we got consensus to move it already
17:53
<littledan>
when was that?
17:53
<shu>
it keeps getting deprioritized for me though, probably need some help to work on it
17:54
<shu>
mark's hang up was about making proxies more transparent which i think was fine
17:54
<shu>
but that was planned to be sequenced after the behavior-preserving thing of moving the existing spec into ES
17:54
<shu>
let me dig up notes
17:54
<littledan>
ah OK perfect
17:54
<littledan>
I'm glad I'm wrong
17:56
<shu>
https://github.com/tc39/notes/blob/main/meetings/2022-01/jan-24.md#conclusionresolution-4
17:56
<shu>
would love to actually get started on this, but yeah, probably won't have cycles in the near future either
18:03
<littledan>
great, I'm glad Michael Ficarra is volunteering for this work!
18:04
<littledan>
speaking of relayering, here's a writeup of some of my thoughts about next steps for AbortSignal/AbortController: https://gist.github.com/littledan/47b4fe9cf9196abdcd53abee940e92df
18:06
<littledan>
I got plenty of feedback at the last TC39 meeting that we shouldn't have a separate parallel API, so this is moving in the direction of just slightly evolving the current one, as well as ensuring that it can be used from 262, without duplicating it
18:08
<littledan>
(if the implicit propagation section doesn't make sense because I didn't include usage examples yet, just ignore it)
18:09
<shu>
great, I'm glad Michael Ficarra is volunteering for this work!
he is?
18:09
<Michael Ficarra>
he is?
no
18:10
<littledan>
aww, I thought that might work
18:10
<littledan>
was joking
18:10
<Michael Ficarra>
I know your tricks @littledan
18:12
<Andreu Botella>
I wonder if just calling a host hook if the value is an object, and then check the internal fields if it returns EMPTY, would just work well enough
18:14
<Andreu Botella>
IIUC, none of the internal slots the algorithm checks can be in a platform object other than [[ErrorData]] (for DOMException, and that is handled before the regular error handling)
18:15
<bakkot>
speaking of relayering, here's a writeup of some of my thoughts about next steps for AbortSignal/AbortController: https://gist.github.com/littledan/47b4fe9cf9196abdcd53abee940e92df

It is critical to use addEventListener rather than abortSignal.onabort = abortAction because the latter code would overwrite any other reaction registered on the same AbortSignal.

wait, really? I assumed it was a setter

18:23
<littledan>
definitely is a setter, but I may have misunderstood the semantics
18:27
<littledan>
https://html.spec.whatwg.org/multipage/webappapis.html#event-handler-idl-attributes
18:37
<littledan>
the value (single thing to be overwritten) vs listener list (for addEventListener) seems to be how this is specified. The setter sets the value, so it overwrites. A quick test script confirms that behavior is implemented.
18:37
<littledan>
anyway who knows if anyone makes the error in practice of setting .onabort rather than using addEventListener; presumably everyone knows that the setter strategy is deprecated, right?
18:39
<Ashley Claymore>
https://developer.mozilla.org/en-US/play?id=xlGpIW8PMTYxDhfmP5Bok40Q7Lh2gJ2EUfb8FUD5ABh3dk1JhEs7jssU4Enq2Rlwm0b7cRvhw2YJ4uLH
18:42
<littledan>
I wonder if just calling a host hook if the value is an object, and then check the internal fields if it returns EMPTY, would just work well enough
for what?
18:42
<Andreu Botella>
for what?
in terms of separating the web platform parts of the structured clone algorithm from the JS parts
18:43
<Andreu Botella>
looking at it some more, that could work, but it would need host hook requirements
18:43
<Andreu Botella>
things like, make sure to add an entry to memory before calling back into the 262 AO
18:44
<littledan>
yes, there definitely need to be host hooks for structured clone. Generally, I don't think test262 needs to have its hooks correspond to the spec hook structure, though, right?
18:46
<Andreu Botella>
right, I was kind of thinking out loud of a way to do that that would only require one host hook, since the current algorithm has a couple places where it goes from dealing with JS stuff to web platform stuff and back again