2016-06-01 [17:43:17.0000] you could always require the spambots to pick out photos of specific kinds of boats, to prove they're human [17:43:59.0000] anyone willing to actually go through that crap would probably really, really want you do fix their spec issue [17:44:00.0000] "Pick the one called Boaty McBoatFace" [06:16:43.0000] MikeSmith: are you interested in implementing https://github.com/whatwg/html/pull/1356 for v.nu? would be nice to sanity-check against the test cases [06:17:06.0000] /me looks [06:17:50.0000] I think that might a change to the parser but regardless yeah I would be willing to implement it for testing [06:19:07.0000] cool [07:20:54.0000] Hey! [07:21:32.0000] First time at IRC [08:18:23.0000] hi - what's the current status of the Custom Element APIs; can https://github.com/w3c/webcomponents/pull/405 be considered final? [08:20:07.0000] if so, have polyfill maintainers indicated that they'll update? (AFAIK there's the Polymer-based stuff at webcomponents.org as well as https://github.com/WebReflection/document-register-element) [08:22:57.0000] FND: yes; custom elements have been upstreamed into HTML (and parts into DOM). See https://html.spec.whatwg.org/multipage/scripting.html#custom-elements. I believe Polymer is working on an updated polyfill, although some things are much harder to polyfill in the new version. [08:24:07.0000] thanks Domenic - can you elaborate on the polyfill difficulties; what will this mean for users? [08:25:41.0000] FND: well, they depend on ES6 class syntax, including aspects that are impossible to transpile in general. So I believe Polymer is investigating things like an extra transpiler pass or advising authors to add an extra line to their constructor (which they won't need in native implementations) in order to work with Polymer. I am not the expert here though; [08:25:42.0000] let me see if I can summon a Polymer person. [08:27:25.0000] tbh, I'm not actually that interested in Polymer-specific aspects, as I prefer to use vanilla custom elements (is that a term?) [08:27:38.0000] (though I realize their solution might well be generally applicable) [08:27:39.0000] Yeah, but they maintain a custom elements polyfill [08:27:43.0000] gotcha [08:28:27.0000] the ES6 dependency actually sounds promising in a way, as so far Babel and the polyfills (either of them) didn't cooperate [08:28:58.0000] (Babel injects some sort of class check that fails on HTMLElement, not sure about the details right now) [08:29:17.0000] Yeah, I think the polyfill will involve overwriting window.HTMLElement [08:30:12.0000] FND: OK, so it sounds like the best place to get info about the Polymer custom elements polyfill will be https://groups.google.com/forum/#!forum/polymer-dev or https://polymer-slack.herokuapp.com [08:30:25.0000] It sounds like they're still in the planning stages for the update [08:30:39.0000] roger, thank you [08:41:57.0000] FWIW, the Babel vs. polyfill issue is because polyfilled `HTMLElement` is not a constructor, which trips up Babel's inheritance check: [08:42:02.0000] if (typeof superClass !== "function" && superClass !== null) { throw new TypeError(…) } [08:49:43.0000] also, in case anyone cares: looks like WebReflection's polyfill _might_ be updated https://github.com/WebReflection/document-register-element/issues/58 [08:58:36.0000] trackbot, start meeting [08:58:45.0000] /me grr [09:55:01.0000] Does Edge still do www..com on ctrl-enter in address bar? [12:40:38.0000] I wonder... if page A opens a new window B and B adds event listener to its opener, and then B is closed [12:41:01.0000] GC can't (or at least shouldn't) collect anything from B [12:41:15.0000] (GC or CC or whatever UA has) [13:28:58.0000] hmm, without looking at the spec or trying stuff, what would you expect the output of the following code to be: let c = new MessageChannel(); c.port1.onmessage = e => { console.log(e.data); c.port1.close(); }; c.port2.postMessage('foo'); c.port2.postMessage('bar'); [13:55:25.0000] Mek: ignoring my "this is a trick question" instincts, I'd expect 'foo' only [13:55:40.0000] wellll [13:55:43.0000] Domenic: both spec and implementation say to print both... [13:55:50.0000] it depends on whether onmessage is async [13:55:56.0000] if it's async i would expect both [13:56:28.0000] basically i expect .close() to be a "graceful close" that allows processing queued up messages [13:56:41.0000] i'm just unclear on whether .close() happens before or after 'bar' gets queued [13:57:10.0000] for BroadcastChannel the spec seems to be the same (postMessage synchronously figures out the set of non-closed destinations, and then queues tasks to all of them), but the firefox implementation doesn't behave that way, so I'm trying to figure out if I should file a firefox or a spec bug... [13:58:57.0000] Mehhh... spec bug might get a broader audience of people with expectations, and as a bonus Firefox people will probably show up there anyway? [13:59:41.0000] true... [14:29:52.0000] Hm.. is "The" supposed to fall behind the main title? https://whatwg.org/specs/ [15:29:49.0000] Krinkle: I doubt it. ^_^ Domenic annevk [15:30:11.0000] I dunno, looks intentional to me [15:30:19.0000] We can check with Hixie [15:44:13.0000] it's just a creatively-kerned "ThWeeb" [15:48:50.0000] is there a good way to find all the CSS properties that allow url? [15:52:39.0000] There's some CSS index, not sure if it's good for that purpose... [15:53:05.0000] terinjokes: https://drafts.csswg.org/indexes/#properties will get you halfway there, but yeah, not quite what you need [15:53:29.0000] astearns: Domenic: http://i.imgur.com/DVxSe8z.png [15:53:46.0000] Krinkle: yes, that looks intentional to me. Deemphasizing the pronoun [15:54:39.0000] k :) [15:54:49.0000] It most certainly does not read as "ThWeeb" however. [16:06:32.0000] it's intentional [16:06:36.0000] also, i have no design sense [16:06:37.0000] so... 2016-06-02 [17:09:50.0000] dbaron: thank you so much!! (re fixing :target to respect pushState) [17:15:08.0000] terinjokes: Yeah, we don't yet have a great index of property values. Coming in the nearish future. [18:23:45.0000] it would be great if somebody has time to post a comment correcting http://stackoverflow.com/questions/37521172/is-javascript-location-href-call-is-asynchronous/37521290#37521290 and/or post an actual right answer [18:29:09.0000] i would if I could understand the spec conventions in html [18:54:41.0000] hey caitp [18:55:07.0000] what do the spec conventions in HTML have to do with it [18:57:26.0000] not sure how else i'd produce an accurate answer for something that isn't really my domain [18:57:52.0000] spec conventions would have to do with understanding the specified algorithm enough to answer correctl [18:57:54.0000] y [04:14:01.0000] no zcorpan [04:52:46.0000] Can anyone try http://w3c-test.org/domparsing/createContextualFragment.html on Edge and tell me if 'Namespace generally shouldn't matter' and ' in a different namespace shouldn't be special' pass? [05:58:15.0000] annevk: 👍🏻 [06:57:40.0000] mathiasbynens: are you here? 😊 [07:08:49.0000] annevk: Ping? [07:09:08.0000] annevk: http://logs.glob.uno/?c=mozilla%23content&s=2+Jun+2016&e=2+Jun+2016#c378961 https://github.com/w3c/web-platform-tests/issues/3103 [07:11:22.0000] nox: that looks complicated [07:11:29.0000] Heh. [07:11:34.0000] annevk: Not urgent. [07:11:47.0000] annevk: But I think the spec contradicts the tests for this. Or the opposite. [07:11:48.0000] nox: maybe zcorpan can help? I'm at a conf, back Monday [07:11:53.0000] annevk: Have fun. [08:35:21.0000] annevk: unfortunately not — watched the livestream though [10:31:09.0000] nox: those two pass, first test and last two tests fail [10:31:26.0000] Domenic: Ok thanks. [10:34:47.0000] does Chrome have something similar to FF's about:memory? [10:35:06.0000] Domenic: Btw, https://github.com/whatwg/html/issues/1376 [10:35:36.0000] nox: yeah... too much to do... [10:36:51.0000] smaug____: maybe this? https://developer.chrome.com/devtools/docs/heap-profiling?csw=1 [10:38:55.0000] thanks [10:39:03.0000] /me kicks chrome and its data: handling [10:40:46.0000] and now it crashed [10:41:05.0000] MikeSmith: I'm pretty sure that answer is correct - the navigation is async, so the page will continue executing things until it gets unloaded. [10:43:32.0000] TabAtkins: ah, OK 2016-06-03 [23:08:21.0000] TabAtkins: it'd be great if LINK ERROR came with a line number [02:06:16.0000] /me gives up on public-webapps [02:45:33.0000] I was thinking the same [02:46:50.0000] Apparently I had already given up on it, but looking at the thread titles, I guess I have an inkling of why there might be a mass exodus [03:02:42.0000] /me wonders if there will be real world use for es symbols [04:52:08.0000] Should a placeholder disappear the moment its input is focused? [04:56:38.0000] nox: up to UX [04:57:01.0000] annevk: No recommandation at all? [04:57:46.0000] annevk: Ain't that inconsistent with the spec for :placeholder-shown? [04:58:14.0000] Hmm don't think so [04:58:41.0000] Err no, can't read. [04:58:50.0000] The spec for placeholder says "User agents should present this hint to the user, after having stripped line breaks from it, when the element's value is the empty string, especially if the control is not focused.", so yeah. [06:53:16.0000] /me +1 to Ms2ger [07:05:04.0000] What's wrong with public-webapps. [07:05:06.0000] ?* [07:19:55.0000] signal/noise [07:20:14.0000] astearns: 😊 [07:24:34.0000] What's the TL;DR for 'is' in createElement()? [07:29:54.0000] nox: probably like the "is" attribute, which afaik is necessary to avoid custom elements in tables from being orphaned (or similar things like that)? [07:30:05.0000] I see. [07:45:06.0000] nox, `is` is custom elements [07:45:23.0000] Ms2ger: Should I close the Servo issue? [07:46:35.0000] I just did :) [07:47:02.0000] Ms2ger: Thanks. [09:00:38.0000] its too bad nobody wants to break the web to get rid of that orphaning crap entirely, since it's terrible ._. [09:16:33.0000] JakeA: your SW modules issue reminded me of this... do you think its a problem? https://github.com/slightlyoff/ServiceWorker/issues/894 [09:18:38.0000] ah, yes, good spot [10:15:26.0000] annevk: It'd be great if *all* the errors came with line numbers. Haven't been able to crack that nut so far; it's apparently a well-known problem that lxml drops its line numbers. [10:15:38.0000] (I only get a line number for the element; all the rest have None.) [10:27:13.0000] At this point I'm *this* close to just regex-parsing for opening tags in the original HTML and adding a line-number attribute manually. On the upside, that would avoid me having to coordinate tons of "corrections" as I do various text-munging (mostly Markdown processing) before the HTML parser runs. [10:34:53.0000] Fuck it, I'm gonna do that (behind a command-line flag, so if it fucks anything up you can just not use it). [11:16:02.0000] TabAtkins: lxml sounds sad [11:16:09.0000] It is and I hate it [11:16:42.0000] But it offers the only half-decent tree api that's html5lib-compatible and CSSParser-compatible. [11:17:02.0000] So I just soldier on, and reinvent most of DOM on top of it so I have a sane API to work with. [13:04:05.0000] annevk: still around? Someone is asking in https://bugzilla.mozilla.org/show_bug.cgi?id=289714 if an empty response labelled as XML should fire xhr.onerror .. [13:04:44.0000] I'm not sure but I guess I should RTFS ("read the fantastic spec" ;)) [13:19:37.0000] hallvors: not sure [13:19:56.0000] hallvors: don't think so [13:20:04.0000] annevk: I've just written a comment, hope it makes enough sense [13:20:23.0000] hallvors: broken XML does not fire it either [13:21:00.0000] Indeed, that's what I figured out [13:22:11.0000] hallvors: looks good, don't think we want to change DOMParser at this point either [13:22:40.0000] hallvors: pretty sure web depends on parseerror element and is part of spec [13:23:02.0000] really? which spec? [13:23:35.0000] imho parsererror elements are just weird [13:23:38.0000] :-p [13:24:15.0000] and should die :-] [13:33:59.0000] hallvors: DOM Parsing [13:37:19.0000] if you killed everything weird that should die about the web, there might not be much of a web left [13:45:58.0000] caitp: lol [13:46:57.0000] annevk: then it gets a bit inconsistent - if we mandate the odd parsererror document for a DOMParser, but do NOT want it for XHR responseXML.. [13:47:41.0000] thought whatever.. [13:53:18.0000] hallvors: yeah, jl complained about this too in the good old days [13:53:52.0000] hallvors: no layering or consistency 😢 [13:54:31.0000] But yeah, just have to suck it up and do a better job going forward [14:50:47.0000] annevk: I've tried to sum up the content addressable caching discussions in a blog post, since I found it hard to find all the relevant information in an easily accessible way: https://mntr.dk/2016/content-addressable-browser-caching/ [15:48:57.0000] I think the spec for querySelectorAll is wrong. [15:49:34.0000] nox: How so? [15:49:40.0000] It seems to me that element.querySelectorAll("*") should include element, but user agents don't. [15:52:37.0000] TabAtkins: Specifically, the scope-filtered method says to filter to the scoping root and its descendants. [15:52:52.0000] yup, you're right. as specified it should indeed include element. [15:53:04.0000] But that's not the intention nor does it match impls. So it's a DOM bug. [15:53:10.0000] TabAtkins: Checked in Safari and Firefox. [15:54:51.0000] Chrome agrees too. [15:55:07.0000] File a bug on DOM so annevk can fix it [15:56:35.0000] Yeah will do tomorrow. [15:56:45.0000] Reviewing the failing tests in Servo. [15:56:53.0000] (WPT agrees with UAs already.) [16:06:45.0000] did it for you [16:55:13.0000] TabAtkins: Thanks! [16:59:48.0000] nox: "will do tomorrow" is usually code for "i've already forgotten about it", at least when I say it ^_^ 2016-06-04 [17:00:12.0000] Heh. Nah I planned to do it, but thanks anyway I'm happy to not have things to do. :D [06:31:24.0000] I think I found a bug in the event dispatcher in the spec. [06:31:44.0000] Does the spec ever says to reset the stop propagation flag once dispatch is done? [06:32:31.0000] Maybe it's a test and Firefox bug though. [06:32:38.0000] http://w3c-test.org/dom/events/Event-dispatch-multiple-stopPropagation.html Can someone check that on IE11 and Edge? [06:32:52.0000] Safari, Chrome and Servo pass it, [06:32:56.0000] err, fail it. [06:33:01.0000] Firefox is the only one to pass it so far. [06:35:02.0000] nox: that is a known open bug yeah. There are open bugs on wpt and on dom for it [06:35:21.0000] The spec and wpt don't match, which is bad 2016-06-05 [20:30:48.0000] about the data at https://www.chromestatus.com/features on implementation status in other UAs, does anybody know wherethe source for that data maintained? [04:26:28.0000] Hello everyone [05:43:40.0000] Hi, is there a non-legacy reason for input.files to be readonly? [05:46:45.0000] Maybe the idea is for it to be allowed to append File objects once input.files no longer yields a FileList, but an Array instead? [05:52:51.0000] I think I found another bug with Range.createContextualFragment. [05:53:17.0000] Step 4 says to unmark all scripts in fragment node as already started, so that when they get executed when inserted in a document afterwards [05:53:48.0000] But https://html.spec.whatwg.org/multipage/scripting.html#script-processing-model:prepare-a-script-4 says that we should only prepare scripts when connecting them in a tree if it isn't marked as parser-inserted. [05:54:02.0000] Step 4 should probably say that they should be marked as parser-inserted again. [05:54:32.0000] Because step 7 of "prepare" says 'If was-parser-inserted is true, then flag the element as "parser-inserted" again, and set the element's "non-blocking" flag to false.'. [07:42:34.0000] Looks like input.files is not actually readonly on Chrome. [07:42:44.0000] It still is conformant on Firefox, though. [08:26:40.0000] espadrine: can you construct a FileList somehow? [08:27:01.0000] espadrine: there are various open issues on this, iirc [08:27:46.0000] annevk: Not through a constructor, although you can fetch one from a different input element or from a drop zone. [08:29:04.0000] I’d welcome a link to an issue; I tried searching for one. [08:30:17.0000] espadrine: against IDL perhaps? On my phone, so can't really search well [11:13:35.0000] boolean attributes are best without values ain't it? Can I get a reference link to prove this too? [11:58:02.0000] silverdust: http://heycam.github.io/webidl/#dfnReturnLink-2 [11:58:23.0000] Oh wait, attributes, I read argument. [12:01:16.0000] re: input.files, I made an issue https://github.com/whatwg/html/issues/1391 [12:51:44.0000] yes attributes. Is there any good reason to assign values to attributes like required, checked? Perhaps some browser support? [15:34:13.0000] silverdust: https://html.spec.whatwg.org/multipage/infrastructure.html#boolean-attributes might help. [15:34:38.0000] silverdust: there is no reason to require values; you can use the name of the attribute as a value if you want but it does nothing different than the empty string or omitting the value entirely [15:39:23.0000] Thanks Domenic 2016-06-06 [17:16:13.0000] silverdust: I think something like IE3 or NN3 required the attribute value in full; regardless of what, we're talking twenty year old browsers here [23:27:48.0000] Pro tip: don't cut your index finger [23:28:16.0000] Such a massive pain with the trackpad [23:33:13.0000] annevk: use the other hand… [23:34:03.0000] MikeSmith: for some reason I'm used to use my right hand for this, and even though I'm left-handed that feels very unnatural [23:34:17.0000] MikeSmith: so I'll use my middle finger to point at things [02:21:35.0000] https://djcordhose.github.io/flow-vs-typescript/2016_hhjs.html is pretty interesting [02:21:49.0000] Didn't really know Facebook was also into the typing game these days [02:30:02.0000] Is Flow from Facebook? [02:30:27.0000] Are they unable to name any programming language with something else than a common word? [02:31:07.0000] WHATWG is guilty of that too, so... [02:31:24.0000] Oh? Which languages? I'm curious. [02:31:42.0000] I was thinking of their ML-like language named Reason. [02:31:57.0000] Not languages, but say "Fetch", "Encoding", "Fullscreen", "Notifications", "Streams" [02:32:30.0000] Mmmh true. I guess I'm less surprised because they are specs. [02:33:26.0000] I think generally picking a word is better than picking many words, context is usually sufficient [02:33:42.0000] Also, dude, Mozilla named its language Rust [02:34:02.0000] Uh,"Go"? [02:43:45.0000] annevk: Less common than reason and flow. :) [03:08:06.0000] Yeah "Rust Programming" seems reasonably easy to search, "Flow Programming" less so [05:02:59.0000] https://github.com/w3c/DOM-Parsing/issues/15 [05:04:55.0000] Also, filed https://github.com/whatwg/html/issues/1394 again. [05:56:18.0000] /me kicks blink and its silly data: handling [06:10:17.0000] hrm, I added a comment to a pull :/ [10:29:45.0000] Very happy https://github.com/tc39/ecma262/issues/573 is happening even though I've little to contribute [10:30:15.0000] Just feels so good to finally get to the bottom of certain engine disputes, or at least make some progress on them [10:36:17.0000] ShadowDOM v1 removed Shadow piercing combinators - http://hayato.io/2016/shadowdomv1/#shadow-piercing-combinators - but https://drafts.csswg.org/css-scoping/#deep-combinator still lists >>> in the static profile -- so what is it now? [10:42:02.0000] rodneyre_: I think there's an open issue on this [10:42:09.0000] rodneyre_: and some disagreement [10:42:14.0000] rodneyre_: see the one on /deep/ [10:44:35.0000] rodneyre_: The combinator is *very intentionally* still in CSS in the static profile only (which only covers things like querySelector(), *not* stylesheets). [10:45:35.0000] but it won't select into closed shadows, correct? [10:46:54.0000] Closed shadows dont' exist yet. (Except handwavey in the form of built-in elements that clearly contain internal structure.) But based on what I think is going to happen, no, it won't select in. It won't give any power that you can't get from just poking via DOM APIs. [10:47:42.0000] closed shadows exist [10:48:00.0000] Oh really? News to my ears, but I'm a bit out of the loop. [10:48:13.0000] I've stayed in touch *just* enough to figure out what needs to happen on the CSS side. [10:48:26.0000] yeah, they were necessary to get consensus back when that happened. [10:48:33.0000] I mean, don't get me wrong. I'd happily do away with that, if we get some way to disable focusable elements within a shadow [10:49:31.0000] TabAtkins: I don't think there's agreement on implementing it for querySelector() at this point [10:50:08.0000] It's the plan of record to the best of my knowledge, and no one's contradicted it yet. [10:50:22.0000] It would be pretty fucking stupid to not have it, given that you can just poke thru via the DOM api. [10:50:23.0000] TabAtkins: see https://github.com/w3c/webcomponents/issues/78 [10:51:05.0000] Requiring a .query(...).map(x=>x.shadowRoot).query(...) would be dumb as hell just to avoid .query(... >>> ...) [10:51:27.0000] It seems fine for a first iteration [10:51:34.0000] (It's actually much more difficult to faithfully implement, but even this pretend version is stupid.) [10:51:37.0000] It's not even clear you should iterate that way as rniwa points out [11:11:11.0000] Does anyone know the right contact for Gecko for BroadcastChannel? Would be good to get them to weigh in at https://github.com/whatwg/html/issues/1371 [11:11:40.0000] Baku [11:11:54.0000] bakulf iirc? [11:12:00.0000] On GH [11:13:01.0000] https://github.com/bakulf ? [11:23:58.0000] Domenic: I pinged him in IRC as well, although I think this is towards the end of the work day for him [11:43:56.0000] Domenic: yeah [13:07:29.0000] annevk: what happened to your finger? [13:09:12.0000] hmm i pictured you had it cut off entirely but i suppose that is not necessarily the case [13:25:39.0000] I suspect he just cut it, and bandaids make it hard to use touchpads. ^_^ [13:37:52.0000] just need an outer layer of bacon to fix it 👌 [13:46:14.0000] then you get a greasy screen. d- fix [14:56:25.0000] kickstarter: conductive bandaids for touchscreen use [14:58:30.0000] astearns: They already exist [14:59:12.0000] ugh, of course they do [15:00:55.0000] Your dream of being the Zuckerberg of home medicine will have to be put on hold 2016-06-07 [17:26:08.0000] Domenic: in streams section 3.9.5 (ReadableStreamDefaultControllerEnqueue), does step 5.d.ii mean to rethrow the exception? I'm not really familiar with the "abrupt cancellation" terminology [17:26:36.0000] Domenic: woops... mean step 5.b.ii.2 [17:26:45.0000] or I guess its the same usage there [17:37:35.0000] wanderview: yep, that's the idea. [17:38:00.0000] Domenic: I thought I was finally starting to understand spec language... and then I have to go learn ES spec language :-) [17:38:37.0000] wanderview: it builds character ;) [17:38:47.0000] it builds something [21:52:37.0000] what was the exact reason why Object.observe brought down? [22:11:41.0000] howdoi: https://esdiscuss.org/topic/an-update-on-object-observe [22:17:39.0000] Thanks MikeSmith [00:28:49.0000] hallvors, ping [00:29:23.0000] Ms2ger: pong [00:29:42.0000] hallvors, trying to figure out where the spec backs http://w3c-test.org/XMLHttpRequest/send-content-type-charset.htm [00:29:52.0000] Especially the "charset given but wrong, fix it" ones [00:31:36.0000] Let me investigate a bit - we may have to ping annevk too, I think several of those assertations were written by him originally [00:32:45.0000] Ms2ger: anything not backed by step 4 of https://xhr.spec.whatwg.org/#the-send()-method is likely wrong [00:33:08.0000] Oh wait [00:33:11.0000] Ms2ger: it seems to be testing that from skimming it and those requirements might well have been tweaked a little bit since I wrote that test (or part of it) [00:33:41.0000] Ah, I seem to have missed the last paragraph [00:34:02.0000] ok [00:34:51.0000] I was about to point to step 4, last para too :) [00:35:26.0000] Though I'm not sure that requires the exact string values in the test [00:35:34.0000] /me notes that even the test's meta data is correct [00:36:06.0000] for once :) (lots of meta data is outdated and I have ambitious plans for fixing that) [00:37:08.0000] Someone want to reply to https://github.com/w3c/web-platform-tests/issues/3121? [00:39:02.0000] zcorpan: about experimenting with https://github.com/whatwg/html/issues/1351 “Remove parse error for dashes in comments”, do we want to experiment with also dropping the warning “The document is not mappable to XML 1.0 due to two consecutive hyphens in a comment.”, or do you want to continue to emit that? [00:40:54.0000] annevk - I mostly agree with the 3121 issue, but I think you defended the test when I brought it up earlier ("be strict in what you send" etc). Leaving to you to reply ;) [00:41:21.0000] MikeSmith: i think we should keep that, at least for now. if the people using the validator don't care about those warnings then all of them should be turned off by default, not just for -- in comments [00:41:32.0000] ok [00:41:37.0000] imho [00:41:43.0000] yeah [00:42:06.0000] zcorpan: OK so FYI take a look at the adjustDoubleHyphenAndAppendToStrBufAndErr function at https://github.com/validator/htmlparser/blob/master/src/nu/validator/htmlparser/impl/Tokenizer.java#L922 [00:43:25.0000] and https://github.com/validator/htmlparser/blob/master/src/nu/validator/htmlparser/impl/Tokenizer.java#L476 [00:43:36.0000] I guess by default it does ALTER_INFOSET [00:44:08.0000] ah wait though, if that were true it wouldn’t be emitting the warning [00:44:56.0000] will need to look at the checker code further to see what it is setting [00:45:27.0000] maybe the validator doesn't use the parser's default [00:45:36.0000] yeah I think it must not [00:45:42.0000] anyway, the simplest change would of course be just to drop the errConsecutiveHyphens(); call at line 924 [00:45:54.0000] Ms2ger: hallvors: I left a reply [00:46:48.0000] zcorpan: but in looking at that code, I could also just move the errConsecutiveHyphens() call into the ALLOW and FATAL cases [00:47:31.0000] so that for ALTER_INFOSET case it would just silently alter the infoset, with no error and no warning [00:48:08.0000] MikeSmith: don't we still want to use ALLOW in the checker? [00:48:12.0000] I guess in the context of the checker it doesn’t really matter much since nothing actually consumes the parse tree it creates [00:48:40.0000] to get the warning if nothing else [00:48:44.0000] OK [00:49:03.0000] so that is what I will do for not [00:49:06.0000] *for now [00:49:14.0000] and push it to https://checker.html5.org/ [00:50:13.0000] MikeSmith: what about [00:51:15.0000] https://github.com/w3c/webcomponents/issues/496#issuecomment-223529711 o_O [00:56:51.0000] MikeSmith: https://github.com/validator/htmlparser/blob/master/src/nu/validator/htmlparser/impl/Tokenizer.java#L2602 was also moved to be an error when seeing ">" in COMMENT_END_BANG instead [00:58:43.0000] zcorpan: what about it? we want to try to dropping that error too? [00:59:33.0000] MikeSmith: it's a new error, that won't be reported otherwise [01:00:03.0000] oh [01:00:18.0000] we we want to *add* new reporting for it? [01:00:27.0000] /me looks back that the issue discussion [01:00:29.0000] MikeSmith: https://github.com/whatwg/html/pull/1356/commits/b4d672b4976740cea236f197cc340a066cf0ac6e [01:04:56.0000] zcorpan: https://github.com/validator/htmlparser/blob/master/src/nu/validator/htmlparser/impl/Tokenizer.java#L2602 is for --! right? [01:05:02.0000] how is that relevant? [01:06:53.0000] right. i suppose it's a separate thing but i changed it in the PR, because i didn't see any reason to disallow [01:08:31.0000] ok [01:08:53.0000] sorry this was not a one-line change :-) [01:15:06.0000] heh [01:15:28.0000] OK will need to set aside more time to write it up [01:15:56.0000] 👍 [01:26:03.0000] annevk: https://fetch.spec.whatwg.org/#cors-preflight-fetch-0 [01:26:37.0000] annevk: from what it says there, if you have a header `content-type: x-pony`, which is not in accesscontrolallowheaders, it should error, yes? [01:27:11.0000] because http://web-platform.test:8000/XMLHttpRequest/send-redirect-to-cors.htm seems to think otherwise? [01:27:54.0000] Manishearth: yeah, that's not a CORS-safelisted request-header [01:28:35.0000] so is the test wrong? O.o [01:28:44.0000] it somehow passes in firefox [01:28:45.0000] hold on [01:30:20.0000] annevk: ok, not sure what's going on, this test should fail [01:30:40.0000] (it fails in servo, but not firefox) [01:31:31.0000] Manishearth: looking at corsenabled.py I'm not sure why it should fail [01:32:03.0000] annevk: as in? [01:32:11.0000] annevk: we send a content-type: x-pony header with it [01:32:34.0000] so the preflight fetch should return a network error, since that's not an allowed header [01:32:54.0000] Oh yes, and it seems Firefox doesn't even issue a preflight here [01:33:03.0000] Unless the network console cannot be trusted [01:33:27.0000] annevk: I just assumed that the preflight isn't put in the network console [01:35:09.0000] I hope that's not true [01:35:10.0000] annevk: oh, from the wptserve log -- it doesn't [01:35:21.0000] annevk: it should be issuing a preflight, right? [01:35:43.0000] Yeah, I think so, otherwise you could use a redirect to circumvent preflights... [01:35:54.0000] Which seems to be what is happening here [01:36:13.0000] huh [01:36:21.0000] chrome fails these tests [01:36:24.0000] but not the way servo fails [01:36:34.0000] Yeah, also in a weird way [01:36:45.0000] /me curses redirects [01:36:49.0000] chrome, too, doesn't do preflights [01:37:12.0000] brb filing bug on chrome to make tons of bounty monies [01:37:52.0000] chrome doesn't preflight, but it *does* scrub the headers [01:37:57.0000] Manishearth: can you file one against Firefox too and against wpt? [01:38:06.0000] right [01:38:18.0000] Not the best way to start the day [01:38:24.0000] heh :) [01:38:34.0000] well, for once the failure isn't servo's fault :) [01:38:50.0000] annevk: chrome runs wpt too, right? [01:39:10.0000] I'm not sure at what stage they are [01:39:29.0000] annevk: given that no browser does this properly, I assume this isn't a security bug (for firefox?) [01:39:53.0000] Manishearth: it kinda is, but we just discussed it in public [01:40:06.0000] Manishearth: copy Jonas Sicking [01:40:11.0000] yeah [01:44:37.0000] annevk: https://github.com/w3c/web-platform-tests/issues/3123 [01:45:26.0000] should we mark it an easy bug? [01:47:25.0000] Manishearth: probably not, since we want to keep some variant of that test around [01:47:42.0000] Manishearth: we just need to change the pass conditions [01:47:53.0000] Manishearth: and I guess we want a new test for what the old test actually wanted to test [01:48:32.0000] annevk: right, the current test should check for a network error [01:52:37.0000] annevk: how do you recommend I write a testcase for this? [01:56:26.0000] Manishearth: the existing testcase can be changed to invoke assert_unreached() from xhr.onload and test.done() from xhr.onerror [01:56:40.0000] annevk: but that needs wpt [01:56:47.0000] I want to write one that doesn't need wpt [01:56:53.0000] trying to write a netcat test case rn [01:57:15.0000] Manishearth: what are you looking to test? [01:57:36.0000] annevk: that the preflight doesn't happen [01:57:42.0000] for the gecko/chrome bug [01:58:29.0000] Manishearth: you could test that if a preflight did happen, the server would reply something bogus [02:08:15.0000] annevk: ok, now I'm not sure what's happening [02:08:26.0000] I am getting an OPTIONS request with http://manishearth.anapnea.net/tmp/test.html [02:08:56.0000] I don't get one if there are no headers, but that's ok [02:09:06.0000] on firefox, that is [02:09:37.0000] Manishearth: what if you set Content-Type instead? [02:11:49.0000] annevk: no OPTIONS, only GET [02:12:03.0000] Manishearth: there you go [02:12:08.0000] Manishearth: and without redirect? [02:12:41.0000] Manishearth: I guess maybe the check post-redirect is not the same check as normal, which would be pretty bad architecture [02:13:47.0000] annevk: both firefox and chrome skip OPTIONS when there are no strange headers, even on a direct XHR [02:13:56.0000] and they replace POST with GET [02:14:14.0000] in both cases [02:14:37.0000] the only time I get OPTIONS is when I add a strange header [02:15:03.0000] this happens even without redirects [02:15:25.0000] cookies are scrubbed, too [02:15:30.0000] So basically Firefox does not restrict Content-Type: unknown/type? [02:15:36.0000] oh, not tried that [02:15:39.0000] Sure, no cookies is normal [02:15:52.0000] Replacing POST with GET based on a redirect is normal [02:15:58.0000] That's all per spec [02:16:12.0000] annevk: yeah, it does not restrict [02:16:18.0000] o_O [02:16:23.0000] chrome just scrubs the content-type header if it's strange [02:16:39.0000] Pffff [02:17:06.0000] no, chrome unconditionally scrubs that header [02:17:25.0000] annevk: wait I goofed up [02:17:27.0000] hold on [02:17:47.0000] ooh [02:18:08.0000] on direct POST, with content type text/plain [02:18:19.0000] firefox keeps it a post [02:18:24.0000] and keeps the content [02:18:49.0000] if the content-type is strange, it gives an OPTIONS [02:19:00.0000] Okay, so only with a redirect? [02:19:23.0000] chrome has the same behavior for direct [02:20:29.0000] on redirects [02:20:34.0000] all POSTs become GETs [02:20:43.0000] good content-types are let through [02:20:48.0000] firefox lets through bad content-types [02:20:52.0000] chrome scrubs them [02:21:25.0000] So both those behaviors are wrong [02:21:35.0000] but not dangerous [02:21:37.0000] POST -> GET is fine, for 301/302 (not the others) [02:22:24.0000] annevk: why is not sending a preflight ok? [02:22:56.0000] Manishearth: that part is not okay [02:23:08.0000] annevk: even when there is a text/plain content type? [02:23:08.0000] Manishearth: scrubbing is not okay either [02:23:23.0000] Manishearth: text/plain is safelisted [02:23:37.0000] annevk: yeah, but spec-wise that check happens *after* the preflight, no? [02:23:48.0000] Manishearth: no [02:24:05.0000] I think the short-term fix for the test suite bug is to set headers allowed to * [02:24:20.0000] Manishearth: we check for safelisted request-headers and only if they're outside that range we preflight [02:24:21.0000] But given the details here we clearly need better tests [02:24:32.0000] huh [02:24:35.0000] so we can catch the implementations that are currently not quite doing the right thing [02:24:37.0000] okay, so servo has a bug here too [02:24:40.0000] hallvors: that's not a good fix [02:24:49.0000] you get a bug. you get a bug. everybodygetsabug! [02:24:53.0000] hallvors: first of all, * is a new feature for those headers so won't work [02:25:35.0000] ah..so we're having this discussion because the spec is changing? Got it.. [02:25:41.0000] hallvors: we could add "content-type" to the list, but apparently the preflight is not even happening, so we also need some tests that set other headers [02:25:46.0000] hallvors: noooo [02:26:15.0000] hallvors: we're having this discussion because implementations have bugs with the spec as written before wildcarding became a thing for header names [02:26:35.0000] annevk: btw, where in the spec does it mention POST -> GET for redirects? [02:26:43.0000] well, we need better tests - so we can use Manishearth's bug for that [02:26:44.0000] wait no nv [02:26:46.0000] nvm [02:27:19.0000] Manishearth: in the HTTP-redirect section [02:27:26.0000] yeah, found it [02:27:42.0000] Manishearth: fairly recent change (HTTP calls it out a bit, but not normative enough) [02:27:50.0000] BTW to all in #whatwg - there's a request for more tests here, should be trivial to add: https://github.com/w3c/web-platform-tests/issues/3124 - would be great if someone could jump in and add stuff :) [02:28:32.0000] annevk: yeah, there's even servo code handling that, wonder why it didn't get hit [02:28:42.0000] wait, no, it *did* get hit [02:28:42.0000] hm [02:38:31.0000] annevk: why are we nitpicky baout content-type, btw? [02:38:36.0000] *about [02:38:44.0000] there is no content anyway, that gets scrubbed [02:39:57.0000] also, why only 301/302/303 for making the method GET? [02:41:10.0000] Manishearth: same-origin policy violations for Content-Type was restricted to
historically [02:41:56.0000] ah [02:42:01.0000] annevk: but form doesn't use fetch? [02:42:03.0000] Manishearth: only 301/302 change POST to GET for historical reasons, mostly because browsers maybe mistakenly did that and sites relied on it [02:42:16.0000] Manishearth: 303 changes to GET always because that's just what it does [02:42:25.0000] annevk: what happens for the other redirect methods? [02:42:29.0000] or are those the only 3 ? [02:42:34.0000] Manishearth: uses navigate which uses fetch, but it doesn't use "cors", it uses "navigate" [02:42:44.0000] oh, navigate uses fetch now? [02:42:47.0000] Manishearth: 307/308 preserve the method [02:42:55.0000] Manishearth: more or less [02:43:08.0000] annevk: what about script/link/etc? [02:43:10.0000] Manishearth: there's a lot of work to be done still, hopefully over the summer [02:43:16.0000] Manishearth: yeah those all use Fetch [02:43:18.0000] oh ok [02:43:21.0000] oh, really?nice [02:43:33.0000] Yeah, that happened last year I think [02:43:46.0000] I saw some changes but wasn't sure if it was everywhere yet [02:45:22.0000] annevk: another XHR question in https://bugzilla.mozilla.org/show_bug.cgi?id=918764 - about letters (not) allowed in script-set headers [02:46:13.0000] hallvors: there's a couple of spec issues on that [02:46:14.0000] I'm just skimming bugmail - is RFC 7230 too strict for the web, or is the test misinterpreting it? If all browsers fail the test is probably wrong.. [02:46:25.0000] hallvors: might be too strict [02:46:45.0000] a few links in the bug report would be great :) [02:47:57.0000] annevk: https://bugzilla.mozilla.org/show_bug.cgi?id=1278493 [02:51:18.0000] hallvors: done [02:51:35.0000] Manishearth: ta [02:52:02.0000] Domenic: filed https://bugs.chromium.org/p/chromium/issues/detail?id=617902 [02:54:12.0000] annevk: thanks :) [03:21:09.0000] annevk: more possibly buggy spec tests? [03:21:23.0000] annevk: https://fetch.spec.whatwg.org/#concept-http-fetch [03:21:26.0000] the 401 line [03:21:41.0000] response is returned if request's credentials mode is not "include". [03:21:44.0000] however [03:22:11.0000] https://xhr.spec.whatwg.org/#the-send()-method [03:22:38.0000] > If the withCredentials attribute value is true, "include", and "same-origin" otherwise. [03:22:52.0000] so by default the credentials mode is same origin [03:24:27.0000] however, https://github.com/w3c/web-platform-tests/blob/master/XMLHttpRequest/send-authentication-competing-names-passwords.htm doesn't set withcredentials [03:25:42.0000] annevk: perhaps the spec should say "the cors flag is set AND credentials mode is not include" [03:30:04.0000] annevk: https://github.com/whatwg/fetch/issues/319 [03:40:36.0000] try-catch with async-await is a pain in the.... [03:40:58.0000] Object.values but not give null values? [03:56:44.0000] Manishearth: why? [03:56:57.0000] Manishearth: it says one of [04:20:16.0000] Ah, will follow up in the issue [04:27:00.0000] annevk: so the spec needs fixing, right? I wasn't sure from your response [04:31:05.0000] Manishearth: I think so [06:34:07.0000] Domenic: so what does fetch(..., { token }) mean per ES6? [06:58:37.0000] annevk: fetch(..., { token: token }) [06:59:25.0000] Domenic: interesting [07:02:05.0000] Domenic: does it take after the variable name? [07:03:12.0000] annevk: if I understand what you're asking, yes? [07:03:21.0000] It's just a shortcut. { x } is always shortcut for { x: x } [07:03:53.0000] ta [07:04:09.0000] I think at some point I learned about that and then never used it enough to remember [09:16:48.0000] annevk: How stable is the CE spec now? [09:16:55.0000] Is it ready to be implemented in Q3? [09:35:02.0000] nox: yeah [09:42:58.0000] Domenic: I guess you run tip-of-tree bikeshed? [09:43:11.0000] /me should probably update [09:43:45.0000] annevk: yeah, I git pull and bikeshed update before every commit... [09:43:55.0000] I see [10:26:30.0000] Domenic: https://twitter.com/bergi_bergos/status/740193424209522688 [15:14:12.0000] Is it just me or DOM uses CEReactions but doesn't include a reference to its definition? [15:23:33.0000] nox: yeah, https://github.com/tabatkins/bikeshed/issues/677 [15:24:03.0000] Domenic: Thanks for the link. [15:35:44.0000] That's an easy fix, I should get on that one. [15:36:15.0000] However, I just added support for getting the 100% accurate line number from a line! [15:36:32.0000] Just need to annotate every single die()/warn() call to pass the right info. [15:37:24.0000] s/from a line/for an error/ 2016-06-08 [22:13:13.0000] TabAtkins: didn’t know you’re an iTerm2 user [00:05:08.0000] jgraham: Hey! WPT doesn't expose ways to run something like Blink/WebKit's internals in a cross-browser way, right? The subject has come up in https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/j04BdFMfYxg [00:22:29.0000] yoav: what does “run something like Blink/WebKit's internals in a cross-browser way” mean? [00:25:03.0000] MikeSmith: Have a non-Web-exposed API that enables you things like changing the screen density, etc [00:26:04.0000] e.g. Some of srcset's tests in Blink/WebKit cannot be easily migrated elsewhere because of lack of control on these conditions [00:26:33.0000] And the related blink-dev discussion was related to adding such an API for network state [00:27:11.0000] yoav: No, there is no attempt to provide a standardised api for that because it's very unclear that it's possible without agreement on the semantics of the backing api (in which case why not use that directly) [00:27:49.0000] jgraham: OK, thanks [00:28:31.0000] I think there is likely to be some demand for a standardised test-only api fwiw [00:30:02.0000] personally, I'd love to see something like that [02:52:52.0000] Is it me or https://dom.spec.whatwg.org/#concept-getelementsbytagname doesn't actually describe UAs? [02:54:59.0000] I see, Safari and Firefox disagrees on "Element in non-HTML namespace, prefix, non-ascii characters in name". [03:16:21.0000] annevk: Following https://github.com/whatwg/dom/issues/143, I think getElementsByTagName still contradicts UAs, or at least Firefox. [04:50:23.0000] annevk, you know if there's a reason BeforeUnloadEvent doesn't have a constructor? [04:56:01.0000] bravo wanderview [04:58:55.0000] Ms2ger: I don't [05:04:26.0000] annevk: Any idea about my own question? Maybe there is an open issue I missed? [05:09:32.0000] nox: what in particular doesn't match? [05:09:58.0000] annevk: http://w3c-test.org/dom/nodes/Element-getElementsByTagName.html [05:10:07.0000] annevk: "Element in non-HTML namespace, prefix, non-ascii characters in name" [05:10:14.0000] This pass on Safari and Chrome but not Firefox, [05:10:20.0000] and the spec seems to agree with Firefox. [05:11:42.0000] nox: above you said the spec contradicts Firefox? [05:12:03.0000] nox: the spec is intended to match Firefox, per that issue bz raised [05:12:04.0000] annevk: Sorry, confused myself. [05:12:14.0000] annevk: So the test didn't get updated per spec, is that all? [05:12:20.0000] nox: I guess so [05:12:23.0000] Ok great. [05:12:59.0000] Though Aryeh tried [05:21:06.0000] This IDL array vs frozenarray thing -> https://github.com/whatwg/html/issues/11 - is there some context here, like a bug arguing for removing array? zcorpan seems to want me to understand it :) [05:22:09.0000] hallvors: Following links leads me here: https://github.com/heycam/webidl/pull/52 and here: https://www.w3.org/Bugs/Public/show_bug.cgi?id=23682 [05:22:13.0000] hallvors: the T[] thing was removed from WebIDL, so any spec still using it is broken [05:23:40.0000] ah, thanks. Didn't see the link to 23682 [05:25:47.0000] hallvors: No problem. [06:31:38.0000] Spec and tests for insertAdjacentHTML don't seem to agree either. [06:32:17.0000] I wonder if the insertAdjancentHTML spec is correct [06:33:12.0000] I looked at it briefly when working on insertAdjacentOtherThings and I remember thinking it had some bugs [06:33:17.0000] annevk: I don't think so. [06:33:23.0000] annevk: But the tests don't look correct either. :) [06:33:50.0000] annevk: https://github.com/servo/servo/blob/master/tests/wpt/web-platform-tests/domparsing/insert_adjacent_html.html#L59-L72 [06:34:00.0000] annevk: Am I blind, or child doesn't actually get a parent ever? [06:38:57.0000] nox: parentElement.appendChild(child); [06:39:11.0000] annevk: Oh missed it. [06:39:39.0000] annevk: Ain't it bad style that it is itself in a test btw? [06:40:17.0000] That's kinda weird [06:40:19.0000] nox: it's a little wonky for sure [06:40:36.0000] annevk: Well, someone implemented that method, [06:40:40.0000] and we have failing tests, [06:40:49.0000] so if tests or spec are wrong (or I think they are), I'll ping you. [06:41:50.0000] it's really the responsibility of Travis Leithead [06:42:01.0000] since it's part of DOM Parsing & Serialization [06:42:51.0000] Right. [06:42:56.0000] I sorta think we need to put that in DOM at some point, or at least all the methods and such, but there's also only so many people to do editing work [06:43:19.0000] annevk: You'll forever be my go-to spec guy though. ;) [07:15:44.0000] MikeSmith: I should probably avoid twitter before coffee [07:16:08.0000] the people really want xml https://github.com/angular/angular/issues/673 [07:16:27.0000] nox: Travis has been working on bringing the tests in line with the spe AFAIK [07:17:28.0000] wanderview: nope, you should keep calling out BS and speaking truth to power [07:28:07.0000] MikeSmith: ironically they are about to roll out the removal of the UA check and redirect to play store [07:32:25.0000] wanderview: It seems entirely reaonable to me. You shouldn't get lots of free marketing for being at the forefront of web design if you are blocking browsers. But ofc when the people making the favoured browsers are the ones handing out the free publicity, it's easy to see why they don't give a fuck [07:36:34.0000] I'd hope all this renewed interest in the web results in some more people being allocated to making the foundations more interoperable [07:36:46.0000] Be it through tests or standards [07:37:27.0000] there's renewed interest in the web? [07:40:15.0000] caitp: I've no idea, I just want more resources to work on infrastructure [07:42:21.0000] it only gets harder to keep interest in any of this stuff [07:42:45.0000] that's the sad truth :( [07:43:05.0000] Not for me [07:44:39.0000] annevk: Not really clear that foudational stuff is the reason that flipkart or whoever are producing single-browser sites [07:45:00.0000] (which doesn't mean that it's not important ofc, but it's unclear to me if it's the problem in this case) [07:45:36.0000] maybe it's because making good experiences on multiple software platforms (and they're all different platforms, they're not a single coherent platform) takes too much time and resources [07:45:54.0000] Yeah, flipkart seems mostly a case of new technology not having settled [07:46:18.0000] There's always going to be some brokenness at the forefront [07:46:46.0000] But that our building blocks are not entirely stable either, I mean, that can't go well forever [07:46:49.0000] there's unfixable brokenness in the back too [07:47:38.0000] I wouldn't say it's unfixble really [07:47:49.0000] We've fixed tons of stuff [07:48:07.0000] That's the core of what the WHATWG's been doing for a decade and a bit [07:53:51.0000] I'd write about my perspective on how the web is really playing a key part in the ruining of the world, but it's not an audience that would hear it [07:54:29.0000] WHATWG reconciled me with the Web kinda. [07:54:33.0000] but the way it speeds the delivery and increases the demand for cheapened crap, while reducing the value of people building that cheapened crap, is not a good thing [07:54:52.0000] caitp: The Web is improving, not regressing, IMO. [07:55:05.0000] from whose perspective? [07:55:10.0000] Everyone's. [07:55:44.0000] all week they've been playing on the radio news about a town experiencing like a 10 fold increase in teen suicides, and largely blaming the web, and they're at least partly correct in blaming the web [07:55:52.0000] it's really a big part of the problem [07:55:57.0000] What. [07:56:38.0000] it reduces the value of humans, reduces privacy of humans, reduces the value of human works [07:56:52.0000] actually increases the cost of living [07:57:00.0000] it's horrific [07:57:38.0000] I don't get your point, nor how it is related with what WHATWG is doing. [07:57:56.0000] it has nothing to do with the WHATWG, it's just the web, as a technology, is really hurting the world [07:58:02.0000] Abuse and harassment are humans' problems, not the Web's. [07:58:14.0000] it's not just abuse and harassment [07:58:23.0000] that's only one side of it [07:58:24.0000] What's hurting the world is the feeling of impunity of some, and parents being completely lost about their youth's virtual lifes. [07:58:35.0000] It is unclear to me that The Web is important here in a way that is distinguishable from modern technology in general [07:58:52.0000] jgraham: Thanks, I wish I had said that. [07:58:58.0000] well, the web is probably the most ubiquitous delivery method for that modern technology [07:59:52.0000] Seems like the Web you talk of is mostly social networks btw. [08:00:03.0000] it's not, but they're also terribl [08:01:19.0000] I think a lot of the bad stuff now happens in ways that are not specifically The Web e.g. via apps. It seems like the general idea of a ubiquitous computer network has a number of unforeseen downsides [08:01:20.0000] anyways, #whatwg isn't really an audience that is going to see that the web is part of the problem, I drank the same koolaid you all did [08:01:49.0000] the web is the platform, it helps people communicate and find information, it's important, it changes lives for the better [08:01:52.0000] but that's not what's happening :( [08:02:03.0000] I didn't drink that koolaid. [08:02:11.0000] I see the Web as the best way to procrastinate, mostly. [08:02:16.0000] caitp: I, at least, am receptive to the idea that a problem exists. But I think that pinning it on a specific implementation of the general abstract technology is perhaps naive [08:02:42.0000] And there are already multiple implementations of the technology, so it's not like turning off the web tomorrow would make a huge difference [08:03:33.0000] I keep doing this because it pays for me to keep living, but it's going to result in me drinking a litre of whiskey every week, I'm sure ofi t [08:03:53.0000] Pre-emtively give up drinking? [08:03:55.0000] I need a new job that doesn't involve computers :( [08:05:07.0000] caitp: What about working for IoT then? [08:05:11.0000] /me runs away. [08:05:16.0000] even worse ;-; [08:19:12.0000] nothing wrong with drinking a liter of whiskey every week [08:19:21.0000] or even every day [08:22:42.0000] and it’s an interesting phenomenon when after somebody realizes they had a naive understanding of something they’ve put time into, they assume that others putting time into it have the same naive understanding of it, or ever did [08:51:39.0000] annevk: thanks. That was my first pr ever on github :) [08:51:42.0000] did I do something wrong [08:52:12.0000] (locally I probably did) [08:53:21.0000] (I need to figure out how to get my local fork synced. I'm totally no-ob in this stuff) [08:53:53.0000] I guess I can always delete the fork [09:05:20.0000] zcorpan: have you found the Firefox bug # yet? [09:05:36.0000] mathiasbynens: no, but haven't searched [09:07:57.0000] zcorpan: https://bugzilla.mozilla.org/show_bug.cgi?id=1094995 apparently [09:08:15.0000] (I wasn’t aware of this bug) [09:11:01.0000] → https://bugzilla.mozilla.org/show_bug.cgi?id=449811 [09:29:18.0000] MikeSmith: https://www.smashingmagazine.com/2016/06/battling-bem-extended-edition-common-problems-and-how-to-avoid-them/?utm_source=html5weekly&utm_medium=email about this BEM thing [09:31:19.0000] (from the comments it appears it's a love or hate kind of thing) [09:31:39.0000] smaug____: I don't think you did anything wrong [09:32:12.0000] smaug____: I couldn't merge it as-is because I needed to make some other changes and the final commit needs to contain the generated HTML [09:32:14.0000] zcorpan: I'm getting bad gateway from that URL [09:32:46.0000] huh. try https://www.smashingmagazine.com/2016/06/battling-bem-extended-edition-common-problems-and-how-to-avoid-them/ [09:33:17.0000] wtf [09:33:18.0000] works [09:34:17.0000] zcorpan: thanks [09:34:19.0000] /me looks [09:34:48.0000] hmm 502 Bad Gateway atm [09:34:58.0000] MikeSmith: try the other link [09:55:24.0000] zcorpan: thanks [09:55:46.0000] seems .. complicated [09:57:09.0000] MikeSmith: i guess it avoids thinking of other complicated things like cascade and specificity [09:57:15.0000] gotta go [10:25:48.0000] annevk: is there some documentation about best practices how to create prs for specs? /me is obviously looking for some "contributing fixes to specs for dummies" [10:26:07.0000] smaug____: the README of whatwg/html has some info [10:26:16.0000] smaug____: README for most specs should have info [10:26:54.0000] smaug____: if you lack some info, file an issue [10:27:03.0000] smaug____: because that really should be there in some form [10:27:28.0000] well, I was hoping even more precise, like what kind branches one might want to use locally and such [10:27:40.0000] github has rather weak documentation itself [10:28:08.0000] smaug____: oh, if you have write access to a standard always create a branch there with a reasonable unique name [10:28:23.0000] smaug____: if you don't have write access, you need to create a branch on your fork and what you call that doesn't really matter [10:30:02.0000] github documentation just says one may want to use named branches, but isn't too clear about the reasons or whether it is actually required etc [10:39:24.0000] smaug____: I think it's mostly so you know what the branch is about when selecting one [10:39:57.0000] /me wonders if mven is mvano [10:40:38.0000] Domenic: another idea I had with the whole icon thing is to have some kind of API that tells you what icon the browser would select, given some inputs [10:40:53.0000] annevk: that does seem really nice [10:41:08.0000] Domenic: and then not alter the end points and just keep those as a single URL that you get out of the API [10:41:20.0000] annevk: I don't understand that latter part [10:41:57.0000] Domenic: instead of making the Notification object more complicated to support multiple icons, just solve the icon selection thing in this new API and then feed the Notification object the result [10:42:18.0000] annevk: so what complexity would you remove from the Notification object? [10:42:48.0000] Domenic: nothing compared to the current state, but we wouldn't add the PR that adds support for multiple icons [10:43:22.0000] annevk: we would still accept them as input, just not reflect them in the API, I guess? [10:44:57.0000] That would be another way to go; I was thinking the Image Selection API would return the URL of the chosen image and you'd pass that along [10:45:19.0000] oh i see [10:46:33.0000] I'm guessing and friends were before extensible web thingie happened? Anyway, while walking around with O today I figured there is some kind of API there that we don't expose [10:46:46.0000] And because of that we keep copying the high-level pattern around [10:47:20.0000] Which just creates a ton of API surface with not so much value [10:53:16.0000] Yeah that seems very true to me [10:53:30.0000] is a bit unique because it needs to be in markup for the preload scanner [10:55:10.0000] Anyway, really time to make dinner, guess I'll post tomorrow unless someone wants to do it for me [10:56:43.0000] MikeSmith: I'm not, that's just a good feature that's worth telling others about. [11:06:36.0000] annevk: hmm. nope. [11:06:45.0000] who's mvano? [11:17:26.0000] mven: Michael van Ouwerkerk [11:23:02.0000] smaug____: I've been meaning to write up some stuff on that topic for myself anyway, so I went ahead and did it: http://www.xanthir.com/b4hf0 [11:23:13.0000] smaug____: My guidelines for how to easily work with forks on GitHub. [11:24:34.0000] I need to see what git does when there are merge conflicts [11:24:53.0000] TabAtkins: thanks [11:39:30.0000] TabAtkins: five is no longer needed thanks to squash and merge [11:39:56.0000] TabAtkins: actually prefer fixup commits to more easily review them [11:40:14.0000] annevk: Yeah, that's probably true. [12:46:46.0000] there is no way to use HTTP content negotiation to negotiate image size, is there? [13:00:00.0000] coppro: No. [13:17:47.0000] :( [13:48:25.0000] also is there a more recent spec for CORS than the W3C recommendation? By my reading of fetch(), it doesn't implement that recommendation. [13:48:36.0000] (in particular, it requires the server to explicitly allow Authorization) [13:50:39.0000] It looks like Fetch defines CORS on its own? https://fetch.spec.whatwg.org/#http-cors-protocol [13:50:42.0000] but annevk ^^^ [14:14:42.0000] coppro: TabAtkins: yes, CORS spec is obsoleted by Fetch [14:16:10.0000] cool, thanks! 2016-06-09 [19:17:27.0000] annevk: looking at https://github.com/whatwg/fetch/issues/27 it seems like there hasn't been progress or decisions recently. Are you aware of any not currently listed there? [21:29:09.0000] boogyman: cancelable promises is making progress in TC39 [00:28:33.0000] annevk: if it's a security bug, would it have been worth a bounty? ;) [00:28:43.0000] (I'm not eligible for bounties anymore anyway) [00:29:02.0000] manishearth: dunno [00:29:40.0000] annevk: how can this be exploited, anyway? [00:29:57.0000] sounds like a minor detail about the security policy -- not sure what mischief can be done if this leaks [00:29:58.0000] manishearth: a server might do something weird upon receiving that header [00:30:37.0000] ah [01:03:27.0000] Do we have any other github.io domains than Loader? [01:03:46.0000] /me wants to enforce HTTPS for all of them now that's possible [01:50:57.0000] annevk: does gecko implement the fetch spec yet? or does each thing approximate it? [01:51:10.0000] as in, is there a hunk of code that more or less looks like the spec [01:51:29.0000] There is not [01:51:36.0000] There may well never be [01:51:53.0000] manishearth: no, this is why service workers took a long time and such [01:51:56.0000] ah [01:52:02.0000] Ms2ger: interesting, they're not convinced it's better architecture? [01:52:11.0000] Ms2ger: or will Rust just replace all the code? [01:52:37.0000] I don't know about that [01:52:41.0000] yeah when I implemented XHR in servo I realized that we should switch to the fetch spec (at the time it wasn't complete) as soon as possible, since approximating it makes reasoning abut certain things hard [01:52:49.0000] Ms2ger: so you're speculating? [01:52:52.0000] It's just a lot of code, and large rewrites are always hard [01:52:53.0000] Yes [01:52:56.0000] yeah [01:53:17.0000] we have a pretty small net stack right now so it's not hard to write the fetch thing [01:54:00.0000] And it's been pretty big for us too [01:54:02.0000] + [01:54:07.0000] haha [01:54:10.0000] Ms2ger: right [01:54:31.0000] It's nice that there's at least one implementation that is fairly close [01:54:31.0000] one outreachy intern, plus a week of work for me integrating it + chasing tests (mostly spec bugs and test bugs, yay) [01:55:01.0000] I never quite wrapped my head around Gecko's stack, but it seems like there's a lot of disjoint pieces that sorta hold the fort together [01:55:13.0000] annevk: this is why I've been filing so many spec/wpt bugs lately, we implemented the spec to the letter (modulo stuff we don't support), and it turns out that the spec is wrong in a few places :) [01:55:19.0000] And Chrome seems to have similar flaky code where it's quite easy for new features to violate the same-origin policy [01:55:42.0000] well, I mean it's just as easy to violate the same origin policy by adding a new feature to the fetch spec :) [01:55:43.0000] Yeah, unfortunately all specs are pretty crappy [01:56:10.0000] Even https://encoding.spec.whatwg.org/ which I keep thinking is done gets some rather annoying bug reports from time to time [01:56:12.0000] eh, it's okay. these were mostly minor edge cases, which were fortunately caught by wpt [01:56:18.0000] heh [01:57:18.0000] I saw that some folks will maybe try to turn the ECMAScript specification into something that can be verified [01:57:40.0000] If we reach that level of tooling and can start adopting that elsewhere, that would be quite nice [01:57:59.0000] Writing standards and hoping humans will catch all the errors is just so messy [02:00:46.0000] Verifying is fucking hard, though :/ [02:01:35.0000] annevk: > response's url list will be typically empty at this point [02:01:38.0000] annevk: why? [02:01:51.0000] that step runs after basic fetch or http fetch [02:02:02.0000] manishearth: because nothing has set it [02:02:08.0000] oh wait [02:02:09.0000] sorry [02:02:14.0000] *response*'s url list [02:02:30.0000] 😊 [02:02:55.0000] Ms2ger: the current state of play is too, no? [02:40:40.0000] Domenic: happy b-day! 🎂 [02:43:52.0000] Domenic: http://upload.wikimedia.org/wikipedia/commons/thumb/0/08/Pencils_hb.jpg/440px-Pencils_hb.jpg [03:13:57.0000] annevk: I want privileged frames to be able to bypass CORS checks [03:14:07.0000] Request mode "no-cors" is enough for this? [03:14:52.0000] nox: ha! [03:35:38.0000] manishearth: frames use navigate [03:36:07.0000] hm [03:36:14.0000] annevk: does it affect anything else? [03:36:47.0000] manishearth: it's not really clear what you want [03:37:10.0000] annevk: I want it to work exactly like an XHR fetch from the same origin [03:37:28.0000] annevk: we have a toplevel privileged frame that is allowed to do some of these things [03:39:27.0000] manishearth: I'm not sure [03:39:35.0000] manishearth: Fetch is defined for the observable web [03:39:43.0000] manishearth: I don't really want to provide guarantees beyond that [04:21:00.0000] manishearth: Glad someone liked it. :) [06:11:36.0000] Domenic: there's a lot of technical debt around creating documents, geez [06:12:15.0000] annevk: during navigation? Or in general? [06:12:17.0000] Domenic: and these algorithms have become quite big so it's not super easy to refactor, so I'm just doing it very slowly [06:12:27.0000] Domenic: navigation in particular [06:12:32.0000] annevk: nox: thanks 😀 [06:13:03.0000] Domenic: there might be a more general document allocation thing lurking in the background, but navigation is the one I'm trying to tackle atm [06:13:56.0000] annevk, any particular kind of chocolate you like? [06:14:13.0000] (Don't say "Swiss"...) [06:14:53.0000] Do say "Icelandic" [06:16:12.0000] Ms2ger: hmm, chocolates with filling from Belgium? [06:16:29.0000] Swiss chocolate with Belgian filling. [06:16:34.0000] jgraham: have to try those sometime [06:17:15.0000] You could say Icelandic, but then you just wouldn't be getting anything :) [06:17:47.0000] I was trying to bring a present from the airport for someone, but the Zurich airport is somewhat disappointing; however, it has lots of chocolates of which I could bring some next week [06:18:07.0000] Organize a little competition 😛 [06:18:19.0000] Ms2ger: Not in #servo anymore, is that normal? [06:18:49.0000] Hrm, I just realized I might not be able to get chocolate before leaving... [06:18:52.0000] We'll see [06:20:15.0000] Ms2ger: If only London had chocolate shops… [06:21:45.0000] jgraham, pah [06:22:30.0000] (oblig. hint: http://sourcedmarket.com/ stocks chocolate from http://cocoarunners.com/. Although not filled chocolates iirc. But for that there's e.g. https://www.rococochocolates.com/ and many others) [06:22:54.0000] (both are in Marylebone) [06:23:52.0000] jgraham: ah, you can give us the tour [07:21:38.0000] annevk: is SRI integrity supported on anything other than HTTP? [07:31:13.0000] wanderview: I think it works for blob URLs and such [07:31:41.0000] wanderview: can you get to https://github.com/whatwg/fetch/pull/322 today? [07:31:49.0000] ok... yea... in this case I guess the constraining thing is we only intercept http URLs [07:31:54.0000] wanderview: well, that's not really needed, but an ETA would be nice [07:33:50.0000] annevk: looking [07:42:32.0000] annevk: done [07:44:41.0000] ta [08:20:54.0000] What invokes https://html.spec.whatwg.org/multipage/browsers.html#scroll-to-fragid exactly? That first paragraph and its steps seems completely standalone? [08:21:49.0000] Not sure [08:22:13.0000] looks like it's meant to be invoked by navigation... [08:22:34.0000] > Fragments: If this is not a reload-triggered navigation, resource's URL equals browsingContext's active document's URL with exclude fragments flag set, and resource's URL's fragment is non-null, then navigate to that fragment and abort these steps. [08:22:49.0000] Yeah, just found that too [08:22:52.0000] Confusing since the is inside the heading, not the phrase [08:26:09.0000] I see [08:26:27.0000] So much still to test [14:01:54.0000] https://twitter.com/zcorpan/status/740653950899216384 15 mins left [14:05:12.0000] i am really curious about that one [14:18:28.0000] Domenic: why does streams 3.10.5.2 [[Pull]] create a Record with [[ctor]] %Uint8Array% instead of just constructing a Uint8Array? [14:19:02.0000] Domenic: oh... I guess that is used to construct the thing later... sorry for my confusion [14:21:25.0000] Domenic: answer posted [14:48:44.0000] is

not another Acid2 quirk? 2016-06-10 [19:58:26.0000] annevk: http://stackoverflow.com/questions/37733163/cors-preflight-not-happening-consistently [19:59:27.0000] annevk: sounds like an implementation bug somewhere, but anyway just FYI if you have any clues [22:14:43.0000] MikeSmith: commented [22:14:55.0000] thanks [22:24:41.0000] annevk: I guess I assumed the OP was talking about the same POST request made a different times, but seeing different behavior [22:24:45.0000] but maybe not [22:31:04.0000] MikeSmith: hi MikeSmith! [22:31:07.0000] annevk: hi annevk! [22:37:10.0000] Hey rniwa, good evening 😊 [22:42:55.0000] rniwa: hola [22:45:01.0000] annevk: glad we settled on getRootNode [22:45:04.0000] rniwa: question: Who do you reckon will probably end up doing the Service Worker implementation work for WebkKit? Maybe you? [22:45:18.0000] annevk: that git hub issue got super ugly LOL [22:45:30.0000] MikeSmith: definitely not me [22:45:31.0000] the main part of it I mean, or organizaing the work [22:45:33.0000] oh [22:45:41.0000] rniwa: wonder who else [22:45:42.0000] then [22:45:43.0000] MikeSmith: someone who knows the network stack [22:45:48.0000] ah yeah [22:45:58.0000] MikeSmith: like https://twitter.com/bradeeoh [22:46:13.0000] ah [22:47:10.0000] MikeSmith: we finally did some massive rewrite of the network stack this year but we've still got a long way... [22:48:22.0000] well [22:48:40.0000] you gonna rewrite large parts when you implement Service Workers [22:48:41.0000] I bet [22:48:54.0000] or at least need to touch large partts of it [22:53:15.0000] MikeSmith: yeah [23:09:07.0000] rniwa: yeah, got resolved quickly after removal though 😊 [23:09:42.0000] annevk: I guess we gotta thank Domenic for that ;) [23:09:55.0000] annevk: it looks like shadow DOM is getting into a good shape now [23:10:11.0000] annevk: adoption seems to be a big problem for custom elements though [23:10:24.0000] MikeSmith: WebKit is doing Fetch refactoring first [23:10:53.0000] annevk: I'm of the opinion that it might be better to make adoption throw for now but that might be also tricky because some DOM APIs assume any node can be adopted :( [23:10:56.0000] Which I've tried to advocate everyone to start with, but, you know [23:10:59.0000] annevk: oh [23:11:54.0000] rniwa: yeah, that does not seem easy [23:12:21.0000] annevk: but spec'ing some semi-interoperable behavior seems super risky [23:12:49.0000] annevk: because i'm sure someone would start relying on that behavior with adopting from iframe, etc... [23:12:50.0000] rniwa: also fails with the