05:45 | <annevk> | Mark: The IETF is generally enthusiastic about Opportunistic Security |
05:45 | <annevk> | Mark: The W3C is much less excited about Opportunistic Security |
05:45 | annevk | is reading https://github.com/w3ctag/meetings/blob/gh-pages/2015/04-sfo/04-21-minutes.md |
06:09 | annevk | gets to the part where slightlyoff is upset with sortable tables |
06:09 | annevk | wouldn't really consider that representative of anything |
06:46 | <annevk> | "If your website is a bank, and you see a wildcard CORS header, it's probably really bad." |
06:46 | <annevk> | not true :-( |
06:51 | <smaug____> | is w3.org down |
06:55 | <annevk> | http://downforeveryoneorjustme.com/w3.org |
06:55 | <annevk> | I can't access it either though |
07:13 | <MikeSmith> | sorry we having haproxy problems I think |
07:13 | <MikeSmith> | it may be while |
07:13 | <MikeSmith> | oh maybe it's back already now |
07:14 | <annevk> | Domenic: where was that new URL implementation located again? |
07:14 | annevk | finds https://www.npmjs.com/package/url-standard and https://www.npmjs.com/package/urlsearchparams but they are different |
07:15 | <annevk> | https://www.npmjs.com/search?q=whatwg is pretty cool |
07:15 | <annevk> | Domenic: https://github.com/cofounders/urlutils ? |
07:16 | <annevk> | hmm that is a year old |
07:16 | <annevk> | Sebmaster: ? |
07:22 | <annevk> | ah |
07:22 | <annevk> | https://github.com/jsdom/whatwg-url |
07:23 | <annevk> | Whenever I search for jsdom I end up at https://github.com/tmpvar/jsdom so I didn't realize it was also an organization |
07:55 | <Domenic> | yeah maybe we should move it |
08:09 | <annevk> | TabAtkins: when I regen URL it now points to #utf_8-decoder rather than #utf-8-decoder due to a change in linking practices? |
08:10 | <annevk> | TabAtkins: I'm not sure how I can prevent that from happening |
08:15 | <annevk> | Whoever wants underscores?! |
08:15 | <annevk> | I found a workaround, but this makes things way more verbose... |
08:44 | <Domenic> | annevk_: explain no longer defaulting to about:blank? |
08:44 | <annevk> | Domenic: apparently #foo against about:blank will at some point yield about:blank#foo |
08:44 | <annevk> | Domenic: or might already in UAs |
08:45 | <Domenic> | sure. Why is that a problem? |
08:45 | <annevk> | Domenic: because the intention was that the default was equivalent to no base URL |
08:45 | <Domenic> | this is about new URL() only, or...? |
08:45 | <annevk> | yes |
08:45 | <Domenic> | ah ok |
08:45 | <annevk> | yeah other specs still need to use about:blank |
08:46 | <annevk> | e.g. new Document() |
08:46 | <Domenic> | so given an arbitrary string with no context, "parse this as a URL" i.e. "parse this as an absolute URL" should still be done relative to about:blank |
08:46 | <Domenic> | yeah |
08:46 | <Domenic> | document.URL seems fine for new URL I guess |
08:47 | <Domenic> | "#foo" should only work if "../../foo.html" works IMO |
08:47 | <annevk> | I want new URL to be able to fail on non-absolute URLs |
08:47 | <annevk> | right |
08:48 | <Domenic> | Maybe new URL() accepts relative and URL.absolute() fails on relative |
08:48 | <Domenic> | .fromAbsolute? I dunno. |
08:48 | <annevk> | it seems new URL() should support all forms and .statics should support subsets |
08:49 | <annevk> | a null base URL is more low-level |
08:49 | <Domenic> | I think that agrees with what I said :) |
08:49 | <annevk> | it might :-) |
08:52 | <annevk> | Domenic: do we still use tenXer? |
08:52 | <annevk> | Domenic: for whatwg/url it is triggering failures |
08:52 | <Domenic> | annevk: no :( it's some kind of viral thing that spread to all my repos, I have since revoked it |
08:52 | <annevk> | Okay, deleted |
08:56 | <annevk> | <script defer>, that means wait for DOMContentLoaded, right? |
09:02 | <Domenic> | Also something about ordering |
09:02 | <Domenic> | I kind of was under the impression <script defer async> was optimal but I dunno it's a mess out there |
09:04 | <annevk> | Yeah I was wondering whether I could move the dfn.js scripts to be earlier in the source if I added defer |
09:04 | <Ms2ger> | defer async just means "async", but "defer" if that isn't supported |
09:04 | <annevk> | (dfn.js requires the DOM to be complete-ish) |
09:04 | <Ms2ger> | defer would work for that |
09:04 | <gsnedders> | @defer means after DOMContentLoaded you execute script elements in document order |
09:05 | <gsnedders> | except in IE<10 when it doesn't have the ordering semantic |
09:07 | <Domenic> | sounds like defer async has additional semantics on top of just async then? |
09:08 | <gsnedders> | I can't remember how they combine |
09:09 | <gsnedders> | Because they have contradictory semantics then |
09:09 | <gsnedders> | Also I'm on a slow café wifi connection that doesn't help loading the spec |
09:11 | <gsnedders> | Domenic: "async defer" is equiv. to "async" |
09:11 | <gsnedders> | as Ms2ger said |
09:11 | <Domenic> | I see |
09:11 | <Domenic> | So it just ignores the defer part of the semantics |
09:12 | <annevk> | http://www.levelofindirection.com/journal/2015/5/1/naming-is-hard-or-is-it.html the "Why?" section here has an interesting insight on naming that I hadn't considered |
09:12 | <Ms2ger> | Except in browsers that don't support async |
09:12 | <Domenic> | Yeah but who cares about those while writing specs |
09:12 | <annevk> | Shorter names is about readability, not typing speed |
09:13 | <Domenic> | http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html |
09:13 | <Domenic> | seems like maybe we should be using <script defer> instead of <script async> for specs |
09:13 | <gsnedders> | I'm never entirely sure about async from a perf view; they delay the HTML being parser and then surely have a bigger effect on when the complete document is rendered first |
09:14 | <Domenic> | yeah blocking the parser seems like a sin |
09:14 | <annevk> | Yeah, perhaps <script> at top, and use defer="" since complete document/render is more important than the script |
09:15 | <annevk> | And for the common scripts we don't care about ordering... |
09:15 | <annevk> | So IE9 is not really a concern either way |
09:16 | <gsnedders> | what we really want is something which delays execution until DOMContentLoaded but doesn't care about ordering, surely? |
09:17 | <annevk> | Well, I guess we want better dependency management in general |
09:17 | <annevk> | See Hixie's efforts in that area |
09:56 | <greves> | how do i put query params in fetch(), and why is it not in the docs anywhere? |
10:02 | <annevk> | greves: which docs? |
10:02 | <annevk> | greves: and if you want to manipulate the URL, just manipulate the URL? |
10:03 | <greves> | https://github.com/whatwg/fetch |
10:03 | <greves> | annevk, yeah but its quite messy doing all of the ?a=foo&b=bar stuff on my urls manually... would be much nicer to do {a: foo, b: bar} and pass that in some how |
10:04 | <annevk> | greves: use https://url.spec.whatwg.org/#urlsearchparams |
10:04 | <greves> | how do i pass that into my call to fetch then? |
10:05 | <greves> | fetch(url, {headers: headers, body: body}) |
10:39 | <Domenic> | url.toString() |
12:12 | <annevk> | No need to invoke toString() explicitly... |
12:13 | <annevk> | It's surprising how much <form> has confused the thinking about query params |
12:39 | <Sebmaster> | annevk_: why'd you need the repo? |
12:40 | <Sebmaster> | *why did |
12:43 | <annevk_> | Sebmaster: wanted to point to it from an email to whatwg⊙wo |
12:43 | <annevk> | Sebmaster: https://lists.w3.org/Archives/Public/public-whatwg-archive/2015May/0007.html |
12:43 | <annevk> | zcorpan: header of https://html-differences.whatwg.org/ could do with some spring cleaning |
12:44 | <Sebmaster> | oh, i see, thanks |
12:45 | <Sebmaster> | annevk: i didnt mind the state based implementation too much, although i've no idea how a function based one would look, so i guess i cant really compare them |
12:46 | <annevk> | Sebmaster: https://github.com/servo/rust-url/blob/master/src/parser.rs#L94 and onwards, basically, but that's in Rust, not JavaScript |
12:49 | <Sebmaster> | annevk: ah, i was thinking that'd be much better at first because due to JITs not optimizing big functions |
12:49 | <Sebmaster> | I had a big switch statement in the beginning like here: https://github.com/jsdom/whatwg-url/blob/a7cfb037e36c6b07f884b25d59737d3d9b05986e/lib/url.js |
12:49 | <Sebmaster> | but with the class which saves the state and methods for each state it's not a big deal now I think |
12:52 | <annevk> | Sebmaster: see also https://github.com/annevk/url/ for such an implementation (though out of date) |
12:53 | <Sebmaster> | yeah i got a few tips where i missed stuff from the spec from there :p |
12:53 | <annevk> | Sebmaster: anyway, I don't have time for big rewrites at the moment |
13:23 | <annevk> | jgraham: it seems https://critic.hoppipolla.co.uk/r/4825 is already being acted on by wanderview and jsbell? |
13:24 | <jgraham> | annevk: Yeah. If you feel happy r-ing the fixup there then that saves a few hours of waiting for jsbell to wake up |
13:27 | <annevk> | jgraham: done |
13:28 | <jgraham> | annevk: Thanks! |
13:39 | <wanderview> | annevk: thanks |
13:39 | <wanderview> | jgraham: what is w3c-test-mirror? |
13:40 | <jgraham> | wanderview: It gets the thing mirrored on w3c-test.org |
13:40 | <jgraham> | https://w3c-test.org/submissions/1782/service-workers/cache-storage/window/cache-put.https.html |
13:40 | <jgraham> | Since you weren't 100% sure it worked I thought I should check |
13:41 | <jgraham> | (only project members can request mirroring, for obvious reasons) |
13:41 | <wanderview> | nice! looks like it passed |
13:41 | <jgraham> | I just started an update into the gecko tree |
13:41 | <Ms2ger> | Oh, does the mirroring work again? |
13:41 | <wanderview> | jgraham: ok... I'm still trying to fix the intermittents in the wpt tests on windows |
13:42 | <jgraham> | Ms2ger: Everything works again! |
13:42 | <jgraham> | (perhaps) |
13:43 | <wanderview> | jgraham: did you merge that last PR? I didn't get email about it |
13:44 | <wanderview> | looks like it still needs to be merged |
13:45 | <jgraham> | Wow, that's quite some fail |
13:48 | <Ms2ger> | Anyone want to check what IE does on https://w3c-test.org/submissions/1763/workers/baseurl/alpha/? |
13:49 | <wanderview> | Ms2ger: gives a directory listing |
13:49 | <Ms2ger> | Yeah |
13:49 | <Ms2ger> | There's four tests in there |
13:49 | <wanderview> | importScripts: TypeError: Unable to get property 'split' of undefined or null reference |
13:49 | <wanderview> | shared worker: TypeError: Unable to get property 'split' of undefined or null reference |
13:49 | Ms2ger | blinks |
13:50 | <wanderview> | they all hit that error |
13:50 | <Ms2ger> | Oh, gah |
13:50 | <Ms2ger> | Have we not merged IE's stack PR? |
13:50 | <wanderview> | Ms2ger: https://pastebin.mozilla.org/8832473 |
13:54 | <Ms2ger> | wanderview, want to try again? |
13:55 | <wanderview> | importScripts: https://pastebin.mozilla.org/8832475 |
13:55 | <wanderview> | shared worker: assert_unreached: Got error event Reached unreachable code |
13:55 | <wanderview> | base url in worker got the same error as importScripts |
13:56 | <wanderview> | xhr got slight variant on that error: assert_equals: expected "gamma\n" but got "beta\n" |
13:56 | <wanderview> | Ms2ger: ^^^ |
13:56 | <Ms2ger> | Dammit |
14:21 | <wanderview> | jgraham: were you able to fix the path encoding issue I ran into on windows? just wondering since you're running a gecko update |
14:26 | <jgraham> | wanderview: Uh, yes, I have a patch for that somewhere :) |
14:29 | <annevk> | caitp-: https://www.w3.org/Bugs/Public/show_bug.cgi?id=25684 |
14:41 | <annevk> | caitp-: interesting, so Chrome just does it for POST/PUT/HEAD |
14:41 | <annevk> | caitp-: that seems rather arbitrary |
14:42 | <caitp> | it is, but the reasoning makes sense |
16:04 | <annevk> | caitp: so I thought that was going to be an easy fix, but turns out I haven't really sorted the whole uploading part yet |
16:04 | <annevk> | caitp: and streams are going to change this too... |
16:22 | <annevk> | caitp: shit, forgot to add you to the ack section, how would you like to appear there? |
16:23 | annevk | finds name in /whois |
16:34 | <caitp-> | for fetch? sure |
16:35 | <annevk> | caitp-: https://t.co/mXRm2wbp8T |
16:49 | <annevk> | everyone, we're now maintaining https://resources.whatwg.org/biblio.json |
16:50 | <annevk> | Hixie: you might want to use that to generate spec.whatwg.org from at some point, we could add summaries and such |
16:54 | <Ms2ger> | Håkon? |
16:56 | <annevk> | hmm, need to force utf-8 |
16:59 | <annevk> | AddDefaultCharset failed bah |
17:02 | <annevk> | fixed |
17:07 | <annevk> | I also added DOMPARSING to the list |
17:29 | <TabAtkins> | annevk_: You can manually set your id, and Bikeshed won't autogen one. It intentionally downcases a hyphen into an underscore, so you don't get "duplicate ID" warnings when you define two terms that are identical save for their hyphenation. (It came up in one of mikewest's specs.) |
17:31 | <annevk_> | TabAtkins: it regressed a bunch of my stuff |
17:31 | <TabAtkins> | What changed, and what should it have been? |
17:32 | <TabAtkins> | Also: what is biblio.json for? Can you just put those in SpecRef? It's silly, if those are useful references, for them to be used only by one group, rather than shared by everyone using a preprocessor. |
17:33 | <annevk> | TabAtkins: tobie will import them automatically |
17:33 | <TabAtkins> | Ah, ok. |
17:33 | <annevk> | TabAtkins: it's WHATWG's version of what the W3C publishes as RDF... |
17:33 | <TabAtkins> | Cool. |
17:33 | <Ms2ger> | Why not microdata? |
17:33 | <TabAtkins> | Ms2ger: Don't troll. ^_^ |
17:34 | <annevk> | TabAtkins: in URL a bunch of utf-8 links were made utf_8 |
17:34 | <TabAtkins> | Yeah, that's due to what I indicated above. |
17:34 | <annevk> | TabAtkins: I solved it by adding explicit url entries next to text, but it was cumbersome |
17:34 | <annevk> | TabAtkins: and unless I'm mistaken in some specifications the IDs regressed |
17:35 | <TabAtkins> | Wait, I don't understand what you mean by "adding explicit url entries next to text". |
17:35 | <annevk> | I might be wrong about that part |
17:35 | <annevk> | TabAtkins: https://github.com/whatwg/url/commit/c2980ee398de9621b0c313e5cc522895227db24c#diff-03b21320f26423640f89c447968191e5L2921 |
17:36 | <TabAtkins> | It's possible that Bikeshed ID-autogen is different from Anolis auto-gen, yes. That's why I did a big s/title=/id=/ in DOM, to keep the IDs stable. |
17:37 | <TabAtkins> | Oh, I see. Yeah, Bikeshed uses its own ID-autogen rules to figure out the anchor, if you don't specify one yourself in the anchor data. Obviously, if a spec uses an ID that doesn't match Bikeshed's autogen rules, you'll have to specify the anchor yourself. |
17:38 | <TabAtkins> | (This can gradually be fixed by moving more specs into Shepherd's database, so you don't need to put them in an anchors block at all.) |
17:39 | <annevk> | Ah, I might have a look at Shepherd tomorrow |
17:39 | <annevk> | This whole anchor business is driving me nuts |
17:39 | <TabAtkins> | Yeah, partially because your Anolis specs all had the terrible title practice. |
17:40 | <Ms2ger> | Excellent practice* |
17:40 | <TabAtkins> | So you're actively fighting Bikeshed right now. |
17:40 | <TabAtkins> | Ms2ger: It was a hack around not having types attached to your definitions. ^_^ |
17:41 | <TabAtkins> | annevk: You're currently in the same position as when Hixie was trying to learn Git, and trying desperately to just push a file to the repo. ^_^ |
17:57 | <Domenic> | The difference here being, breaking external links is bad? |
17:58 | <TabAtkins> | There's nothing wrong with links. Where you previously specified title="concept-foo", you switch to id="concept-foo" (and let Bikeshed detect the linking text itself, unless you actually do need to override it). |
17:58 | <TabAtkins> | This works for all Anolis-based <dfn>s. |
17:59 | <TabAtkins> | Then you can, almost all of the time, delete title entirely from the links, and let the autolinking process hook things up automatically. |
17:59 | <TabAtkins> | I removed at least 99% of the title attributes in DOM's source. |
18:03 | <TabAtkins> | The Anolis practice was just to use title='' on <dfn> as a replacement for id='', and then use title='' on <a> as a replacement for href='' (that would cross-link if the ID was in the Anolis db). |
19:04 | <hsivonen> | annevk: https://bugzilla.mozilla.org/show_bug.cgi?id=1130533#c14 |
19:05 | <annevk> | hsivonen: sigh |
19:05 | <annevk> | hsivonen: tomorrow |
21:50 | <esprehn> | Hixie: why does script run when adding a node, but not when removing or changing the type... |
21:51 | <esprehn> | that seems super weird, you have to change the type and then append a whitespace node to run your script |