| 00:22 | <wanderview> | jyasskin: can you elaborate? |
| 00:22 | <wanderview> | "browser changes its Accept header" means the service worker manipulates Accept? |
| 05:16 | <jyasskin> | wanderview: When a page requests an image, say, it sets an Accept header of `image/png,image/svg+xml`. The SW uses cache.get(request) to cache it, and the server returns a Vary:Accept header. Then, a later browser version updates its Accept header to `image/webp,image/png,image/svg+xml`, and https://w3c.github.io/ServiceWorker/#query-cache-algorithm skips |
| 05:16 | <jyasskin> | the cache entry in the "For each f in varyHeaders" loop. |
| 05:17 | <jyasskin> | I'm not sure if there's a way to get there for entries that are cached in the 'install' step, without explicitly setting the Accept header. |
| 05:18 | <jyasskin> | s/cache.get/cache.add/ |
| 07:19 | <hsivonen> | annevk: checking just in case: Was it a deliberate decision to go with Blink and Presto (and presumably WebKit; can someone check?) and not with IE/Edge and Gecko for bogus Shift_JIS byte sequences? https://hsivonen.com/test/moz/bogus_shift_jis.htm |
| 07:21 | <hsivonen> | Indeed Edge still has the alleged IE6 behavior. I didn't bother testing with IE6, because my https setup is XP-incompatible and I no longer have a plain-http place for test cases. (Oops.) |
| 07:24 | <annevk> | hsivonen: yes, that was deliberate |
| 07:24 | <hsivonen> | annevk: OK. |
| 07:24 | <annevk> | hsivonen: I can dig up a bug number if you want |
| 07:24 | <annevk> | hsivonen: Encoding used to define the Gecko/IE behavior |
| 07:25 | <hsivonen> | annevk: I'd be curious to see if emk commented on the bug |
| 07:25 | <annevk> | Hmm, change was made in https://github.com/whatwg/encoding/commit/651f672ee988702da03f56ad8bdfda00b51a21ea |
| 07:26 | <annevk> | Going to require some more digging to find corresponding discussion |
| 07:28 | <annevk> | https://bugzilla.mozilla.org/show_bug.cgi?id=747762 was after-the-fact discussion |
| 07:35 | <hsivonen> | annevk: thanks. commented there. |
| 07:36 | <annevk> | hsivonen: I can't find the original discussion, but it seems emk agreed in part and later I added EUDC handling back |
| 07:37 | <annevk> | hsivonen: adding that back happened in https://www.w3.org/Bugs/Public/show_bug.cgi?id=24130 |
| 07:38 | <hsivonen> | I take it that since emk filed a counter-bug only for point #3, points #1 and #2 were indeed ok enough |
| 07:42 | <hsivonen> | This is probably the riskiest change in behavior arising from encoding_rs so far |
| 07:48 | <annevk> | I tried searching a bit more, but I can't find anything that lead to the original removal of the quirks |
| 07:50 | <annevk> | Maybe it was based on something at Opera |
| 07:51 | <annevk> | I do remember Opera's encoding engineer not liking PUA so much |
| 07:51 | <foolip> | tobie: thanks for commenting on that issue |
| 07:51 | <annevk> | I wonder what Peter's up to now |
| 07:52 | <tobie> | foolip: np. |
| 07:53 | <hsivonen> | I take it that CYRILLIC SMALL LETTER SHORT U has taken the place of a box drawing character in koi8-u after Web Platform Tests were made |
| 07:53 | <hsivonen> | rather unusual to have to edit a Web Platform Test for this stuff instead of just deleting the failure expectations :-) |
| 07:55 | <annevk> | hsivonen: almost time for https://i.imgur.com/7drHiqrh.jpg? |
| 08:06 | <hsivonen> | annevk: unfortunately, we need some kind of meme for "No" arising from key Rust features being nightly-only |
| 08:49 | <zcorpan> | So how do I go about making new DOMMatrix("matrix(1,0,0,1,0,0)") throw in workers? annevk Domenic |
| 08:49 | <zcorpan> | check if current global object is not the primary global interface? |
| 08:50 | <annevk> | zcorpan: "If current global object is not a Window object and init is a string, then throw a TypeError." |
| 08:50 | <zcorpan> | thanks |
| 08:50 | <nox> | Out of curiosity, why is this forbidden? |
| 08:53 | <zcorpan> | nox: https://github.com/w3c/fxtf-drafts/issues/122 |
| 08:55 | <nox> | Fun. |
| 08:55 | <nox> | zcorpan: Will constructors forever be specified by extended attributes btw? |
| 08:55 | <nox> | zcorpan: You need prose only because extended attributes can't themselves have extended attributes, right? |
| 08:56 | <zcorpan> | nox: yeah, webidl doesn't support this case with syntax |
| 08:56 | <nox> | zcorpan: Are there plans to make constructors not rely on extended attributes anymore? |
| 08:57 | <nox> | Just curious because in Servo I would like to be able to mark some of them as non-throwing, and I can't do that currently. |
| 08:58 | <zcorpan> | nox: there has been talk about more or less radically changing webidl sytnax, but not much progress on that lately. i guess there's a big cost to doing that |
| 08:58 | <nox> | Ok, thanks. |
| 08:59 | <nox> | hsivonen: "Key Rust features?" |
| 08:59 | <annevk> | nox: that sounds like something you should file an issue for against IDL |
| 09:00 | <nox> | annevk: Why? |
| 09:00 | <annevk> | nox: I hadn't considered the argument that since constructor is an extended attribute we can't have nice things |
| 09:00 | <nox> | annevk: IDL has no notion of whether things throw or not. |
| 09:00 | <annevk> | nox: others might not have either |
| 09:00 | <nox> | Ah. |
| 09:00 | <nox> | Will do then |
| 09:01 | <annevk> | nox: IDL should maybe have a notion about throwing at some point I think, it's nice to be able to assert things like that |
| 09:01 | <nox> | annevk: Did we ever consider having [Abstract] too btw? |
| 09:01 | <nox> | E.g. on Node, which doesn't exist on its own. |
| 09:02 | <annevk> | nox: probably worth filing an issue for if there are use cases, even if just codegen use cases |
| 09:02 | <nox> | Ok. |
| 09:02 | <annevk> | nox: I don't recall a discussion myself, just with you here |
| 09:02 | <nox> | I guess I'll do some filing today, |
| 09:02 | <nox> | when grid-template-areas parsing make me too miserable. :P |
| 09:03 | <annevk> | No small feat for a parser to do that given you worked on one for HTML |
| 09:04 | <nox> | Ah ah, true. |
| 09:05 | <nox> | Just complaining because I was having fun and short compile times in Servo's network code, until I got abducted by stylo's team. |
| 09:59 | <annevk> | Where is the last discussion on whether <link> should work like a hyperlink? https://github.com/whatwg/html/issues/2617 |
| 10:04 | <hsivonen> | nox: SIMD |
| 10:05 | <annevk> | hsivonen: so encoding_rs cannot ride the trains because it relies on Rust SIMD? |
| 10:06 | <hsivonen> | annevk: not unless we change policy, no |
| 10:07 | <annevk> | hsivonen: where did we decide on this policy? Searching for Rust SIMD yields very few emails |
| 10:07 | <hsivonen> | (I intend to propose a policy change, but I want to have concrete numbers when I do so) |
| 10:07 | <hsivonen> | annevk: the relevant policy is that Firefox uses release-channel rustc |
| 10:07 | <hsivonen> | annevk: I don't recall if it was a publicly-recorded discussion |
| 10:08 | <annevk> | Oh, SIMD is relatively new to Rust new? |
| 10:08 | <MikeSmith> | annevk: Peter at http://www.bridgetech.tv/ still maybe |
| 10:09 | <hsivonen> | annevk: no, but the person who was developing it left to Google and then the feature got limboed. The person working on it now isn't doing it as a day job. |
| 10:09 | <annevk> | MikeSmith: yeah I think so |
| 10:10 | <MikeSmith> | guess he hasn’t worked on encoding-related stuff in a long time and probably doesn’t miss it :) |
| 10:10 | <annevk> | TIL Palantir contributes to Rust |
| 10:11 | <nox> | hsivonen: I'm -1 on requiring nightly. |
| 10:11 | <nox> | We should instead push harder for simd stabilisation. |
| 10:11 | <annevk> | MikeSmith: he was a big Unicode fan, but maybe |
| 10:11 | <nox> | annevk: And serde too. |
| 10:12 | <hsivonen> | being a Unicode fan doesn't imply that on misses encodings. esp. ones other than UTF-8 :-) |
| 10:13 | <annevk> | MikeSmith: I wish Mozilla would hire him to make a Rust version of ICU |
| 10:13 | <nox> | hsivonen: Do you mean that the simd crate original author left for Google? |
| 10:14 | <hsivonen> | nox: that's my understanding. Have I understood incorrectly_ |
| 10:14 | <nox> | AFAIK you can leave for Google and still have a FOSS life, if you mean huonw he was appled away. |
| 10:14 | <hsivonen> | nox: I was mistaken, then. |
| 10:14 | <nox> | hsivonen: Just a big corp away. :) |
| 10:15 | <nox> | hsivonen: What's the relation between encoding_rs and whatwg btw? |
| 10:16 | <hsivonen> | nox: encoding_rs implements a WHATWG spec and the developer of encoding_rs has a GitHub badge when commenting on WHATWG specs. |
| 10:17 | <nox> | Ah ah ok. |
| 10:17 | <nox> | Was just curious why you people were discussing about it here. |
| 10:17 | <nox> | hsivonen: Any clue what's the status for simd in Rust currently? I stopped following this discussion a while ago. |
| 10:18 | <hsivonen> | nox: my understanding is that there was enough agreement for BurntSushi to start implementing what was discussed, and he is working on it alone |
| 10:19 | <nox> | Ok. |
| 10:19 | <hsivonen> | nox: the discussion was here, because I asked about the spec not having a particular pair of IE/Gecko quirks |
| 10:19 | <nox> | Quirks, always missing quirks. |
| 12:06 | <KiChjang> | what does "non-conforming" mean in the HTML spec? |
| 12:10 | <MikeSmith> | KiChjang: it generally means a document-conformance requirement |
| 12:10 | <KiChjang> | what does it mean for a document to conform? |
| 12:12 | <MikeSmith> | it means the document does not violate any requirements in the spec |
| 12:13 | <MikeSmith> | the document-conformance requirements are stated in order to prevent documents from using certain markup cases that have unintended bad effects |
| 12:14 | <MikeSmith> | see https://validator.w3.org/nu/about.html#why-validate for a short version |
| 12:15 | <MikeSmith> | see https://html.spec.whatwg.org/multipage/introduction.html#syntax-errors for a longer explanation |
| 12:15 | <MikeSmith> | and https://html.spec.whatwg.org/multipage/introduction.html#restrictions-on-content-models-and-on-attribute-values for yet more details |
| 12:17 | <MikeSmith> | but the shortest answer is: |
| 12:17 | <MikeSmith> | > There are some markup cases defined as errors because they are potential problems for accessibility, usability, interoperability, security, or maintainability—or because they can result in poor performance, or that might cause your scripts to fail in ways that are hard to troubleshoot. |
| 12:18 | <MikeSmith> | > Along with those, some markup cases are defined as errors because they can cause you to run into potential problems in HTML parsing and error-handling behavior—so that, say, you’d end up with some unintuitive, unexpected result in the DOM. |
| 12:42 | <annevk> | zcorpan: you closed https://github.com/whatwg/html/issues/2443 but as far as I can tell the specification doesn't do case-insensitive matching |
| 12:42 | <annevk> | zcorpan: I'm reworking the choosing a browsing context algorithm and it seems to just do string comparison |
| 12:46 | <zcorpan> | annevk: https://html.spec.whatwg.org/multipage/browsers.html#valid-browsing-context-name-or-keyword allows case-insensitive. I guess I didn't look closely at "The rules for choosing a browsing context given a browsing context name" |
| 12:47 | <annevk> | Okay, I'm going to reopen that issue and address it in my patch then |
| 12:48 | <zcorpan> | sounds good. thanks! |
| 13:21 | <wanderview> | jyasskin: yea, I guess the service worker script would have to be smart enough to re-cache in that case |
| 14:00 | <annevk> | Whoa, rewriting those rules took long |
| 16:26 | <nox> | I'm just being curious but, |
| 16:26 | <nox> | TabAtkins: any clue was grid-template-areas uses strings instead of separating each row by `/` or something? |
| 16:26 | <nox> | s/was/why/ |
| 16:28 | <TabAtkins> | Largely a historical artifact. |
| 16:31 | <nox> | TabAtkins: Curiosity satisfied, thanks. |
| 16:32 | <wanderview> | JakeA: our plan to do a different useCache setting for importScripts... is that easily applied to dependent module records? or will module workers still only check the top level script? |
| 16:34 | <tobie> | Does the HTML standard address what happens to focus when the user agent looses focus? |
| 16:37 | <tobie> | Trying to mitigate password skimming using motion sensors. Turns out that some browsers still consider you're focused in the top-level browsing context when you're actually typing your 1password code. :( |
| 16:39 | <tobie> | visibility state doesn't seem to help here either (page is still visible). |
| 16:39 | <tobie> | Is there something else I should be looking at? |
| 16:40 | <wanderview> | tobie: IntersectionObserver? |
| 16:40 | <wanderview> | or maybe that doesn't help either |
| 16:41 | <tobie> | wanderview: that tells you whether an element is in the viewport or not, right? |
| 16:41 | <wanderview> | yea, I got confused about your use case |
| 16:42 | <tobie> | wanderview: yeah, I assumed visibility state was good enough, but it's not. :( |
| 16:43 | <annevk> | Domenic: sorry, I think I'm a little tired |
| 16:49 | <annevk> | Domenic: are there no <script type=module> web-platform-tests atm? |
| 16:49 | <Domenic> | annevk: there's a decent amount, from an initial Microsoft import. There are some bugs we're discovering, both in the tests and the spec; we are trying to upstream as we implement in Chrome. |
| 16:50 | <annevk> | Domenic: interesting, I'll note that in https://bugzilla.mozilla.org/show_bug.cgi?id=1330900 as it seems our implementation didn't trigger any change in results |
| 16:51 | <Domenic> | annevk: from https://bugzilla.mozilla.org/show_bug.cgi?id=1330900#c5 it seems like they are not being run because modules are preffed off? |
| 16:51 | annevk | blames being tired |
| 16:52 | <wanderview> | Domenic: well, we can flip prefs when running WPT tests |
| 16:52 | <wanderview> | although I don't see that bug doing it |
| 16:53 | <Domenic> | Get some sleep annevk :). Sorry for my late-shifted schedule these days. |
| 17:04 | <JakeA> | wanderview: I'm having trouble bending my brain round your message… sorry if this doesn't answer your question: I expect module script static imports to behave like importScripts in regards to cache usage & byte checking |
| 17:05 | <wanderview> | JakeA: ok... I just didn't know how easy that was to do with the module spec, etc... I noticed there are different paths in SW spec for classic vs module |
| 17:07 | <JakeA> | wanderview: Yeah, it's going to take some work with the html spec I think. https://github.com/w3c/ServiceWorker/issues/908 is kinda related |
| 17:07 | <wanderview> | ah, ok |
| 20:23 | <smaug> | hmm, since pages seem to misuse Promises, somehow thinking that they are asynchronous, I wonder if there was some way to start to paint between microtasks |
| 20:24 | <smaug> | that would be quite evil, sure |
| 21:49 | <jyasskin> | I'm surprised to see that https://w3c.github.io/mediacapture-main/#overconstrainederror-object is defining a new Error subclass instead of a DOMException. Should other specs consider doing that too? |
| 21:50 | <Domenic> | jyasskin: no. The issue is they need more information fields than just name/message, apparently. |
| 21:50 | <Domenic> | We'd like to make that easier in IDL (e.g. `exception Foo : DOMException { ... }` or something) but haven't so far. |
| 21:51 | <jyasskin> | Ah, I see. |