2019-04-01 [10:33:20.0000] MikeSmith, ping (re validator question...feel free to PM since it's kinda off-topic here) 2019-04-02 [19:30:45.0000] botie, inform a-ja (re)ping me when you’re back [19:30:46.0000] will do [23:25:24.0000] PSA: I recently added some use-counters for MathML markup to the W3C HTML checker; current results are here: [23:27:46.0000] https://validator.w3.org/nu/stats.html [23:29:21.0000] those results suggest that less than 0.0001% of documents on the Web have any MathML markup in them [23:30:08.0000] oofs [23:30:28.0000] I see now I am off by 10 there [23:31:30.0000] or even 100.. [23:31:44.0000] I think it’s actually 0.01% [23:34:47.0000] ..as in, ~1 out of every 10,000 sites [06:04:29.0000] a-ja, at 2019-04-02 02:30 UTC, MikeSmith said: (re)ping me when you’re back [07:36:10.0000] MikeSmith, (re)ping [07:45:28.0000] MikeSmith, will try again later. time to go vote and run a few errands. it's to discuss validator "Possible misuse of aria-label" warnings [12:14:59.0000] did someone add searchfox instance for webkit? [12:15:20.0000] I think Ms2ger or someone was planning to 2019-04-03 [19:15:31.0000] Someone tried to do our April Fools for us, it seems, in lieu of us doing one. https://couchblog.de/blog/2019/04/01/neue-html-tags-und-attribute-fuer-das-urheberrecht/ [19:16:09.0000] euillegal="" attribute, good stuff [02:11:10.0000] Domenic: do you know what's up with request streams? [02:50:15.0000] given a plain text that may contain url links and email adresses, what are safe characters for spliting the text to potential candidates which would be validated futher? first thing that comes to mind are whitespaces [05:33:57.0000] annevk: haven't seen much movement; yhirano or ricea would be the people to ask. [05:34:35.0000] I wonder what's holding it back [06:31:30.0000] annevk / Domenic: either of you have time to approve a trivial change in https://github.com/heycam/webidl/pull/693 ? [06:35:50.0000] done [06:36:30.0000] Thanks [06:37:00.0000] And if you have more time, there's the modules PR :) [06:37:09.0000] Yeah, hopefully today or tomorrow [06:37:42.0000] I spent Friday and Monday catching up on reviews and emails after TC39, now I should actually make progress on my work things... but then back to reviews. [12:38:51.0000] #lazyweb the canonical way to encode a potentially unicode string to ascii, in a bidirectional manner, would be, what? Percent encoding? UTF-8 encode -> base64? [12:51:35.0000] Domenic: I don't think there's a canonical way. https://tools.ietf.org/html/rfc3492 is a third option. [12:52:10.0000] Hmm punycode would probably be more readable indeed [12:57:08.0000] OK well I went with UTF-8 -> base 64 because that maintained back-compat with my previous base64 strategy. Now live URL viewer properly supports Unicode URLs. https://jsdom.github.io/whatwg-url/#url=amF2YXNjcmlwdDphbGVydCgxKS8v77+/&base=YWJvdXQ6Ymxhbms= 2019-04-04 [22:56:33.0000] UTF-7 😈 [03:44:46.0000] :-( the html5lib test format has changed *again* [03:44:57.0000] undocumentedly even [03:45:57.0000] tree-construction/README.md is silent about #new-errors [03:48:45.0000] I'm guessing the idea is that #new-errors contains errors added to the spec recently [03:49:01.0000] so that in order not to make older implementation regress their test results [03:49:14.0000] except their test harnesses are broken instead [04:48:27.0000] Hmm. has entering the comment end bang state deliberately become a non-error in the spec even though tests haven't been updated accordingly? [04:50:20.0000] from 2016: https://searchfox.org/whatwg-html/diff/518d16fdc672d1023dcfd2847d86f559d13a842f/source#101939 [04:54:32.0000] hsivonen, I'm assuming you found it, but otherwise: https://github.com/html5lib/html5lib-tests/pull/92 [04:56:30.0000] Ms2ger: thanks. 2019-04-05 [06:54:41.0000] Quick pop quiz: [06:54:45.0000] var element = document.createElement("div"); [06:54:45.0000] element.setAttribute("data-1", "value"); [06:54:45.0000] var propdesc = Object.getOwnPropertyDescriptor(element.dataset, 1); [06:54:52.0000] What is propdesc.value? [06:55:11.0000] "value"? :) [06:55:35.0000] Good guess, unless you're Chrome [06:55:42.0000] Any ideas what Chrome does? [06:56:27.0000] hm, tried it, weird. [06:56:50.0000] looks like a bug to me [06:57:58.0000] Agreed [07:58:22.0000] Have you filed a bug? (Am interested in CC’ing myself) [08:00:01.0000] Not yet [08:28:25.0000] annevk: I think we can use infra queues; did you see any hard blockers? [08:30:47.0000] Domenic: well, the oldest task thing that skips over stuff that are currently not active [08:31:11.0000] Domenic: that's a little different from dequeuing [08:31:17.0000] Oh, right, I was thinking you could just look at queue[0], but you might need to actually remove queue[1]. Nevermind. [08:31:57.0000] Domenic: oh, if you rewrite as a loop, also account for there not being a task [08:32:02.0000] Domenic: I didn't do that I think [08:32:39.0000] Yeah, algorithmizing it will involve a decent number more steps. Probably for the best, although I'm a bit worried about any "step 1" references. [09:42:49.0000] Ah yeah, "step 1" is terrible [09:42:59.0000] A fair number of those also doesn't have an xref [09:47:43.0000] Domenic: I guess microtask was always a queue, but that does assume there cannot be both active and non-active microtasks queued, which is usually reasonable, but nested event loops make it not so? [09:48:13.0000] Domenic: maybe even then, ugh, this is hard [09:48:49.0000] I think it's probably fine [09:57:15.0000] annevk: from what I can tell (and I updated the PR to clarify) microtasks don't care about if their document is fully active or not, unless they get moved to become real tasks by spin-the-event-loop [09:57:31.0000] That said, I think bz and some Chrome folks are discussing changing that in a contemporary issue [09:57:51.0000] Not sure if that's what you mean by "active and non-active microtasks" [09:59:04.0000] Domenic: oh, Job microtasks use "check if we can run script" so it's actually happening at a lower-level [09:59:14.0000] Ahh [09:59:20.0000] That's a bit strange [09:59:24.0000] Domenic: not sure if that's correct though [09:59:42.0000] Yeah, when we figure out those contemporary threads we can maybe fix that too. [10:58:02.0000] #lazyweb any specs that use [Exposed] on members for something that's exposed to multiple globals? I.e. only a subset of members are in each global [12:22:17.0000] Domenic: https://drafts.css-houdini.org/css-typed-om/#stylevalue-objects [12:22:43.0000] The parsing methods (which invoke the CSS parser, not thread-safe in all UAs) are restricted to Window, but the class itself is availble to workers too [12:57:00.0000] Domenic: xhr [13:04:23.0000] Thank you! 2019-04-07 [07:46:23.0000] how will lazyload'ed resources affect page's load event? [13:34:52.0000] How would you use XSL with an HTML document in-browser? 2019-04-08 [00:32:46.0000] Is there a mozilla bug or something about ? [01:32:39.0000] zcorpan_: I guess https://bugzilla.mozilla.org/show_bug.cgi?id=947427 but I saw that dbaron left a message that maybe it's better to have a new bug for differently-named feature 👀 [01:33:53.0000] cybai: thanks [01:34:53.0000] :) [04:14:07.0000] are there CSS ways for the document containing an iframe to make the iframe unscrollable? [07:00:00.0000] hsivonen: I'm not aware of any... there's the HTML scrolling attribute IIRC [07:13:41.0000] I had to look that up, but it seems that only prevents scrollbars from showing [07:32:30.0000] annevk: https://github.com/scott-little/lazyload#onload-events mentions lazyloaded resources will not block the document's load event, is this what you were looking for in your comment? (if not, sorry, I've not read most of that thread yet) [07:35:48.0000] domfarolino: how does that follow from the PR? [07:36:44.0000] (glad it was already considered though) [07:36:56.0000] No clue, it may very well not. I just remember that was the intention (sorry, haven't read through the PR at all) [07:37:21.0000] no worries [07:37:35.0000] I couldn't find any mention of "delay" in /files so I suspect there's a bug here [07:37:53.0000] that is my suspicion too [08:53:20.0000] foolip: ping? [11:41:33.0000] ecobos: I'm here, but didn't get a notification. Not sure why. [12:23:20.0000] foolip: nvm, mentioned you on the GH issue regarding 2019-04-09 [23:44:44.0000] dbaron: thanks. I wanted to make sure the scrolling attribute on iframes didn't have a CSS mapping [00:18:40.0000] hsivonen: it does not do more than overflow:none, no? [00:36:00.0000] annevk: does overflow:none applied to the iframe element itself prevent it from scrolling? [00:43:12.0000] hsivonen: I'd expect not [00:43:50.0000] hsivonen: nope [00:43:51.0000] data:text/html, [00:52:23.0000] good. thanks [08:30:45.0000] domfarolino: you probably wanna read through https://github.com/whatwg/html/issues/3840#issuecomment-481034206 [08:31:46.0000] annevk: will do thank you [08:38:56.0000] annevk: so all the lazyload elements get auto per default, and wouldn't block page load by default [08:39:08.0000] so UA wouldn't need to block top level page load ever for iframes? [08:39:13.0000] I must be missing something [08:39:38.0000] smaug____: oh sorry, after posting I realized the "auto" thing might be significant [08:39:54.0000] smaug____: per the PR it doesn't interact with the load event at all [08:40:04.0000] smaug____: that's the problem I was seeing [08:40:08.0000] ok [08:40:13.0000] yeah, that is major issue [10:53:26.0000] was doing some stuff with analyzing tag names and attributes and noticed that the single page html spec contains like 54k just curious [11:09:26.0000] TabAtkins: ^ I think I remember the stuff was something you were doing, but I forget what it was about [11:15:22.0000] ah, bkardell they're for highlighting [11:16:33.0000] yeah I am just curious if anyone wrote about that choice, it seems unusual if legal [11:16:57.0000] https://freenode.logbot.info/whatwg/20180605#c1575174 [11:19:45.0000] https://github.com/tabatkins/highlighter/commit/75e91017fa33302a9a02876c8a2e4e8d138bf975 [12:05:59.0000] yeah, I wondered if that was all there is to it :-p [14:23:25.0000] so... we have a lot of issues about custom attributes and a long history of mentions in webplatform about 'some kind of way to mixin behaviors' and 'kind of like custom elements' - but... do we actually have anything resembling a proposal or something that lays out use cases and enough details of boundaries that would help it avoid the sorts of problems that hosed is="" and decorators and xbl and .htc-like solutions? [14:23:54.0000] I spent some time searching and I can't find one [14:24:12.0000] s/one/something helpful about this 2019-04-10 [20:26:43.0000] bkardell: Yeah, the elements were the shortest possible way to write the highlighting markup, which is important when you've got 54k of them in the spec. ^_^ A single additional character adds 50k to the single-page spec! [20:27:01.0000] All told I saved nearly a megabyte from the single-page versus my old markup. [00:11:03.0000] mkwst: I think you meant to tag naskooskov not nasko [00:31:41.0000] /me decided to edit in place [02:24:18.0000] in it a known problem that the wpt.fyi numbers are very broken, at the moment? https://wpt.fyi/results/?label=experimental [02:44:44.0000] That's weird, 98a2a02 is in a PR, not on master [02:44:48.0000] foolip, ^ [03:46:38.0000] hsivonen: you have to add &label=master [03:48:12.0000] hsivonen: or better just go to wpt.fyi/ to get the default query, which is now experimental Chrome, Firefox and Safari and stable Edge [04:12:49.0000] foolip: thanks [04:40:16.0000] foolip: I see something weird [04:40:19.0000] foolip: https://wpt.fyi/results/encoding?label=master&product=chrome%5Bexperimental%5D&product=edge&product=firefox%5Bexperimental%5D&product=safari%5Bexperimental%5D&aligned [04:40:39.0000] foolip: the encodeInto test is failing in Chrome, but it does pass all IDL tests [04:40:52.0000] foolip: that combination should be impossible [04:41:00.0000] foolip: (and testing it locally I cannot reproduce) [04:41:19.0000] annevk: it says CRASH for Chrome [04:42:26.0000] annevk: so that's not a contradiction at least. does it work with `./wpt run` locally? [04:42:46.0000] foolip: I just opened it [04:42:51.0000] foolip: thanks for clarifying [04:43:27.0000] foolip: I don't have enough software installed for ./wpt run [07:16:20.0000] tabatkins: yeah, I get the basic idea... I'm curious tho... those savings are pre-gzip, right? how real are the savings/where are they post gzipping? It seems to me they should gzip pretty similarly? Are there memory savings somehow? Seems like strings for tag names would all point to the same memory... because we store the source whole original source maybe? [07:39:59.0000] MikeSmith: ^^ [09:59:12.0000] does anyone know how different browser and OS networking stacks determine an encoding for PAC scripts? I know what modern Firefox does, but I'm not sure what anything else uses, except that wholly ASCII scripts are all but guaranteed to be interpreted as ASCII [10:35:18.0000] jwalden: if you think we should have a definition, file an issue against whatwg/fetch with a description for Fx? I can take it from there later [10:35:58.0000] /me only learned about this rather weird thing the other week [10:35:59.0000] annevk: this was for approximately vague curiosity, I was going to update Wikipedia's mentioning of its encoding if anyone knew more than I did :-) [10:36:53.0000] I changed Gecko to allow PAC scripts to be UTF-8 semi-recently (and if they don't validate as UTF-8 they get treated as Latin-1), and Wikipedia til half an hour ago just said UTF-8 wasn't really supported [10:37:08.0000] none of this is really all that important in reality, I expect [10:37:44.0000] Until someone depends on it and we cannot unship… [10:38:04.0000] well, PAC is a networking stack-level thing, it's sort of beneath anything the web sees [10:38:22.0000] an IETF RFC would be the rough place for it if it were going to be truly formalized somewhere, I think [10:39:21.0000] Fair 2019-04-11 [05:33:10.0000] bkardell: about the highlighting markup, I don’t know what the savings would be when they’re gzipped. But anyway, browsers don’t load the gzipped version [07:21:43.0000] annevk: TIL: https://www.freedesktop.org/wiki/Software/uchardet/ and https://github.com/thuleqaid/rust-chardet/tree/master/src [07:23:39.0000] > available at http://lxr.mozilla.org [07:23:41.0000] Hah [07:24:17.0000] Ms2ger: the code was removed from m-c, except for the Japanese remains, even before searchfox [07:24:22.0000] hsivonen: I didn't read the name carefully and was hoping you'd found a new Encoding Standard impl [07:24:45.0000] "available" is a big word for lxr, though [07:24:56.0000] annevk: no, just more ports of the old Mozilla "universal" chardet [10:00:56.0000] Is color-handling of images with no profile attached spec'd anywhere (I assume they must be interpreted as sRGB, but haven't been able to find that officially stated anywhere) [10:01:04.0000] ? [10:21:55.0000] eeeps: I'm not sure, it ought to be [10:22:26.0000] eeeps: it's somewhere between HTML and CSS and image formats, so maybe that's why it's not [13:47:58.0000] annevk: ok so there's this https://drafts.csswg.org/css-color/#sRGB. Authoritative enough or should I file an issue on HTML? 2019-04-12 [00:26:56.0000] Seems good enough [04:38:04.0000] Domenic, were you planning to use IDL for kv-storage in the near future? [09:22:06.0000] anybody have opinions on the spec compliance of XHR pre-emptively aborting a fetch it knows is never going to succeed because Content-Length is larger than we have room for? It's observable through progress events. Chrome started doing something like that a ~year ago, which apparently broke some speed tests on low end android devices... [09:24:55.0000] de-jure, I think there's nothing that allows it; de-facto, I'd probably argue it 's fine ounder some implicit hardware limitations caluse [09:28:42.0000] Mek: why only XHR? [09:29:05.0000] MikeSmith... browsers don't load the gzipped version?? wdym? [09:29:36.0000] would like to understand this better [09:29:58.0000] annevk: good question, in this case that just happened to be the only place where I made that change (actually only XHR to blob even, as that was the code I was refactoring) [09:30:59.0000] Mek: this would make sense to me at the HTTP level or maybe Fetch, but not XHR [09:31:42.0000] fetch won't know if it needs space for all the bytes though, as it just gives of a stream. Only XHR knows it will have to store all the bytes before the fetch can succeed [11:27:25.0000] Mek: interesting, file an issue? Might be worth highlighting at some point somehow [11:32:15.0000] sure, will do [12:44:02.0000] Ms2ger: (who will hopefully read backlogs): I would like to use IDL for kv-storage over the next quarter or so. I would especially like to try the new modules stuff, but there are other issues to resolve as well, per https://github.com/WICG/kv-storage/issues/46 [13:26:53.0000] so, is there a way to for-await-of consume a fetch's response.body ? [13:40:02.0000] ondras: https://streams.spec.whatwg.org/#rs-get-iterator? [13:40:43.0000] i.e. for await (bla of response.body.getIterator()) seems like it should work according to the spec? [13:41:48.0000] Mek: right! but the getIterator() seems to be not-implemented-yet? [13:42:12.0000] should be fairly easy to polyfill... [13:42:57.0000] okay [13:44:45.0000] https://jakearchibald.com/2017/async-iterators-and-generators/#making-streams-iterate for example [13:49:57.0000] Mek: nice one, thanks for the link 2019-04-13 [19:37:41.0000] bkardell: browsers unzip it before parsing the contents and loading. gzipping reduces the bandwidth usage but not the memory requirements and the negative effect of those on the end-user experience [11:53:45.0000] W3C won an Emmy for standardizing HTML5? >_> [12:10:33.0000] for a "Full TV Experience" [12:14:51.0000] which is explicitly defined as "Standardization of HTML5, Encrypted Media Extensions (EME) and Media Source Extensions (MSE)" [12:15:06.0000] though they don't quite mention that in the blog post [12:17:31.0000] note that the recipient list is also Microsoft, Comcast, Netflix, and Google [12:18:41.0000] I suppose "Full TV Experience" is code for "Web-based DRM" [13:00:13.0000] next up, Oscar nomination for "Full Movie Experience"? [13:02:13.0000] guess they need to finish up the Popcorn standard first 2019-04-14 [08:59:28.0000] when using fetch response's body.getReader().read(), I always receive Uint8Arrays? is there a way to retrieve strings? [10:49:40.0000] ondras: https://encoding.spec.whatwg.org/#interface-textdecoderstream [11:43:49.0000] Domenic: thanks! any idea about implementation status? [11:44:00.0000] ondras: implemented in Chrome, probably need a polyfill elsewhere [11:44:35.0000] Domenic: okay, nice! [11:44:52.0000] an unrelated observation: Firefox buffers chunked response unless a Content-Type is set [11:45:10.0000] when CT is available, the response.body.getReader().read() does not wait for the whole response, as expected [11:45:27.0000] Huh, kind of strange, but I dunno, non-Content-Type responses are a bit of a wild west [11:45:37.0000] yeah [11:45:53.0000] I found that out by accident when I forgot to set the header and FF behaved in a weird way [11:55:51.0000] Worth filing a bug IMO [12:02:34.0000] yeah [12:02:42.0000] okay [12:11:08.0000] https://bugzilla.mozilla.org/show_bug.cgi?id=1544313 2019-04-15 [01:55:43.0000] I think I saw a tweet go by saying that Chrome disabled sync XHR from onunload in the latest release. Do I recall correctly? Is it now disabled? [01:56:22.0000] hsivonen: could be, someone did reach out about standardizing it, but that hasn't really happened yet [01:56:56.0000] Twitter search doesn't find the tweet [01:57:45.0000] hsivonen: per "[blink-dev] Intent to Implement & Ship: Disallow Sync XHR in Page Dismissal" it'll be enabled by default in M75 [01:59:44.0000] That thread also basically ignored my question on standardization it seems [01:59:52.0000] Ugh [02:02:54.0000] annevk: thanks. must have been the intent to implement twitter account, because I couldn't find anything from @ChromiumDev or the personal accounts of folks who'd usually tweet stuff like this [02:07:54.0000] annevk: no reply to bz's comment in the thread... [02:14:09.0000] hmm. do Blink and WebKit support IE's event.fromElement? [02:17:36.0000] at least Blink does... [02:20:17.0000] hsivonen: tracked by https://github.com/w3c/uievents/issues/84 [02:23:51.0000] annevk, wanna review https://github.com/web-platform-tests/wpt/pull/16278 ? [02:25:50.0000] Ms2ger: are there bugs to be filed? [02:26:19.0000] annevk, I was planning to do that after I merged the spec PR [02:26:19.0000] Ms2ger: also, () =>, let/const, are cool, you should start using them [02:30:00.0000] Thanks [03:16:08.0000] annevk: thanks [05:54:00.0000] Domenic: Does this test pass for your stuff? https://github.com/web-platform-tests/wpt/commit/8553d30dd590715a63273e90da1951b8b0b37672 [05:54:29.0000] (this commit bypassed GitHub PR review) [05:59:48.0000] GPHemsley: that looks correct [05:59:57.0000] fwiw [06:00:56.0000] I'm curious as to why my code failed in exactly the same way as the commit message suggests Chromium does [06:01:03.0000] there must be some commonality somewhere [06:03:20.0000] GPHemsley: https://jsdom.github.io/whatwg-url/#url=d293Ou+/vQ==&base=YWJvdXQ6Ymxhbms= [06:03:28.0000] GPHemsley: seems Chrome/Safari get it right at least [06:05:28.0000] annevk: I'm seeing them percent-encoded as %EF%BF%BD everywhere I'm looking [06:05:55.0000] GPHemsley: yes, which is what the test asserts [06:06:13.0000] annevk: the test is expecting %EF%BF%BF [06:06:22.0000] GPHemsley: oh wat [06:07:15.0000] GPHemsley: oh, but the input is U+FFFF, not U+FFFD [06:07:21.0000] GPHemsley: so I think that's still good [06:07:43.0000] (my corresponding test uses U+FFFD, which is why the off-by-two) [06:10:52.0000] annevk: Unless I'm doing this wrong (which I probably am), U+FFFF is still being coerced to U+FFFD before being percent-encoded [06:12:47.0000] yeah, no, I think I'm doing it wrong [06:13:19.0000] so jsdom is handling this correctly? [06:18:02.0000] GPHemsley: where is that coercion happening? [06:18:18.0000] annevk: It's not, I was misreading the output [06:18:19.0000] GPHemsley: it has to happen for lone surrogates, e.g., U+D800, but not U+FFFF, afaict [06:18:39.0000] not sure if there's coverage for lone surrogates, I'd hope so [06:18:58.0000] annevk: My code is using the replacement character for invalid characters like U+FFFF, but it seems that jsdom is not doing that [06:19:56.0000] GPHemsley: there's nothing that says that should happen [06:20:19.0000] annevk: Yeah, I think it may be a side effect of how I'm doing UTF-8 encoding [06:20:40.0000] (this is the first time a test has failed for it) [06:24:12.0000] Isn't this USVString coercion? [06:25:07.0000] annevk: Am I correct in my understanding that the UTF-8 encoder in Encoding is the "non-strict" version of UTF-8? [06:25:34.0000] "Otherwise, d < 0xDC00 or d > 0xDFFF. Append to U a U+FFFD REPLACEMENT CHARACTER." [06:25:40.0000] From https://heycam.github.io/webidl/#dfn-obtain-unicode [06:26:14.0000] annevk: I've got a question about SharedArrayBuffers and window.opener = null. Does the agent cluster key change at window.opener = null? [06:26:28.0000] Domenic: it's not therefore, right? [06:26:50.0000] annevk: USVString coercion makes U+FFFF go to U+FFFD by my reading. This explains jsdom's output, I think. [06:26:51.0000] Domenic: Aren't we at "c < 0xD800 or c > 0xDFFF [06:26:51.0000] Append to U the Unicode character with code point c. [06:26:51.0000] "? [06:27:01.0000] dtapuska: setting window.opener cannot affect agent clusters as you already have/had access at that point [06:27:14.0000] Hmm right [06:27:15.0000] Domenic: I suggest you read again [06:27:38.0000] Domenic: it says if it's greater than 0xDFFF, which 0xFFFF is, you use it as a code point and don't coerce [06:28:34.0000] dtapuska: setting window.opener to null does change window name lookup a bit [06:28:50.0000] dtapuska: defining that properly is issue 313 [06:28:59.0000] hope that helps [06:29:29.0000] Debugger reveals that it gets turned into U+FFFD before it even hits the whatwg-url parser code. Something in the deserialization maybe. [06:29:43.0000] annevk: ya it was just in context of implementing the Agent, etc in Chrome.. and I wondered if it should support changing at a time but it seems it doesn't need to. Everything is determined at construction time [06:30:17.0000] annevk: also take a look at https://github.com/whatwg/fetch/pull/853 [06:30:22.0000] dtapuska: right, it's very similar to a process boundary, dynamically changing it would be... [06:30:38.0000] annevk: I think I've addressed the issues you raised before.. there isn't a good way to link into the RFC though [06:30:53.0000] Domenic, annevk: So now I'm confused. Is jsdom replacing or not? [06:31:07.0000] GPHemsley: I don't think it is, but the online viewer is broken so I can't be sure. [06:31:12.0000] also, it seems we need more tests for this [06:31:23.0000] I'll boot up the actual library tests [06:32:05.0000] Domenic: I suspect you cannot get U+FFFF in your clipboard easily [06:32:33.0000] Well the url=d293Ou+/vQ==&base=YWJvdXQ6Ymxhbms= fragment either encodes U+FFFD or is decoded as U+FFFD [06:32:50.0000] dtapuska: yeah, I think that's good enough [06:32:51.0000] I am using TextEncoder/TextDecoder [06:32:53.0000] Is there a way to view all the mentions of an externally-defined term in a spec? [06:33:00.0000] GPHemsley: no :-( [06:33:08.0000] boo :( [06:33:18.0000] It's becoming a bit of an issue [06:33:20.0000] There is in bikeshed [06:33:37.0000] I guess there is some kind of dumping thing, indeed [06:33:55.0000] Click on the term in the "Terms defined by reference" section [06:34:11.0000] Ugh and the test file formats have changed since last I updated the tests [06:34:18.0000] Going to file an issue on whatwg-url and get to this later [06:34:47.0000] it seems we need more tests for strict vs. non-strict UTF-8 [06:35:13.0000] now, granted, this would be a bug in an Encoding implementation [06:35:24.0000] but it would still be useful to have for URL IMO [06:35:38.0000] Domenic, pushed a fixup for https://github.com/heycam/webidl/pull/705 ; do you want to look or should I merge straight away? [06:35:57.0000] Ms2ger: LGTM [06:36:06.0000] Ms2ger++ [06:36:06.0000] Thanks [06:36:18.0000] /me waves at GPHemsley [06:45:03.0000] annevk: Am I correct in my understanding that U+FFFF will UTF-8 encode as EF BF BF but that will UTF-8 decode as U+FFFD (as defined in Encoding)? [06:45:56.0000] GPHemsley: I don't think so [06:46:00.0000] :/ [06:46:03.0000] GPHemsley: U+FFFF roundtrips afaik [06:46:31.0000] oh [06:46:35.0000] because it's BF now [06:46:36.0000] ok [06:48:28.0000] annevk: What do you make of this text? "However, thanks to later revisions to the applicable standards, official UTF-8 is now rather stricter than that. For example, its range is much narrower (0 .. 0x10_FFFF to cover only 21 bits instead of 32 or 64 bits) and some sequences are not allowed, like those used in surrogate pairs, the 31 non-character code points 0xFDD0 .. 0xFDEF, the last two code points in any plane (0xXX_FFFE and [06:48:29.0000] 0xXX_FFFF), all non-shortest encodings, etc." [06:48:44.0000] does this seem correct? [06:51:42.0000] GPHemsley: no [06:52:13.0000] annevk: Where is it wrong? [06:52:29.0000] GPHemsley: after surrogate pairs [06:52:46.0000] hmm, ok [06:57:06.0000] hello [06:57:30.0000] can someone begin to explain to me why the context.commit() method of offscreen canvas was removed? [06:58:07.0000] It seems very useful, right? [07:02:52.0000] d410: the commit log should have some pointers [07:03:25.0000] wait are we talking about commit log of github? :P [07:03:34.0000] or commit log of commit()? [07:03:39.0000] hehe [07:03:42.0000] d410: of whatwg/html [07:04:02.0000] ok, ambiguity [07:04:04.0000] thanks [07:06:12.0000] annevk, quick editorial review at https://github.com/heycam/webidl/pull/713 , if you want :) [07:33:41.0000] nox: https://github.com/whatwg/dom/pull/754 might be of interest [07:39:45.0000] Domenic: do you remember if there are tests for adoptedCallback? [07:40:13.0000] There should be... [07:40:14.0000] Domenic: I suspect the ordering is different between Firefox and others atm [07:40:26.0000] Domenic: when the c-e is a child of a document fragment [07:49:14.0000] Domenic: looks like it's already tested and somehow goes right [07:57:36.0000] Domenic: actually, nope [07:58:13.0000] Yeah, testing document fragments I could easily see being omitted [07:58:30.0000] Domenic: it's very close, but it only moves the host [08:41:12.0000] overall though rniwa did an amazing job with custom element / shadow tree tests [08:44:02.0000] Domenic: your poll might also need desktop/mobile caveats, at least for those voting for option 2 [08:44:33.0000] Hmm, you think it'd make sense to have 1 for all desktop platforms and 1 for all mobile platforms? [08:45:04.0000] Domenic: I mean, I voted for option 1, but I wouldn't want my desktop date picker to match the one on my phone and vice versa [08:45:58.0000] I guess popup-based controls are a bit different [08:46:30.0000] Domenic: on some platforms date is mixed [08:46:56.0000] Domenic: and time is a popup on mobile and text on desktop, iirc [08:47:14.0000] I'm not sure the desktop control is any good though... let me check what Windows 10 does... [08:47:40.0000] Hmm https://usercontent.irccloud-cdn.com/file/P03TNBfo/image.png [08:47:54.0000] heh [08:48:13.0000] Hmmmmmm https://usercontent.irccloud-cdn.com/file/WhZHUtdy/image.png [08:48:14.0000] I'd prefer typing 12:30, but to each their own I suppose [08:48:36.0000] aah, that reminds of the Windows I know and love [08:48:44.0000] Yeah maybe Windows 10 doesn't have its act together... curious about macOS. [08:49:30.0000] Date & Time preference panel is definitely very different from iOS [08:49:57.0000] https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/date-and-time is apparently the new Windows app recommendation... which is neither of those. Such churn O_O [08:50:03.0000] I guess the weird thing with iOS is that isn't rendered as a switch [08:50:32.0000] On Android and Windows at least checkbox and switch have different uses https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/toggles#choosing-between-toggle-switch-and-check-box [08:50:39.0000] I admit not remembering any checkboxes on iOS [08:51:05.0000] Ooh, immediate effect is nice [08:51:14.0000] That does argue for having something like [08:51:27.0000] Oh well, one day [08:54:33.0000] My team is hopefully doing switch next quarter, but it's surprisingly complicated... http://adrianroselli.com/2019/03/under-engineered-toggles.html is a great overview of all the things to consider [08:56:06.0000] Domenic: interesting, I guess indeterminate kinda argues for type=switch, even though backcompat is less nice [08:56:48.0000] I guess we can make it not apply either way [08:57:05.0000] We're currently thinking a new element would be better to start paving away from the problematic design of everything being a single element. Especially with form-associated CE stuff it should be pretty polyfillable either way. [08:57:59.0000] Domenic: well, except for all the focus and activation handling that isn't really covered yet? [08:58:10.0000] Yeah, this is the excuse to fix all that ^_^ [08:58:16.0000] a11y too [08:58:29.0000] yeah, there's quite a bit more indeed [08:58:37.0000] anyway, interesting [09:03:23.0000] annevk: what's on iOS? [09:05:35.0000] gsnedders: macOs-style checkbox, though grey when checked [10:31:16.0000] domenic: "We're currently thinking a new element would be better to start paving away from the problematic design of everything being a single element. " - would this be maybe a built-in module path thing? [10:40:22.0000] bkardell: not sure what you mean [10:42:48.0000] like, 'layered api'? [10:43:26.0000] Still not sure what you mean :). Is there a concrete technical question? [10:46:06.0000] I thought the topic above was your team maybe working on a new element.. if so, would that work be done in the way I think that is described in the layered api proposals - basically, nothing magical, a custom element that might ship with the browser? or am I misunderstanding that proposal too? [10:51:06.0000] The hope is that the element would be 100% polyfillable, yes. [10:55:39.0000] yeah, I would love to follow this or even help maybe.. it seems like this idea (esp the browser potentially shipping something that you don't have to request) seems full of interesting questions and potential [10:56:50.0000] I mean it's just a new HTML element. Chrome hopes to implement it in JS, but that's our strategy and it might not work out. [11:03:03.0000] if you implement it in js, wouldn't it necessarily have a dash? [11:04:13.0000] I mean, it's very possible that there is a lot more sketched out and discussed here than I currently understand and this is entirely plain to you but it's not yet to me so sorry if this seems remedial somehow [11:04:46.0000] Yes, that's one of the trickier parts. [11:04:56.0000] or or similar probably. [11:05:15.0000] Or we could discuss removing the dash restriction on custom elements. [11:05:36.0000] On the assumption that all future new HTML elements will be opt-in (via importing modules) [11:13:19.0000] right, this is where I was getting to... it seems full of interesting /important topics and challenges on where we go next - really things that have interested for a long time... [11:14:38.0000] wow innovati im not surprised you are here [11:14:51.0000] you seem to be everywhere that's web related lol [11:15:01.0000] :3 [11:15:14.0000] see you on codesupport :) [11:17:03.0000] it seems like some things like 'can it have a shadow dom' is a slightly different problem in that context... maybe a better one? [14:39:58.0000] Domenic / annevk: If y'all wanna send me some pictures to add to https://drafts.csswg.org/css-forms/#examples I wouldn't mind ^_^ 2019-04-16 [02:47:32.0000] yoav: I'm not sure how I'm supposed to review https://github.com/web-platform-tests/wpt/pull/13518 [02:48:03.0000] yoav: the "current model" is not sound and I'm also not an expert in it [02:50:27.0000] OK [02:52:02.0000] annevk: I think there's value in adding those tests, to make sure current implementations are abiding to this model, even if we'd prefer to move to a more restrictive one in the future [02:52:49.0000] but if you feel uncomfortable reviewing, I can try to find someone else [02:54:37.0000] yoav: I do, thanks [05:35:24.0000] w 24 [05:35:29.0000] damn sorry [06:58:40.0000] Good morning friends :) [07:00:10.0000] Ms2ger: where does https://heycam.github.io/webidl/#legacy-platform-object-defineownproperty invoke a getter? [07:02:07.0000] annevk, I don't think it does, why do you ask? [07:04:28.0000] Ms2ger: I'm trying to figure out https://github.com/heycam/webidl/pull/713 [07:06:01.0000] annevk, I was suggesting [[Set]] and [[DefineOwnProperty]] didn't really need to be consistent, because they're doing different things [07:07:13.0000] Ms2ger: I think I see now [07:08:18.0000] Ms2ger: I guess I don't quite see why we have the "supports" abstraction [07:08:34.0000] Ms2ger: why not see "if it has a getter" and "if it has a setter" throughout [07:08:46.0000] annevk, that would be fine by me [07:09:18.0000] Ms2ger: it seems that heycam's strategy was that there's "supports" which you always use and then there's specializations [07:09:36.0000] Ms2ger: I'm fine with going the other way, but it'd be good to be consistent about it or at least file an issue about such a plan? [07:09:49.0000] annevk, I'll file the issue [07:09:52.0000] ta [09:09:12.0000] annevk: I'd like to get https://github.com/whatwg/fetch/pull/853 merged but not sure how to proceed cause I don't know what we should do there. Firefox has landed code already matching the PR and the tests [09:10:57.0000] dtapuska: I don’t understand how the note is true necessarily [09:11:22.0000] dtapuska: I also don’t have time right now unfortunately [09:11:48.0000] dtapuska: maybe JakeA can help me tomorrow? [09:13:30.0000] annevk: let me explain why I wrote the note.. previously when stale while revalidate was implemented it was implemented at the network service so there wasn't any attribution of the revalidation request with the page doing the fetching. So if it started a revalidation of say a gigantic resource it wouldn't get terminated because the network service was doing the fetching it wasn't associated with the browsing context being [09:13:31.0000] terminated. [11:24:25.0000] annevk: did you want to give https://github.com/whatwg/html/pull/4465 another look? [13:32:22.0000] dtapuska: the problem is that not all fetches have a context iirc [13:32:45.0000] Domenic: I was hoping for someone else, maybe JakeA? [15:31:22.0000] JakeA would be ideal, I hope he can make time :) 2019-04-17 [18:01:41.0000] just now heard that Google is using HTTP Signed Exchanges for Google Search, as of today [01:34:30.0000] JakeA: while you're looking at whatwg/html, Domenic and I were hoping you could look at https://github.com/whatwg/html/pull/4465 [07:02:11.0000] Ah, sorry for missing the messages. I wish IRC cloud used push messages so I got notifications even if the tab is GC'd [07:03:02.0000] I'll go through those issues in a bit (but today) [07:04:14.0000] MikeSmith: does W3C not have anymore simple form to request new password? [10:49:08.0000] Are there typos in this text? I find that hard to very very hard to decipher, but maybe it's just me? Does the first sentence intend to say, for example "In [a] shadow-including tree[,] order is..." https://www.irccloud.com/pastebin/LcqzdGHk/ [10:56:26.0000] bkardell: it’s “correct” in that I’m pretty sure we meant to write it that way [10:57:35.0000] "In shadow-including tree order, is" [10:57:37.0000] what is? [11:22:51.0000] bkardell: maybe the comma before is should be dropped [11:34:28.0000] The comma isn't *wrong* there; it can be used to separate out an opening phrase from the following sentence, if both are complex. [12:18:18.0000] wait, sorry... I don't mean to waste people's time if this is a silly topic, but TabAtkins are you saying that you read the first sentence in a way you can understand that seems correct? "In shadow-including tree order, is shadow-including preorder, depth-first traversal of a node tree." [12:18:43.0000] I have no idea how I'm supposed to parse that sentence either [12:19:16.0000] Yes. Perhaps better written as: [12:19:37.0000] "In shadow-including tree order" is shadow-including preorder... [12:19:52.0000] Stuff before comma is an entire phrase being defined by the rest of the sentence. [12:20:04.0000] There's an article missing in the sentence tho, I think. [12:20:15.0000] "is a shadow-including preorder" [12:21:27.0000] Perhaps even better than would be "A traversal "in shadow-including tree order" is [...]"? [12:21:35.0000] Sure. [12:26:45.0000] ok yeah, that is what I was saying. I would try sending a pull or something but I'm honestly not sure how to parse it to offer better verbiage so ... open an issue maybe? [15:27:07.0000] So I was thinking of coming on to ask what part of the HTML spec defines text/plain handling ... and then I found https://html.spec.whatwg.org/#read-text [15:28:00.0000] it's a funny world where (a) I want such a thing (b) such a thing exists [15:40:04.0000] Hmm, I'm going around in circles trying to understand it though :-( 2019-04-18 [01:42:54.0000] huh, ResizeObserver shipping when the spec is totally unclear [02:06:15.0000] smaug____: I was not aware the password-reset form changed [05:39:20.0000] MikeSmith: I got to a page which instructed to send email to somewhere [05:39:38.0000] but that was too late, since I would have need new pw immediately to see conf call details [05:39:48.0000] but got the information in other ways [05:40:21.0000] (I use w3c account perhaps twice a year, so I explicitly don't even want to try to remember the password, but just request a new one always) [05:44:38.0000] annevk: https://twitter.com/annevk/status/1118856702219173888 what did you have in mind re: `frames`? i wrote https://github.com/tc39/proposal-global#html-and-the-windowproxy this morning just so i could link to it [05:45:13.0000] I guess I should just mention it as another way of getting `window` [05:45:54.0000] mathiasbynens: that's mainly what I meant [05:46:11.0000] annevk: gotcha. adding it now [05:46:15.0000] mathiasbynens: most people don't realize that window and frames are the same [05:46:32.0000] (at least, not in my experience) [05:47:08.0000] mathiasbynens: also, the one other nitpick I had is that it not being the global object is really only true when the global object is the Window object, as defined by HTML, afaik [05:47:23.0000] mathiasbynens: I think in all other environments globalThis and global are 1:1 [05:48:13.0000] mathiasbynens: this getter trick is really neat though [05:48:31.0000] mathiasbynens: I wonder if Mark Miller et al know about it [05:48:51.0000] annevk: I agree the difference between Window/WindowProxy is not observable outside of browsers, but it leaks into the implementation in JS engines [05:49:12.0000] annevk: I was wondering about that… this probably enables some kind of sandbox escape :) [05:49:52.0000] annevk: e.g. in V8 we have “global proxy” and “global object” [05:50:02.0000] mathiasbynens: I suspect they prolly freeze Object.prototype or some such [05:50:24.0000] annevk: I know at least Caja/SES freezes built-ins recursively, yeah [05:51:10.0000] annevk: thanks for the suggestions, much appreciated [06:48:53.0000] smaug____: yeah what you describe (about not bothering to remember the password and just request a new one each time) is what I do too with a lot of sites [06:49:11.0000] smaug____: anyway though the form is at https://www.w3.org/accounts/recover [06:50:46.0000] which I do not know myself how to find in the W3C site navigation [06:51:13.0000] MikeSmith: ah there [06:51:18.0000] so I just did https://www.google.com/search?q=w3c+recover+password to find it [06:51:27.0000] it was some non-open mailing list I tried to access [06:51:34.0000] ah [06:51:48.0000] and when I didn't remember the pw, it said I should ask a new pw by sending email somewhere [06:52:02.0000] yeah [06:53:20.0000] anyway, sorry the site itself doesn’t make the form discoverable [07:12:43.0000] annevk: FYI I'll dial in to portions of web components F2F remotely. You have my email :). [07:14:29.0000] Domenic: noted [08:14:05.0000] annevk: any public signal from Mozilla re: lazyloading? https://github.com/whatwg/html/pull/3752 [08:15:32.0000] mathiasbynens: mostly that we’re not clear on the details, I think in the abstract it’s worth doing, but not ready to ship [12:43:24.0000] I've heard that specs now support a concept of "this" [12:45:04.0000] I can't find it, though. I checked INFRA and HTML's common infrastructure [12:45:36.0000] Does anyone know if/where that term has been defined? [12:48:32.0000] jugglinmike: Web IDL [12:48:43.0000] Since it's used when defining operation/attribute steps [12:51:51.0000] ahah https://heycam.github.io/webidl/#this [12:51:54.0000] thanks, Domenic [12:52:54.0000] Ooh, I need to rewrite some algos to refer to that. [12:53:00.0000] And it's just a `[=this=]` autolink. 2019-04-19 [20:23:18.0000] Domenic, annevk: Is https://drafts.csswg.org/css-color-adjust-1/#color-scheme-meta a sufficient definition for a new value? [20:24:40.0000] TabAtkins: nah, needs to state things about inserting/removing/etc. E.g. https://html.spec.whatwg.org/multipage/semantics.html#meta-referrer . (There is some duplicate text between a few meta values we should eventually extract out.) [20:24:57.0000] Similarly needs to pick one winner if multiple exist [20:25:40.0000] It already picks a winner (first wins, per spec), but I can put in something that explicitly re-runs on mutation tomorrow. [20:26:58.0000] "first" in what ordering... [20:27:12.0000] ...document ordering? What other order could there be? [20:27:20.0000] shadow or not [20:27:33.0000] Do you want the first which parses correctly, or the the first that exists, or...? [20:27:34.0000] Ooofa, we out here respecting shadow dom in **? [20:27:53.0000] Yeah, I realized the "parses correctly" condition is important as I was thinking about mutation just now. ^_^ [20:28:04.0000] Well, you didn't restrict to head. [20:28:40.0000] I think the referrer algorithm is a pretty good model of precision and do suggest following it closely until such time as we factor it out :) [20:29:07.0000] Yeah, sounds good. Thanks! [20:29:31.0000] Also I guess for referrer we went with last-valid-one wins so that fallbacks would work as the value space evolved, interesting [20:30:37.0000] I'm going for first-wins because the whole point of this particular meta value is to let us correctly paint the screen asap; it's definitely not consistent with most other things, especially in CSS. [20:31:11.0000] Fair, I guess fallbacks probably still work [20:31:37.0000] Yeah, just have to order them differently than CSS does normally; newer syntax first. [20:32:27.0000] I guess theme-color also does first-wins, so that's at least comforting. [20:37:00.0000] Ah, nice. [05:50:07.0000] wasn't there supposed to be some standardized location for layered api polyfills [08:46:15.0000] TabAtkins or anyone: ELI5, is forced-colors ("high contrast") orthogonal to dark mode/light mode, or are they separate? E.g. if I am designing a control do I need 3 states (light, dark, forced colors) or some matrix (light, dark) x (unforced, forced) [08:47:48.0000] Separate, you need 3 states only. [08:48:16.0000] We'll get the forced-colors details in soon [08:48:38.0000] But yeah, forced overrides any other concerns [14:06:01.0000] Domenic, annevk: Can y'all put appropriate dfn attributes on the meta/name attribute definition? [14:06:26.0000] Sure, file an issue describing the problem. I guess the heuristics didn't work there for some reason. 2019-04-22 [11:42:39.0000] MikeSmith: I forgot to mention you in the original version, but your perspective on https://github.com/whatwg/html/issues/4556 would be much appreciated, especially as the checker maintainer. [14:15:41.0000] Domenic: thanks, will look today [15:06:10.0000] Is HTML Turing-complete? [15:19:23.0000] by relying on weird parser rules [15:58:23.0000] I *doubt* it, but you'd have to look into the details of the inline-closing and table-fixup rules to make sure. 2019-04-23 [17:33:22.0000] I am curious how do teh parsing rules relate to whether it’s Turing-complete or not [18:07:38.0000] https://github.com/whatwg/html/pull/4530#issuecomment-484579017 [18:07:49.0000] > why does DOMContentLoaded not have an IDL/content attribute [07:15:16.0000] MikeSmith: do you know? [08:54:30.0000] MikeSmith: The question is about whether you can encode arbitrary problems into an HTML document, and have the resulting DOM be an encoded form of the result. [09:12:19.0000] hey folks, can any of you just touch the body of https://github.com/whatwg/html/pull/4465 in order to retrigger a PR Preview build? (i.e. add a few line breaks and save it) [09:15:32.0000] actually, never mind, I just remember that I built-in a tool to do this myself. [10:42:43.0000] tobie: if you're still around https://github.com/whatwg/xhr/pull/246 is also not getting a PR Preview [10:43:13.0000] annevk: has anything been working recently? [10:43:46.0000] tobie: no, not really [10:43:51.0000] tobie: that's why I filed that issue [10:44:12.0000] annevk: it's been dead for a couple of weeks for all specs, right? [10:44:25.0000] annevk: I'm sorry about that, btw. [10:45:13.0000] annevk: I think I found the root cause: a tightening of what the GH API accepts as input. But I can't seem to be able to find the solution for now. [10:45:40.0000] tobie: yeah, no worries, it's not easy maintaining that I'm sure [10:46:53.0000] annevk: I'm actually considering doing a open collective for it (or something similar) so I can make sure to block some time off for security updates, and making sure everything is rolling all the time. [10:47:19.0000] tobie: I'm not sure what that is, but whatever makes it sustainable sounds very good [10:47:54.0000] tobie: I realize we also still need to deal with ownership keys, but I'm not sure I'm the right person for that [10:48:43.0000] annevk: indeed. LMK when you find out who is (also because there are changes about to happen on AMS and I'm not sure whether that'll impact whatpr.org) [10:49:38.0000] tobie: ideally I think foolip or MikeSmith take over, as they handle a bunch of server stuff already [10:49:50.0000] annevk: makes sense [10:49:58.0000] annevk: can you cc them on the issue? [10:52:31.0000] tobie: I filed https://github.com/whatwg/misc-server/issues/98 as it seems we didn't really have a dedicated thing [10:52:40.0000] annevk: got it! thanks! [12:53:37.0000] annevk: fixed [16:46:40.0000] annevk: for this issue - https://github.com/whatwg/html/issues/4511 - were you saying the table should be replaced with a set of steps 2019-04-24 [17:15:52.0000] musgravejw: the contents of the cell that are really steps, but are written as an algorithm [17:16:17.0000] tobie: 🎉 [17:19:35.0000] annevk: gotcha. [23:56:31.0000] annevk: FYI - it was decided yesterday (on the webperfwg call) to align TAO with CORS and avoid exposing entries on tainted redirection chains without explicit opt-in from all following hosts, including same-origin [01:51:17.0000] yoav: 🎉 [01:53:37.0000] annevk: related, there are questions around what TAO should do in the context of navigation timing. I'd appreciate your opinion on https://github.com/w3c/navigation-timing/issues/104#issuecomment-485765088 [01:54:36.0000] that is slightly different from CORS AFAIU, as CORS doesn't allow exposing information about a) the previous document b) redirect responses [01:58:42.0000] yoav: yeah exposing redirect count seems like a SOP violation [01:58:52.0000] yoav: is this new? [01:58:57.0000] not at all [01:59:04.0000] :/ [01:59:08.0000] Weird [01:59:52.0000] just trying to define what's currently out there, and realized the current/previous TAO definitions don't make much sense [02:01:09.0000] and not sure what implementations are currently doing, as I don't think this is covered by tests :( [02:01:18.0000] Yeah, I guess you do the checks relative to the origin of the final document so you need to preserve some amount of data while navigating? [02:01:54.0000] As you do not know what the final document might be [02:02:02.0000] yeah, need to preserve the previous document's TAO headers (as well as those of the redirect chain) [02:05:02.0000] I don’t immediately see many exploit angles since controlling the navigated to doc is required [02:05:54.0000] But this is very different from CORS and the normal setup [02:10:28.0000] yeah [02:16:26.0000] yoav: not sure what bz’s concerns are though, perhaps a redirect to a data URL or the initial doc being a data URL [02:22:00.0000] I understand bz's original concerns as related to the fact that the current TAO definition takes in a resource, and nav timing is providing it with a document [02:22:53.0000] For those edge cases, I'm fine with saying TAO doesn't pass and that's it [02:28:13.0000] yoav: I left a comment with a strategy I'd try out to solve this, hopefully bz will say something if he disagrees [02:28:35.0000] 👍 [02:28:36.0000] yoav: it kinda makes me wonder if the TAO header is the header we're looking for to expose more about redirects [02:30:03.0000] It's potentially already exposed. I need to write some tests to see how it currently works, which will give us a better idea of compat impact if we want to change [02:54:48.0000] MikeSmith: I take it that the validator/validator GitHub ssh key additions for TravisCI and CircleCI are legitimate? [03:25:47.0000] The 1024-byte scanning limit was based on WebKit behavior. Has WebKit changed its limit since? What mechanism makes http://www.thsrc.com.tw/index.html decode as UTF-8 in Safari? [03:26:01.0000] (The charset meta is not within the first 1024 bytes) [03:30:01.0000] oh, if it figures that hasn't ended yet, it can parse past 1024 bytes [03:30:25.0000] does this predate the spec or did WebKit just make stuff up here? [04:08:32.0000] hsivonen: the spec allows reloading past 1024 bytes, no? [04:08:46.0000] annevk: yes, but this isn't a reload [04:09:23.0000] (not a reload in Safari, that is. It is a reload in Firefox) [04:09:27.0000] hsivonen: and impls are not allowed to optimize those away? [04:09:45.0000] (note that I don't think any of this is great) [04:10:00.0000] possibly they are, but it's not like WebKit is optimizing all reloads away [04:11:53.0000] hsivonen: it seems HTML also allows scanning more than 1024 bytes, it's not an enforced limit by any means [04:12:37.0000] From what I recall it was always mostly a hope we could tighten that up, not something we had codified and reached impl agreement on [04:12:58.0000] annevk: ok [04:27:46.0000] hsivonen: yes those ssh keys are legitimate [04:30:33.0000] MikeSmith: ok [04:31:30.0000] context is that somebody raised an issue asking for Java9+ runtime images of the checker [04:32:33.0000] so, battling with TravisCI esoterica to automate building of those and to make them available once built [04:36:44.0000] the images are ~48MB, compressed [05:20:13.0000] annevk: FWIW, it appears that our Cyrillic detector is a C++ port of https://www.neystadt.org/cyrillic/ [06:44:46.0000] annevk: https://github.com/whatwg/fetch/pull/853 not sure what needs to be done to progress this again. There were questions of what Gecko does [06:52:06.0000] dtapuska: if those questions need answers it'd be best to ask mayhemer 2019-04-25 [07:47:15.0000] Hey! Any IDL experts that can answer an IDL related question? [07:47:30.0000] https://github.com/w3c/user-timing/pull/57#discussion_r276712039 [08:49:54.0000] (answered) 2019-04-26 [04:25:02.0000] so, when using Custom Elements, what is the proper way to reflect properties:attributes? [04:25:20.0000] make setters/getters delegate their work to set/getAttribute? [04:25:27.0000] or the other way around? [04:25:47.0000] (just got into an infinite loop handling this...) [08:31:29.0000] ondras: the former. That is how native elements work, per the specification of Reflect. [08:40:08.0000] i've got a question stemming from https://github.com/whatwg/sg/issues/84 [08:40:32.0000] where the steering group has apparently be stymied for over six months about whether or not the Wikimedia Foundation is "in the field of web technologies" [08:41:45.0000] anyway, in the past few weeks the WMF actually joined the W3C and is a member now [08:42:12.0000] does that simplify the question at all? Is the W3C an "entity" in the WHATWG? [08:44:38.0000] cscott: the w3c isn't a legal entity at all [08:45:43.0000] cscott: there are four w3c "host institutions" that are legal entities, and (iirc) none of them have signed the whatwg participant agreement [08:51:51.0000] so short story, the w3c doesn't have any defined role wrt the whatwg, and so joining the w3c is a bit of a nothingburger in terms of resolving issue #84 [08:52:33.0000] is that right? [08:54:22.0000] I'm afraid so [09:00:33.0000] cscott: if your organization is fine with joining the W3C, legal shouldn't have a problem signing the WHATWG agreement I think [09:05:56.0000] /me (aside) cscott: out of curiosity, who's WMF's w3c advisory committee representative? [09:06:20.0000] /me brionv? is he still there? i'm very out of the loop 2019-04-27 [23:03:31.0000] Sigh. http://exple.tive.org/blarg/2019/04/26/synchronous-text/ [01:03:27.0000] Domenic: would be nice if somewhere in all those words there were even just a few that actually stated what the specific problems are with IRC [01:04:08.0000] ...problems that the alternatives don’t have [01:04:27.0000] well the alternatives all have their own problems too [01:05:05.0000] so it would be good to see an explanation of what the requirements are and how IRC does not meet the requiremennts [01:05:15.0000] > , it’s irresponsible of us to ask our people – employees, volunteers, partners or anyone else – to work in an environment that we can’t make sure is healthy, safe and productive. [01:07:49.0000] like, what it is about IRC that creates an environment that’s not healthy, safe, or productive [01:09:20.0000] well as far as productive, a lot of contributors clearly find IRC pretty productive. Otherwise they wouldn’t be relying on it and would have no objection to it being exiled [01:11:27.0000] and as far as healthy and safe, personally I find that entire tone of that blog post to be alienating and unnecessarily provocative [01:12:28.0000] it is not the kind of communication I would expect to see from somebody in leadership with power and authority for making decisions that have big effects on others [01:13:38.0000] MikeSmith: Moderation. Threading. Embedded niceties. [01:13:51.0000] I don't like the decision but there are indeed reasons. [01:16:44.0000] MikeSmith: Not sure what you think is alienating btw, there are regularly vile spambots on both Freenode and Moznet. [01:16:56.0000] (Note that I would rather we stay on IRC) [01:17:52.0000] nox: it comes across as overly and summarily dismissive of anybody who might disagree with him [01:18:14.0000] MikeSmith: I don't read it this way. [01:18:23.0000] I do [01:18:30.0000] I respect that you do not [01:18:32.0000] but I do [01:18:33.0000] very much [01:18:52.0000] > I found this at the top of a draft FAQ I’d started putting together a while back. It might not be what you’d call “complete”, but maybe it is: [01:18:55.0000] MikeSmith: That you paint it that harshly make it sound like IRC has no issue on that front. [01:18:55.0000] Q: Why are we moving away from IRC? IRC is fine! A: IRC is not fine. [01:18:55.0000] Q: Seriously? You’re kidding, right? A: I’m dead serious. [01:19:08.0000] IRC has all kinds of issues [01:19:24.0000] that goes without saying [01:19:40.0000] I am not claiming that it has no issues [01:20:11.0000] but somehow right now we are using it to have a productive discussion [01:20:18.0000] in spite of the issues [01:21:48.0000] e-mail has issues [01:22:03.0000] twitter has more issues that just about anything else [01:22:29.0000] MikeSmith: My opinion on this is https://twitter.com/nokusu/status/1122052969309061121 [01:22:35.0000] /me looks [01:24:32.0000] I agree but from the tone of that blog post I don’t get the impression that he is even saying “fix IRC with more IRCv3 niceties and a decent FOSS client supporting those niceties” is an option [01:24:56.0000] instead it is fait accompli [08:06:52.0000] can someone define "embedded niceties" [08:11:05.0000] domfarolino: Attachements and stuff like that. [08:11:27.0000] Gotcha [08:47:04.0000] MikeSmith: See, for example, the *endemic* CP/harassment spambots that have been plaguing freenode, and made this channel unusable for a while. 2019-04-29 [22:11:23.0000] Hi there, I'd like to contribute to this issue for wpt (https://github.com/web-platform-tests/wpt/issues/11588). But I have some questions, which channel should I ask? Thanks! [22:31:12.0000] Here is good, though irc.w3.org's #testing channel might even be better [00:39:54.0000] cybai: what do you want to know? [00:41:25.0000] domfarolino: ah, thanks; didn't notice your reply. I saw #testing channel is archived from wpt readme so I didn't check it 😂 (https://github.com/web-platform-tests/wpt#getting-involved) [00:42:16.0000] annevk: For example, I'd like to move these 2 tests into `.any.js` format (https://github.com/web-platform-tests/wpt/blob/master/xhr/open-url-redirected-sharedworker-origin.htm, https://github.com/web-platform-tests/wpt/blob/master/xhr/open-url-redirected-worker-origin.htm) [00:42:46.0000] cybai: archived means public logs [00:44:04.0000] annevk: and I read the documentation of `.any.js`, document says `.any.js` will transform the test into `fetch_tests_from_worker` automatically. but both tests will load different url for `Worker` and `SharedWorker`, I'm stuck at I don't know how to load a different url in `fetch_tests_from_worker` for `.any.js` 🤔 [00:44:16.0000] annevk: ah, I see! thanks! [00:47:57.0000] cybai: okay, one sec [00:49:21.0000] thanks 🙏 [00:50:14.0000] cybai: you cannot really turn these into a .any.js test I think [00:50:44.0000] cybai: you could turn them into .window.js, but as they need to use the Worker and SharedWorker constructor that's really the best you can do [00:52:03.0000] cybai: an HTML test file that contains the XMLHttpRequest constructor can typically be turned into .any.js, as it should work when executed in a worker or shared worker context as well [00:52:35.0000] cybai: but if those workers need to be instantiated in a particular way, as is the case here, that doesn't work [00:54:17.0000] annevk: I see! Thanks! So `.any.js` is handy for `XMLHttpRequest constructor` tests with the `fetch_tests_from_worker` function and it doesn't work for `open-url-redirected-worker-origin.htm` and `open-url-redirected-sharedworker-origin.htm` because they're instantiated by different urls [00:54:34.0000] annevk: (btw, I just logged into the #testing channel, how about moving our discussion there :)? [12:01:17.0000] Domenic: okay, thanks. 2019-04-30 [02:23:54.0000] annevk: FYI https://stackoverflow.com/questions/55914486/issue-making-range-requests-in-some-browsers [02:42:01.0000] annevk: also https://stackoverflow.com/questions/55913537/does-server-302-redirect-take-precedence-over-other-xhr-callbacks [02:50:54.0000] MikeSmith: answered second, first has an adequate answer [02:51:36.0000] thanks [06:09:43.0000] A) "Let X be 1 if Y, or 2 otherwise." B) "Let X be 1 if Y, and 2 otherwise." [06:09:52.0000] MikeSmith: gsnedders: jgraham: ^^ [06:09:58.0000] please vote [06:18:51.0000] annevk: B, I think. Though I think both are grammatical. [06:20:33.0000] gsnedders: interesting, Domenic quite strongly prefers A and I was about to change things around [06:20:58.0000] I don't really have a particularly storng preference. [06:21:51.0000] It's very hard to find some kind of reference for it too [06:26:22.0000] Whatever you do, put it in infra.s.w.o [06:32:38.0000] Yeah, I might make it a Twitter poll after all, kinda curious [06:37:10.0000] https://twitter.com/annevk/status/1123219698198482944 [06:38:37.0000] annevk: the iWeb corpus has way more hits for 'and false|true otherwise' than 'or false|true otherwise' [06:39:20.0000] gsnedders: iWeb? [06:39:23.0000] Domenic: ^^ [06:40:54.0000] annevk: it's the largest corpora at https://www.english-corpora.org nowadays [06:41:45.0000] padenot suggests "Let V be true if C, false otherwise" [06:42:53.0000] "Let V be C coerced as a boolean" [06:42:55.0000] /me hides. [07:00:13.0000] Hi! Is there any particular reason why parsed CSS and the CSSOM don't use DOM as a standard? Is there anything preventing building a DOM interface to parsed CSS stylesheets and rules? [07:03:01.0000] innovati_: CSS is not composed of elements, attributes, comments, CDATA sections, and text nodes, so it wouldn't be a very good fit. [07:04:31.0000] it's a tree structure of stylesheet lists, stylesheets that have properties and content, and css rules that have properties and content [07:04:53.0000] Yep, that's very different. [07:05:02.0000] (Also I don't think the stylesheet lists are a tree.) [07:05:10.0000] (They're a list.) [07:05:16.0000] I've been experimenting with converting CSSOM -> DOM and it does seem useful to get at it and access it that way, I guess I just didn't understand why it wasn't more like that already [07:05:45.0000] well you have 1 document.styleSheets just like you have 1 document.documentElement, and all other content is a child of that. Tree structure. [07:06:03.0000] You can always convert arbitrary data structures into other arbitrary data structures. If the converted-to data structure is flexible enough, then you can do so in a structure-preserving way, so that any arbitrary data can be put in that data structure. But that doesn't mean the converted-to data structure is the most useful one. [07:07:08.0000] After looking at them both I'm at a loss to understand why DOM can't work for it I guess? [07:07:09.0000] The thing that makes document.documentElement interesting, and part of a tree structure, is that it's an _element_. Its children are of the same type as it. document.styleSheets is a list (CSSStyleSheetList IIRC), but its children are stylesheets (CSSStyleSheet IIRC). Quite different. [07:07:22.0000] DOM can work for anything, is my point. It just doesn't work well. [07:07:34.0000] yes there are a few different types of things in CSSOM, but those can be represented by different types of nodes [07:08:37.0000] Yes, but for example, I could represent x76 assembly as a DOM tree. Or I could represent a dog as a DOM tree. You can come up with mappings from anything to a DOM tree. It's just not very useful. [07:08:57.0000] As long as you're flexible and say "oh, each part of the dog is just a type of DOM node", then you can easily map. [07:09:25.0000] What is it about DOM that makes it not work well for parsed CSS objects? It seems beneficial enough to bother converting CSSOM -> DOM to get at it with better tools. There are already a lot more DOM-capable tools than CSSOM-capable tools out there, I'm wondering why CSS needs its own separate Object Model and can't re-use the DOM standard, or why DOM can't be adapted to handle things like CSS while keeping it all standardized [07:10:23.0000] Well, DOM is very specific: one document, which contains 0-1 DOCTYPEs, 0-n processing instructions, and 1 element. That element contains children, which are elements, comments, text nodes. Elements have attributes and children; other node types do not. [07:10:31.0000] If something doesn't meet that exact structure, then it's not a good fit for the DOM. [07:10:56.0000] CSS has a very different structure: no tree, just a flat list of rules. [07:11:07.0000] There is no counterpart to "element" which can be infinitely nested [07:11:31.0000] CSS also has special rules like @media, etc., which can have one single level of nesting of other types of things inside them. There's nothing like that in DOM land. [07:11:41.0000] There's no text nodes; there's only rules and declarations [07:11:44.0000] There's no attributes. [07:11:55.0000] There's namespaces, but they work differently. [07:12:14.0000] It's best to come up with a data structure (CSSOM) which captures all these CSS-specific structures and constraints. [07:12:32.0000] That's all I have time for for now :). Hope it helps. [07:13:01.0000] there's a stylesheet list with stylesheet objects. There are properties on these stylesheet objects that seem like they could be attributes. Inside the stylesheets there are CSS rules that also have properties [07:13:03.0000] some CSS rules can contain other CSS rules, like @media, but it's not limited to a depth of 1 [07:13:03.0000] it's a true tree structure [07:13:05.0000] rules can contain rules can contain rules, etc [07:14:04.0000] I wonder how native selector nesting will be represented in CSSOM, maybe things are about to get a lot more nested [07:21:18.0000] innovati_: if you can rewrite the existing CSS stuff on top https://dom.spec.whatwg.org/#concept-tree and reduce complexity I think that'd demonstrate that there might be something there [07:21:39.0000] innovati_: when we're talking about more concrete objects though it makes a lot less sense to me [07:22:34.0000] innovati_: but there is something to be said for generic operations on trees to work on both, similar to how Array operations work on typed arrays and such, to some extent [07:23:53.0000] This is rough - it only supports 3 CSS rule types, but it converts CSSOM to a data structure (MicroXML) which can easily be converted into DOM. Once you have it in DOM suddenly you can inspect that structure in dev tools, JS has a bajillion built-in methods for analyzing and even working with DOM that it lacks for CSSOM: https://codepen.io/tomhodgins/pen/wZNVYo [07:25:01.0000] I've been doing a lot of experiments with parsing and I was thinking the other day - what if that AST you parse stuff to was DOM instead of just something custom. Is that a step up from arrays and objects in JS? You get a standardized set of tools to work with it, and if you did that every time, I imagine you'd have a lot more interoperability between tools [07:25:29.0000] If DOM isn't that standard or isn't flexible enough, maybe it's worth there being something that can represent tree structures of data with a standard set of operations on them for that purpose instead [07:26:44.0000] I suppose one could have a @@treewalker protocol similar to @@iterator, but I'm not sure what that would be like and for which things it would work and how [07:30:46.0000] what ordering would it even use? [07:31:55.0000] gsnedders: as long as they all use concept-tree as underlying primitive that's defined right there [07:33:01.0000] I have a function I use sometimes when I want to touch every rule in the tree and operate on it with a JS callback function: https://github.com/tomhodgins/cssomtools/blob/master/index.js#L20&L40 is that the sort of thing you're talking about? [07:33:13.0000] it has to be a recursive solution to get infinitely nested rules [07:33:31.0000] well, not infinite but deeply nested [07:41:42.0000] yes (but you left) [07:56:56.0000] hmm I guess I'll read more of the DOM spec and keep digging :D Are there other good resources for learning DOM apart from the spec itself? [08:34:05.0000] littledan: I'm not seeing ClearKeptObjects defined anymore? [09:05:44.0000] annevk: It's defined in https://github.com/tc39/proposal-weakrefs/pull/86/files#diff-d9d881ee65a07bfc860db6062acc5e68R162 [09:06:24.0000] and used in https://github.com/whatwg/html/pull/4571/files#diff-36cd38f49b9afa08222c0dc9ebfe35ebR89634 [09:19:56.0000] littledan: ah had not looked at PRs [09:21:00.0000] annevk: do you remember why it's AbortSignal? signal for fetch? Instead of just using undefined to mean not present? [09:21:38.0000] Domenic: Request#signal iirc [09:21:49.0000] Hmm I see [09:22:36.0000] Domenic: if there’s an interface and dictionary you run into that quickly unfortunately [09:23:27.0000] Domenic: interface could return undefined I suppose, but might also be confusing, esp. given long tradition to not do that [09:23:41.0000] Yeah. Just means that the pattern is going to spread to other APIs I think. [09:26:14.0000] Domenic: if passing the interface as dictionary makes sense that seems okay [11:11:22.0000] can we get any sort of process for submitting feature requests? [11:11:33.0000] https://discourse.wicg.io/t/meta-tag-for-protocol-handlers-default/3525 [11:13:58.0000] hm... [11:14:07.0000] wait let me try something