| 14:37 | <annevk> | Domenic: do you understand deliveryInProgress at https://trac.webkit.org/browser/trunk/Source/WebCore/dom/MutationObserver.cpp#L259? |
| 14:37 | <annevk> | Domenic: is that all compound microtasks really mean? |
| 15:04 | <Domenic> | annevk: it seems to prevent reentrancy |
| 15:04 | <Domenic> | Unclear how it maps to spec concepts |
| 15:05 | <annevk> | Domenic: I've done some digging and we can get rid of compound microtasks, pretty sure |
| 15:05 | <Domenic> | I mean I think we could but I'm unsure whether the replacement would just be the same thing in different words, or actually simpler. |
| 15:05 | <annevk> | Domenic: I still don't understand that deliveryInProgress entirely though as it's initialized to false and then checked if it can be true |
| 15:05 | <Domenic> | It's a `static` |
| 15:05 | <Domenic> | So it's only initialized the first time the function is called |
| 15:06 | <annevk> | Ah thanks |
| 15:06 | <Domenic> | https://www.tutorialspoint.com/cplusplus/cpp_static_members.htm second section |
| 15:06 | <Domenic> | wait no that's not it |
| 15:06 | <Domenic> | https://www.geeksforgeeks.org/static-keyword-cpp/ |
| 15:07 | <annevk> | Thanks, removed my question from GitHub |
| 15:08 | <Domenic> | Also the interaction with "spin the event loop" seems complicated :/ |
| 15:08 | <annevk> | Domenic: I suspect it directly relates to https://dom.spec.whatwg.org/#queue-a-mutation-observer-compound-microtask |
| 15:09 | <annevk> | Domenic: I've worked that through, that was added because of an obsolete dialog API that could spin the event loop |
| 15:09 | <annevk> | Domenic: as far as I can tell there's no API today that can trigger spin the event loop |
| 15:09 | <Domenic> | Wat |
| 15:09 | <annevk> | Domenic: so we don't have to worry about that, patch coming up |
| 15:10 | <Domenic> | I guess alert() maybe, we have a note saying that spinning the event loop is less bad than pausing IIRC |
| 15:11 | <annevk> | Domenic: no, that's not the case |
| 15:11 | <annevk> | Domenic: that'd be bad |
| 15:12 | <annevk> | we allow early returning |
| 15:12 | <Domenic> | https://html.spec.whatwg.org/multipage/webappapis.html#pause |
| 15:13 | <Domenic> | That was added at bz's request |