2019-03-01 [21:08:09.0000] hi there, I'd like to ask, when using keyboard "Up arrow" key and "Down arrow" key to , which part of spec should I refer to? I didn't find similar things in https://html.spec.whatwg.org/multipage/input.html#date-state-(type=date) [21:08:11.0000] thanks! [22:27:13.0000] cybai: the spec intentionally doesn’t prescribe any requirements for that [22:28:30.0000] cybai: it is up to the browser to present the appropriate UI depending on the device and input method (e.g., on mobile you’re not gonna be using up/down arrow keys there anyway) [22:30:03.0000] MikeSmith: Ah! I see! (the mobile case makes sense to me!) and thanks answering to me! btw, I asked because when I tried to use keyboard to add date on , I can add to 2/31 [22:30:27.0000] ah [22:30:37.0000] that is a browser bug I guess [22:30:58.0000] I tried on Chrome and Firefox and both of them did the same trick [22:31:12.0000] (I'm on macOS) [22:31:28.0000] Should I file a bug for it? [22:31:33.0000] I would yeah [22:31:39.0000] ok! thanks! [22:31:44.0000] cheers [22:31:58.0000] :D [22:36:04.0000] MikeSmith: hmm, sorry, please let me ask a dummy question 🙇 Should I file the issue for both bugzilla and crbug? Or it's fine to file it at whatg/html GitHub repo? Thanks [22:38:56.0000] cybai: for both Mozilla’s bugzilla and crbug for Chrome, yeah [22:39:05.0000] MikeSmith: thanks! [22:49:33.0000] https://bugzilla.mozilla.org/show_bug.cgi?id=1531652 [22:49:42.0000] https://crbug.com/937192 [22:49:45.0000] here they are :) [22:54:04.0000] cybai: thanks ー Cc’d myself on both [22:54:33.0000] :+1: [03:24:13.0000] annevk, wanna review https://github.com/heycam/webidl/pull/668 too? :) [04:24:57.0000] Ms2ger: it works, but it seems a little weird to me to use an ECMAScript object for an internal data structure [04:25:07.0000] Ms2ger: it makes me worried about that leaking somehow [04:25:17.0000] Ms2ger: but maybe this is how implementations do it as well? 😃 [04:42:51.0000] annevk, Gecko certainly, yeah [04:43:44.0000] Ms2ger: I guess it makes sense [04:44:23.0000] annevk, a Record could probably have worked too, but that would've meant duplicating all the "define the attributes" stuff [04:45:40.0000] Ms2ger: some things would have to be parameterized, indeed [04:46:13.0000] annevk, maybe I could add a note that the object will never escape [04:47:29.0000] Ms2ger: I did think of that, but either way is fine [05:30:47.0000] Domenic: if you could direct whoever contacted you about attending the "Web Components" meeting to comment on https://github.com/w3c/webcomponents/issues/786 that'd be great [05:31:29.0000] Domenic: I'll ensure they get in and have a say, assuming nobody objects to Mozilla hosting [07:58:10.0000] Hi annevk. Re https://github.com/servo/rust-url/issues/488, do you think the spec should change to support path only (no authority) URLs with "://" ? [08:01:45.0000] SimonSapin: what would that mean? [08:02:36.0000] such that indexeddb://foo/bar can parse without the cannot-be-a-base flag [08:02:59.0000] and without a host name [08:03:05.0000] ("foo" is part of the path) [08:03:08.0000] SimonSapin: but how would we decide the schemes to apply that to? [08:03:22.0000] SimonSapin: seems rather incompatible with a generic URL parser [08:03:33.0000] yeah that’s a good point [11:28:40.0000] Domenic: so apparently .close() queues a task to discard a bc, but .closed knows about it directly [11:29:02.0000] Domenic: this stuff is... [11:29:39.0000] Was that for all BCs or just auxiliary ones [11:31:05.0000] Domenic: top-level I suppose (you can .close() a non-aux too in certain cases) [11:31:44.0000] Domenic: Safari does keep opener/closed sync (in that closed will be false after close(), but true once discard happens [11:33:01.0000] Domenic: and in Firefox at least named targeting is also affected by the internal bit .closed looks at [11:33:14.0000] what nightmare is this [13:02:39.0000] Domenic: for tests, when you have multiple arrays that signify parameters, is there a better pattern than nested forEach? [13:03:30.0000] Don't think so. Maybe declaring the two arrays up-front instead of [.......].forEach() style. Also I prefer for-of to forEach myself. [13:10:35.0000] It’s so common I’d almost abstract it somehow [13:12:03.0000] I guess with for-of I’d have to use a variable for the array [13:25:27.0000] Yeah, I find that a bit clearer [13:25:38.0000] Like, here's the matrix of test data, then here's the test 2019-03-03 [03:23:15.0000] annevk: maybe it’s time to lock https://github.com/whatwg/xhr/issues/20 (Abandon hope of removing sync XHR from the web platform?) from further comments [03:23:55.0000] it is hard to imagine anybody coming along with new information to add as a comment there [03:26:18.0000] but it’s easy to imagine N more commentors showing up to repeat the same subjective argument that others there have already said [03:57:27.0000] MikeSmith: feel free [04:08:16.0000] annevk: OK, done [04:10:49.0000] annevk: btw about CORS questions on Stack Overflow, one of the most-common questions by far is the case where the OP has gotten a 4xx or 5xx response but thinks they have a CORS problem due to the fact that browser reports the response as lacking the Access-Control-Allow-Origin header [04:11:40.0000] I don’t know how to prevent that but I wonder if you’d thought about it all [04:12:22.0000] obviously one way would be for browsers to not report any CORS-related errors in the devtools console for 4xx and 5xx responses [04:12:25.0000] I don’t think too much about CORS, but devtools would reveal this pretty quickly? [04:12:56.0000] Well that’d be bad, since it is a CORS error [04:12:57.0000] devs don’t seem to be able to figure it out on their [04:13:05.0000] right sure it would be bad [04:13:37.0000] just saying outside of suppressing the error, I don’t have good ideas [04:13:53.0000] Devtools could be more explicit perhaps [04:14:12.0000] yeah maybe I’ll raise some browser issues for it [04:14:20.0000] Your server returned a 410 without ACAO header [04:14:35.0000] yeah something more like that maybe [04:14:48.0000] anyway, see https://stackoverflow.com/questions/54795541/503-return-from-server-is-branded-as-cors-violation-by-chrome for an meta-report about it at SO [04:15:04.0000] > The reason this is bad is because it misled our developers and wasted some time hunting down a CORS problem that wasn't really there. [04:16:17.0000] it is not uncommon to see reports on SO from people who say they have literally spent hours trying to figure out what was wrong with their CORS config, when it turns out they never had CORS-config problem at all but instead a 4xx or 5xx problem [04:17:58.0000] Hmm but the tools clearly say it’s 5xx [04:18:24.0000] yeah I know but they still often miss it [04:18:36.0000] or they don’t understand that is the real problem [04:18:57.0000] ..or they think their CORS config has caused the 4xx or 5xx error [04:18:59.0000] The problem with fixing it the way you suggest is that some might try to expose that error to content [04:19:12.0000] yeah 2019-03-04 [03:43:02.0000] nox: Yes, the manifest is a good RIIR candidate and I started doing that (in a half-hearted way) at some point. But jdm's point is also true; we would either need to keep the Python stuff working or have a really good story for how to make it work for users (and projects) without rustc [03:43:23.0000] Does the manifest file format change often? [03:43:37.0000] It's not documented, though. [03:43:39.0000] If you are still seeing dozens of seconds to work out it has nothing to do then give us a profile please because dozens seems high; it should be under 5 [03:43:56.0000] (on reasonable but not exceptional hardware) [03:44:36.0000] nox: Not often but ocasionally. gsnedders is doing some (Python) perf work on it at the moment [03:46:05.0000] nox: (although based on the rest of your timeline I guess really if we'd just written it in lisp that would have solved all our problems) [03:46:13.0000] LOL [03:46:41.0000] jgraham: Yeah I had not realised it's way faster than it used to be now, I checked that a few days after my initial tweet and forgot to follow-up. [03:51:25.0000] nox: OK. I am kind of hoping we find time to replace the HTML parsing parts with html5ever at some point, so we might need to figure out the rust dependency thing anyway (but that can probably be a binary wheel, which I hope porjects can cope with). But yeah it's generally accepted that the performance of that tool is bad and also important [03:52:26.0000] jgraham: AFAIK TabAtkins doesn't think we can use html5ever given they want to mix HTML and Markdown parsing in one pass and whatnot. [03:53:10.0000] nox: Yeah, for Bikeshed it's probably harder than for the manifest itself [03:53:27.0000] Ah right, I'm mixing stuff. [03:53:35.0000] what’s a binary wheel? [03:53:38.0000] (but the distribution requirements on bikeshed are also pretty different since no one is using it in CI afaik) [03:54:00.0000] MikeSmith: A Python thing for distributing precompiled binaries [03:54:08.0000] ah OK [04:31:50.0000] littledan: since we were talking about PR habits earlier, why do you force push a lot? [04:32:03.0000] annevk: Oh, sorry about this, would you prefer a follow-on PR? [04:32:26.0000] I guess it's because, in TC39, they don't end up squashing the patches, and it shows up poorly in the commit history if I don't squash them in advance [04:32:34.0000] annevk: What would you prefer to make it easy to review? [04:32:49.0000] not follow-on PR, but rather a stacked patch [04:33:19.0000] littledan: in WHATWG land we squash (or rebase & merge in exceptional cases) and generally do "feedback/nit/typo" commits following the initial one [04:33:33.0000] littledan: in the PR, so that the reviewer can review deltas [04:33:43.0000] right, makes sense, I'll switch to that [04:33:46.0000] thanks for explaining [04:33:52.0000] and sorry for the noise [04:34:00.0000] no worries [04:34:23.0000] jgraham, nox: also manifest regen isn't a huge deal, IMO, because we rarely do a full rebuild of the manifest, and that's what's really slow [04:34:31.0000] I really wonder why they prefer merge commits. Linear history is so nice... [04:34:35.0000] (in TC39) [04:35:09.0000] yeah, I don't really know who "they" is there; the editor group has its calls very late, and they don't seem to be publishing their notes or rationale anywhere. They've pushed back against people who raised these kinds of concerns. [04:35:23.0000] we used to do that [04:36:20.0000] jgraham, nox: and html5ever still has the problem of being UTF-8 only [04:38:23.0000] gsnedders: sounds like a feature to me [04:38:40.0000] gsnedders: though I guess not for parsing tests if that's the goal here 😃 [04:38:53.0000] annevk: as long as web-platform-tests needs to test documents in other encodings, which it likely does as long as we support other encodings… [04:39:05.0000] annevk: and probably not great for web compat in Servo either :) [04:39:20.0000] littledan: okay, hopefully they'll elaborate in response to your question; if not I'll try to help out by prodding too [04:40:05.0000] gsnedders: Yeah it needs some rework to be able to cope with other encodings :( [04:40:39.0000] yeah, thanks [06:42:09.0000] /me notices "document family" in HTML [07:16:36.0000] Domenic: so a Window object needs to hold a reference to a WindowProxy object [07:16:47.0000] This seems likely [07:16:56.0000] Domenic: otherwise someWindowObject.self crashes (it currently does in the spec) [07:17:14.0000] (can crash, when browsing context is null) [07:18:18.0000] I think at least some browsers will return null or undefined for that. [07:19:11.0000] Domenic: right you are [07:19:23.0000] I guess there's a bigger question of what happens to someWindowObject's [[Window]] internal slot on BC discard [07:19:32.0000] In some browsers I think they null it out and start returning undefined/null all over the place [07:19:38.0000] But in others not so much [07:19:50.0000] Domenic: nulling that seems fine since there should be no way to get to it? [07:20:12.0000] Well if you null [[Window]] then e.g. someWindowObject.Array is undefined [07:20:13.0000] oh wait, no, that's not fine [07:20:23.0000] Which might be the case in Safari IIRC [07:20:44.0000] But this is treading close to an area where I recall Edge saying that it was web-interop-pain for them being over-aggressive on cutting references. [07:20:58.0000] I guess that warrants further testing [07:21:20.0000] I'm now -1 on adding a ref from Window to WindowProxy though; I'd like to see Firefox return null for self/frames/window [07:21:51.0000] Seems nice, although unclear how much it helps in general [07:22:17.0000] Because if you have someOtherWindowObject you're holding on to the WindowProxy anyway. [07:23:29.0000] yeah, it's just one pointer less [11:56:23.0000] annevk: so what is stopping us from saying `fetch("https://example.com/", { credentials: "omit" })`, i.e. no-credentials HTTPS fetches, can return non-opaque responses with no CORS needed? [12:50:15.0000] Domenic: secrets in intranets with IP-based access? [12:50:28.0000] That are accessible over https://? [12:51:20.0000] Not sure [13:25:52.0000] Domenic: maybe nothing eventually, depends a bit on how things play out and whether that is indeed as secure as I hope it is [13:26:20.0000] That'd be crazy... all these years making developers deal with CORS and they could have just done that... [13:26:43.0000] Domenic: well, it’s complicated 2019-03-05 [22:03:47.0000] annevk: Domenic is there some github issues that was the context for the CORS discussion? [23:39:03.0000] annevk: “document family” seems like the wrong/misleading term for what it’s defining it [23:40:23.0000] seems like that wrong analogy [23:40:37.0000] but I guess I can’t think of a better one [02:27:30.0000] Yeah dunno either, it'll probably go away whenever someone rewrites history... [04:40:45.0000] annevk: re https://github.com/web-platform-tests/wpt/pull/15669 , for