| 01:05 | <jhiesey> | @Domenic: am i right in thinking that encodingOverride doesn't actually do anything yet in https://github.com/jsdom/whatwg-url ? |
| 01:05 | <jhiesey> | in general, how finished is https://url.spec.whatwg.org/ and are there any complete reference implementations? |
| 01:08 | <jhiesey> | @Sebmaster: ^ |
| 01:12 | <MikeSmith> | jhiesey: https://url.spec.whatwg.org/ intends to be finished and has browser implementations that conform |
| 01:12 | <MikeSmith> | annevk would be the person to ask for more details |
| 01:13 | <MikeSmith> | and fwiw there is java implementation at https://github.com/smola/galimatias that was written from scratch to match the requirements in teh spec |
| 01:14 | <Sebmaster> | jhiesey: yeah, encodingOverride isn't actually implemented |
| 01:14 | <Sebmaster> | I'm not sure it actually matters because it produce queryParams yet, which is the only point where it's used if i remember correctly |
| 01:17 | <Sebmaster> | s/because it produce/because it doesn't produce/ |
| 01:33 | <boogyman> | Is anyone here familiar with multipart streams? Forwarding on an inquiry from another channel "can one file be split between two parts of the same multipart stream" |
| 03:44 | <annevk> | Sebmaster: you need it for correctly parsing the query state |
| 03:45 | <annevk> | Sebmaster: URLSearchParams doesn't really use it |
| 07:34 | <mkwst> | annevk: If I add crytographic nonce metadata to requests, would you like me to expose it via Request/RequestInit? (re: https://github.com/whatwg/fetch/issues/269) |
| 07:34 | <annevk> | mkwst: is there a use case? |
| 07:35 | <mkwst> | Beyond "explain the platform", I don't have one. |
| 07:35 | <annevk> | mkwst: probably not for v0 then |
| 07:35 | <annevk> | mkwst: it's rather tied to the CSP header, no? |
| 07:36 | <mkwst> | annevk: Yes. I don't know of anything else using the `nonce` attribute for anything. |
| 07:36 | <annevk> | mkwst: that is, at the moment you also can't fake type or destination |
| 07:36 | <annevk> | mkwst: so if nonce only works when type is script, it doesn't add much value |
| 07:36 | <annevk> | mkwst: you might want to add nonce support to workers though... |
| 07:36 | <mkwst> | annevk: style too. |
| 07:37 | <mkwst> | https://github.com/w3c/webappsec-csp/issues/15 <-- worker nonces. |
| 07:38 | <annevk> | Seems Nadoedalo is ahead of the curve |
| 07:38 | <mkwst> | it's not tough to be ahead of me... |
| 07:39 | <mkwst> | Do you happen to know how the HTML bits of xref work? |
| 07:39 | <mkwst> | Do I just run `html.py` to regenerate the json files? |
| 07:40 | <annevk> | mkwst: you need to update html.json unfortunately |
| 07:40 | <annevk> | mkwst: and then run html.py |
| 07:40 | <mkwst> | um. ok? what does html.py do, then? |
| 07:41 | <annevk> | mkwst: cleanup and multipage references |
| 07:42 | <annevk> | mkwst: so you don't need to stick to alphabetical order when inserting stuff in html.json |
| 07:42 | <mkwst> | Ok. Well, it's throwing exceptions. :) |
| 07:42 | <Ms2ger> | Is that still being used? |
| 07:43 | <mkwst> | Will you be terribly sad if I just add references without running html.py? :) |
| 07:45 | <annevk> | Ms2ger: yeah |
| 07:45 | <annevk> | mkwst: I guess I can try to fix it |
| 07:46 | <Ms2ger> | You could try to argue this is all my code, I suppose |
| 07:49 | <annevk> | I'm mostly stuck with it since bikeshed has these odd things |
| 07:50 | <annevk> | I guess I should really try to get bikeshed not to do the things I dislike, that's probably more productive |
| 07:57 | <zcorpan> | annevk: HTMLHyperlinkElementUtils doesn't provide a searchParams getter? is that intentional? |
| 07:57 | <annevk> | zcorpan: yeah |
| 07:57 | <zcorpan> | annevk: ok. what was the rationale? |
| 07:57 | <annevk> | zcorpan: since it can't work for Location and WorkerLocation it seemed better to just have it for URL |
| 07:58 | <annevk> | zcorpan: minor post-decision-reason could be that <a> and <area> use an override encoding and URL doesn't |
| 07:59 | <annevk> | zcorpan: and that URLSearchParams always uses utf-8 |
| 07:59 | <zcorpan> | ok thanks |
| 08:06 | <annevk> | mkwst: so for https://github.com/whatwg/fetch/pull/273 you didn't update xref at all? |
| 08:06 | <annevk> | mkwst: or it wasn't needed? |
| 08:07 | <mkwst> | I updated it locally, and apparently didn't send a PR. 2 seconds. |
| 08:08 | <mkwst> | https://github.com/whatwg/xref/pull/11 |
| 08:20 | <annevk> | mkwst: wasn't sure whether https://github.com/whatwg/fetch/issues/269 should be closed, will leave that to you |
| 08:20 | <mkwst> | Probably not. It needs an HTML patch I'm writing now. |
| 08:20 | <mkwst> | And a CSP patch, but that's less relevant to Fetch. |
| 08:23 | <annevk> | GitHub is super slow? |
| 08:31 | <alrra> | annevk: yes (see: https://status.github.com/messages) |
| 08:36 | <annevk> | ta |
| 08:36 | <annevk> | TabAtkins: so I got conflicts now for "origin" |
| 08:36 | <annevk> | TabAtkins: then I use "spec" as suggested to disambiguate |
| 08:36 | <annevk> | TabAtkins: but by default "spec" just picks the first <dfn> in HTML, even it says noexport! |
| 08:37 | <annevk> | TabAtkins: that's somewhat absurd, no? |
| 08:51 | <mkwst> | zcorpan: Where's the best place to submit PRs for CSSOM? :) |
| 08:51 | <mkwst> | Just file something at https://www.w3.org/Bugs/Public/buglist.cgi?component=CSSOM&list_id=62622&product=CSS&resolution=--- ? |
| 09:00 | <zcorpan_> | mkwst: https://github.com/w3c/csswg-drafts/ - but create a fork, branches on this repo don't work because of the hg sync |
| 09:01 | <mkwst> | zcorpan_: Thanks! |
| 09:02 | mkwst | waits an hour for GitHub to catch up. :/ |
| 09:08 | MikeSmith | lights his peace pipe and enjoys an early-evening break |
| 09:14 | <mkwst> | zcorpan_: If you have a moment, can you help me understand how "fetch a CSS style sheet" relates to "create a CSS style sheet"? |
| 09:14 | <mkwst> | The latter has data I want to use in the former (namely the "owner node" of the sheet). |
| 09:15 | <mkwst> | "create" is called from HTML. |
| 09:15 | <mkwst> | "fetch" doesn't seem to be called at all. |
| 09:16 | <zcorpan_> | mkwst: https://github.com/whatwg/html/issues/968 |
| 09:17 | <zcorpan_> | mkwst: also i think several things in this area are currently broken, i haven't spent time yet to fix it |
| 09:19 | <mkwst> | Got it. Ok. Then I'll defer this PR a bit and file a bug for myself to come back to it. :) |
| 09:19 | <zcorpan_> | mkwst: happy to allocate time for this soon though and help with whatever you want to fix |
| 09:19 | <mkwst> | I know jochen__ wants clarity here for Referrer Policy, and it would be helpful for CSP and SRI, which both need to stuff things into Fetch for various checks. |
| 09:20 | <mkwst> | *shrug* Not the most important thing ever, but it would be nice to have a clear path from `<link>` in HTML through to Fetch for stylesheets. |
| 09:20 | <annevk> | Yeah, he's always reminding me how CSS doesn't have its act together |
| 09:20 | <annevk> | But note that fixing that would also requiring some deeper fixes, such as defining what `background-image` and such do |
| 09:20 | <mkwst> | Yup. Baby steps. |
| 09:21 | <annevk> | Yeah, it's only a two decade old feature |
| 09:22 | <annevk> | Would be a bit soon for it to be properly defined |
| 09:22 | <mkwst> | Fetch isn't two decades old. :) |
| 09:22 | <annevk> | mkwst: background-image is |
| 09:22 | <mkwst> | I see. |
| 09:23 | <zcorpan_> | 1) Here's a URL. 2) ??? 3) It works!! |
| 09:23 | <annevk> | Also, I think I could argue that parts of Fetch maybe are that old |
| 09:23 | <Ms2ger> | zcorpan_, hey, you know if attr() case-sensitivity is specced? |
| 09:24 | <zcorpan_> | Ms2ger: what aspect of it? |
| 09:24 | <annevk> | E.g., the redirect behavior has existed since, well, browsers |
| 09:25 | <Ms2ger> | zcorpan_, something that says "it's case-insensitive in HTML documents, case-sensitive elsewhere" |
| 09:29 | <Ms2ger> | zcorpan_, will file on HTML, I guess |
| 09:29 | <zcorpan_> | Ms2ger: i don't find anything about that |
| 09:32 | <zcorpan_> | html http://software.hixie.ch/utilities/js/live-dom-viewer/saved/4034 xhtml http://software.hixie.ch/utilities/js/live-dom-viewer/saved/4035 |
| 09:33 | <Ms2ger> | Also http://test.csswg.org/suites/css21_dev/nightly-unstable/html4/content-attr-case-001.htm :) |
| 09:35 | <zcorpan_> | "The case-sensitivity of attribute names depends on the document language." says CSS 2.1 |
| 09:36 | <Ms2ger> | https://github.com/whatwg/html/issues/991 |
| 09:36 | <zcorpan_> | but no such text in https://drafts.csswg.org/css-values-3/#funcdef-attr |
| 09:40 | <Ms2ger> | I'd file an issue there, but they use Tracker |
| 09:40 | <Ms2ger> | And that's really not worth my time |
| 09:43 | <Ms2ger> | TabAtkins, ^ |
| 09:55 | <annevk> | squash and merge is very satisfying |
| 10:12 | <annevk> | mkwst: should the HTML parser hide nonce attributes? |
| 10:15 | <mkwst> | annevk: Why? |
| 10:15 | <annevk> | mkwst: probably not worth the complexity, but it reduces the risk of nonce being reused by an attacker |
| 10:16 | <mkwst> | An attacker could only gain access to the nonce if they had the ability to run script on the page though, right? |
| 10:16 | <mkwst> | At that point, it's not clear what we'd be defending against. |
| 10:16 | <annevk> | mkwst: sure, it's defense-in-depth, similar to your credential scheme |
| 10:17 | <annevk> | mkwst: e.g., it might prevent exfiltration |
| 10:19 | <mkwst> | annevk: File a bug? It's certainly worth considering, though I'm not sure the complexity is worth it. |
| 10:20 | <mkwst> | annevk: I've been thinking about something else that might be worth it, though: |
| 10:20 | <mkwst> | An issue that keeps coming up is injection of partial tags to capture attributes on subsequent tagfs. |
| 10:21 | <mkwst> | Like, an attacker injects `<script src='whatever'` just before a page writes `<script nonce='whatever' ...>`. |
| 10:21 | <mkwst> | Could we prevent script execution for script elements that contain an attribute named "<script"? |
| 10:22 | <annevk> | If it's web-compatible we could... |
| 10:23 | <mkwst> | I'm doing it in CSP (https://github.com/w3c/webappsec-csp/commit/2c92a09beeede27e45f2acef4041aa0a1770fa99), but I can't imagine there's any real use case. |
| 10:23 | <mkwst> | I guess I'll file a bug, add a use counter, and wait. :) |
| 10:23 | <annevk> | Yeah, that'd be a good approach |
| 10:24 | <annevk> | The cool alternative would be <script-[nonce]>, but that's not really backwards compatible |
| 10:24 | <annevk> | And you'd have </script-[nonce]> too of course |
| 10:24 | <mkwst> | Well, that's the next thing. :) |
| 10:25 | <annevk> | And the parser inserts <script> if [nonce] is good |
| 10:25 | <mkwst> | Since HTML isn't XML, how about we add `<tag closes-with='nonce'> ... </tag nonce>` :) |
| 10:25 | <annevk> | That'd be a lot more compatible, for sure |
| 10:26 | <annevk> | I have no objections, XML compat hasn't really done us any favors |
| 10:26 | <mkwst> | Hooray! Maybe I'll look at our HTML parser to see if this is at all implementable. |
| 10:27 | <annevk> | Attributes on the closing tag are definitely tokenized, but probably not along |
| 10:27 | <annevk> | passed along* |
| 12:36 | <annevk> | What's a good presentation framework these days? Other than Opera Presto which I can't really recommend anymore due to it not being maintained... |
| 12:36 | <annevk> | Anyone experience with https://github.com/hakimel/reveal.js? |
| 12:52 | ondras | has http://ondras.github.io/jsslides/v3/ |
| 12:52 | <ondras> | annevk: ^ |
| 14:30 | <annevk> | ondras: ta, none of these looks very simple, but maybe it's not a simple problem anymore |
| 14:30 | <annevk> | ondras: <style media=projection> was quite nice |
| 14:31 | <ondras> | depends on your definition of "simple" I guess |
| 14:32 | <ondras> | media=projection is nice but you often want to have this functionality without projection |
| 14:32 | <ondras> | and you want some interactivity not achievable with css |
| 14:32 | <ondras> | I have this pure-css variant: http://ondras.zarovi.cz/demos/nojs/ |
| 14:32 | <ondras> | but it is more of a hack |
| 14:33 | <ondras> | anyway, my jsslides is generally done by one additional <script src=...> node, sounds quite accessible to me |
| 14:33 | <ondras> | annevk: ^ |
| 16:47 | <Domenic> | Always so interesting when someone's only GitHub contribution is a reasonable, non-spammy spec bug: https://github.com/whatwg/dom/issues/203 |
| 16:51 | <jgraham> | Outside the filter bubble there are lots of technical people that never have occasion to use GitHub |
| 16:56 | <annevk> | Domenic: had not even noticed that |
| 17:55 | <TabAtkins> | Ms2ger: We do not, in fact, use Tracker for anything; I'll go fix that spec to stop lying. |
| 17:55 | <Ms2ger> | That's nice, I guess |
| 17:56 | <TabAtkins> | And yeah, you're right, we should ref the "CI defined by the host language". |
| 17:56 | <Ms2ger> | zcorpan also sent email |
| 18:43 | <TabAtkins> | Cool |
| 18:45 | <TabAtkins> | annevk: (re spec and noexport) That's actually intended behavior. The entire point of noexport is to hide definitions *by default*, if they're not considered sufficiently useful to pollute the global namespace with. The spec argument's main purpose is to *override* that, indicating that no, you really do want to look inside of this spec for a definition, |
| 18:45 | <TabAtkins> | so that overrides noexport. |
| 18:46 | <TabAtkins> | If spec didn't do that, I'd have to invent a *further* indicator to mean "no, really, I don't care whether they're exported or not". |
| 18:47 | <Domenic> | then how do you indicate which spec you want to get the definition from, while still respecting noexport? |
| 18:47 | <TabAtkins> | You don't. |
| 18:47 | <TabAtkins> | There is no such indicator right now. Hasn't been needed. |
| 18:48 | <TabAtkins> | As long as a single spec's definition are well-formed (all distinguishable), you don't need it - you can just say "use this spec, and get me this particular definition". |
| 18:48 | <TabAtkins> | Which is possible in this case anyway - I don't know how correct it is, but the one exported HTML "origin" definition is for=origin |
| 18:48 | <Domenic> | I guess this comes back to the conflict where you think textContent is unique and we think IDs are unique |
| 18:49 | <TabAtkins> | While the other three aren't for anything. (They're not well-formed per Bikeshed's model, but as long as you're not trying to link them that doesn't matter.) |
| 18:50 | <TabAtkins> | I mean, IDs are unique, yes. But they're also arbitrary strings that require extra memorization to use, and should be left to automation to generate anyway. They're a tool of the underlying tech, not really intended for usability at the authoring layer. |
| 18:50 | <Domenic> | I disagree, probably because of the years of using <a href="#id"> |
| 18:51 | <TabAtkins> | Yeah, if you've already got calluses over the parts of your brain that remember IDs, it doesn't feel like it's a problem. |
| 18:53 | <Domenic> | I mean, it'd only be used for the disambiguation cases where the textContent is not unique |
| 18:54 | <TabAtkins> | Bikeshedded specs already enforce that case as a fatal error; this is only for the handful of specs that (a) want to be in the cross-spec-linking db, and (b) don't want to play by the rules of that db. |
| 18:54 | <TabAtkins> | There's only a handful of those, and they can be fixed over time. Blessing their behavior isn't great for the ecosystem. |
| 18:56 | <Domenic> | I pretty strongly disagree that unique text content is necessary for being a good citizen of the ecosystem |
| 18:56 | <Domenic> | but, it's not my db |
| 18:56 | <TabAtkins> | Good thing it's not! |
| 18:56 | <Domenic> | ouch |
| 18:56 | <TabAtkins> | Ugh, collision. |
| 18:57 | <TabAtkins> | Was responding to the *previous* line. |
| 18:57 | <TabAtkins> | You have to be a unique {linking text, type, for, spec} value. Which is a very low bar to meet. |
| 18:58 | <TabAtkins> | (Being unique on {linking text, type, for} is *nice*, but not required. When I finally implement support for obsoletion, it'll be easier.) |
| 19:04 | <TabAtkins> | That all said, my error message *does* explicitly say to insert "spec:html; type:dfn; text:origin" into link defaults, which would not be sufficient here. I should improve that. |
| 19:05 | <Domenic> | I guess this all sounds reasonable; we'll see if I run into problems again and have more specific complaints |
| 19:06 | <Domenic> | Somewhat-relatedly, we should talk about what we can do to HTML to make it a good citizen for cross-spec links. Add more data- attributes, mainly? Especially export, but also some type-related ones---e.g. get it to mark up the IDL somehow? |
| 19:07 | <TabAtkins> | I think the for=origin on that value is wrong. It's actually the core "origin" definition, all by its lonesome; it should be the only one *without* a for='' value. The other three should get for=request, for=url, and for=http, or something like that. |
| 19:07 | <TabAtkins> | I *think* plinss's parser handles IDL reasonably well automatically, but I'll have to check. Otherwise, yeah, it's just a matter of honoring the anchor contract <https://github.com/tabatkins/bikeshed/blob/master/docs/dfn-contract.md> |
| 19:08 | <Domenic> | I can't believe we've been putting data-noexport on all our <dfn>s like chumps, so silly |
| 19:09 | <TabAtkins> | A lot of them *do* need it. HTML is *not* defining the url origin, for example. |
| 19:09 | <Domenic> | but dfn is noexport by default, I thought? |
| 19:09 | <TabAtkins> | Oh yeah, right, that's true. |
| 20:53 | <jyasskin> | TabAtkins: While I was looking at BT's HTML use, I noticed that I have to define anchors for https://www.w3.org/2001/tag/doc/promises-guide and https://heycam.github.io/webidl/. Can you add those to shepherd? (I'll still have to define link-defaults for those, but that's preferable) |
| 20:57 | <jyasskin> | Domenic: Note that https://www.w3.org/2001/tag/doc/promises-guide#resolve-promise has link-text "Resolve p with x", which doesn't work at all in other specs. I'm using just "Resolve" in Bluetooth. |
| 20:57 | <Domenic> | jyasskin: yeah I should probably fix that |
| 20:59 | <TabAtkins> | jyasskin: Promises Guide is already in there. |
| 20:59 | <TabAtkins> | WebIDL isn't Bikeshed-friendly. Dunno what results we'd get if we put it in. |
| 21:00 | <jyasskin> | Thanks. I bet I searched for the wrong thing. WebIDL would have results like HTML, right? |
| 21:00 | <TabAtkins> | Yeah, approximately. |
| 21:00 | <jyasskin> | That's better than nothing. |
| 21:06 | <TabAtkins> | Hmmmmm, there's only 225 definitions. It shouldn't be too hard to just add the right attrs to WebIDL. |
| 21:06 | <TabAtkins> | Gimme an hour. |
| 21:16 | <Domenic> | Just Bikeshed it ;) |
| 21:16 | <Domenic> | Ms2ger or nox started such a project IIRc |
| 21:17 | <TabAtkins> | Bikeshedding it would be a lot more work. ^_^ I can at least make it *friendly* easily. |
| 21:17 | <TabAtkins> | And yeah, I recall someone starting a Bikeshedding, but I guess they lost interest; haven't heard anything about it in a while. |
| 21:18 | <nox> | Domenic: I would like to do it but I have other things to do and I've been told there are some licensing issue to take care of or whatever. |
| 21:19 | <Domenic> | but the XSLT ;_; |
| 21:22 | <TabAtkins> | Eh, who cares, data-* attributes still work I'm pretty sure. |
| 21:22 | <TabAtkins> | But also: licensing??!? |
| 22:19 | <nox> | TabAtkins: You would have to look into this very channel's logs, because I don't remember. |
| 22:23 | <Domenic> | It does seem like Web IDL is currently under the "no derivative works allowed" copyright. |
| 22:32 | <TabAtkins> | Right, but that doesn't stop it from *switching* to another processor. |
| 23:26 | <TabAtkins> | Wooo https://github.com/heycam/webidl/pull/105 |
| 23:31 | <heycam> | TabAtkins: thank you! |
| 23:32 | <TabAtkins> | Welcome! Hope it works and everything's kosher! |
| 23:33 | <heycam> | TabAtkins: unfortunately no, since it's XML those data-* attributes need an ="" |
| 23:33 | <TabAtkins> | Ah, kk, gimme a sec |
| 23:33 | <TabAtkins> | I thought of that early, but forgot by the time I was writing things. |
| 23:34 | <TabAtkins> | k, done |
| 23:35 | heycam | tries |
| 23:35 | <heycam> | TabAtkins: https://pastebin.mozilla.org/8866534 |
| 23:36 | <TabAtkins> | Holy crap, what possible reason could XML have for disallowing < in attr values? |
| 23:36 | heycam | started Bikeshedification (as did Ms2ger), which he should get back to completing |
| 23:37 | <TabAtkins> | And done. |
| 23:38 | <heycam> | TabAtkins: success :) |
| 23:38 | <TabAtkins> | yus |
| 23:39 | heycam | brb will land in a min |