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