09:18
<zcorpan>
can someone check http://software.hixie.ch/utilities/js/live-dom-viewer/saved/4196 in Edge?
09:21
<annevk>
https://irccloud.mozilla.com/file/43yfepoT/edge13.png
09:21
<annevk>
zcorpan: ^^
09:21
<zcorpan>
ty
10:07
<robertkowalski>
Domenic: i was three weeks on cuba, catching up this week
11:42
<zcorpan>
AAA ;_;
11:43
<zcorpan>
https://github.com/html5lib/html5lib-tests/issues/78
11:49
<gsnedders>
I /think/ the test is right. FF nightlies agree with the test, at least.
11:49
<gsnedders>
I could of course be wrong.
11:51
<nox>
gsnedders: I may be dumb,
11:51
<nox>
gsnedders: I don't see anything that contradicts your comment https://github.com/html5lib/html5lib-tests/issues/78#issuecomment-219328831.
11:51
<nox>
gsnedders: Oh btw, my Safari gives <aside><em><b></b><em></aside> for the aside part, hah.
12:06
<gsnedders>
nox: I said the em gets removed from the list of active fomratting elements
12:06
<gsnedders>
nox: which means you don't end up with a em in the new aside
12:06
<nox>
gsnedders: Oooooh, right.
12:07
<nox>
gsnedders: But isn't iabudiab wrong about <em> not being removed as per the spec?
12:07
<gsnedders>
nox: I believe he is
12:07
<gsnedders>
wait
12:07
<gsnedders>
there's too many negatives there
12:07
<nox>
:D
12:08
<nox>
gsnedders: "So in this case the <em> wouldn't be removed via the following step If inner loop counter is greater than three and node is in the list of active formatting elements, then remove node from the list of active formatting elements"
12:08
<nox>
This sounds wrong to me.
12:08
<gsnedders>
That's what I think is wrong.
12:08
<gsnedders>
With his understanding.
12:10
<nox>
And as per the spec in step 13.6, <em> should be removed from the stack of open elements too.
12:12
<nox>
IMO WebKit/Chromium/IE11 don't follow the spec, and the test is consistent with the spec.
12:12
<nox>
But WebKit/Chromium/IE11 not following the spec means the spec needs to change, right?
12:12
<Ms2ger>
Usually
12:13
<nox>
Though <em><b> looks quite insane in that case. :/
12:14
<gsnedders>
I /think/ they don't have the inner loop limit?
12:15
<gsnedders>
Which means you can still end up with O(n^2) behaviour, no?
12:15
<nox>
gsnedders: They being the three UAs I mentioned?
12:15
<nox>
OP seemed to imply that WebKit do limit the inner loop.
12:16
<nox>
Cf. code in https://github.com/html5lib/html5lib-tests/issues/78#issuecomment-219421046
12:30
<gsnedders>
nox: right, I believe WebKit, Blink, and html5lib-python are all wrong here
12:33
<nox>
gsnedders: They should all follow what Servo does obviously!!1!
12:34
<gsnedders>
nox: and gecko
12:40
gsnedders
is trying to find where this changed
12:40
<gsnedders>
because the spec definitely used to agree with WebKit
13:37
<MikeSmith>
Domenic: about the MS notifications implementation, how can you tell it '
13:37
<MikeSmith>
Domenic: about the MS notifications implementation, how can you tell it’s a different spec? Their blog post has no code
13:38
<MikeSmith>
I was surprised to see them announce they were adding any notifications support at all, so not surprised to find out that they didn’t implement it to spec
13:43
<MikeSmith>
hahah
13:44
<annevk>
MikeSmith: "Microsoft Edge also supports the event model as defined by the W3C spec, including all the show, click, close, and error events."
13:45
<annevk>
MikeSmith: though if they're also going to support them for service workers they'll have some rather inconsistent model
13:46
<MikeSmith>
annevk: yeah I realized that after I typed the above
13:46
<MikeSmith>
this is rich in irony
13:47
<MikeSmith>
for anybody who says what is important to them is interoperability
13:48
<MikeSmith>
and also for the fact that the whole reason we had to create a separate WG for Notifications is because one vendor forced us into it
13:49
<MikeSmith>
anyway, I guess if they don’t yet have service workers implemented then they can’t support the current spec
13:50
<annevk>
MikeSmith: also means a certain vendor never waived their patents
13:51
<MikeSmith>
yup
13:51
<MikeSmith>
free ride
13:53
<MikeSmith>
I wonder if they actually know that “The implementation in Microsoft Edge is based on the W3C Web Notifications specification, now supported broadly across modern desktop browsers.” is not true
13:53
<MikeSmith>
well I mean the part after the commaa
13:53
<MikeSmith>
ah, desktop
13:54
<annevk>
I wonder if Chrome and Firefox have actually unshipped those events
13:54
<MikeSmith>
I guess that’s why they qualified it with the word “desktop”
13:54
<annevk>
Perhaps they implemented those events because implementers never removed support for them
13:54
<MikeSmith>
I don’t know about the events, for the old API does not work on mobile
13:55
<MikeSmith>
yeah maybe so
13:55
<annevk>
It's kind of a shame they have the feeling they can't even say those kind of things in public
13:56
<annevk>
It's not like these blog posts are helping convergence
13:56
<MikeSmith>
yeah
14:16
<annevk>
I think zcorpan might have missed that https://github.com/whatwg/html/pull/1267 is a pull request?
14:27
<Domenic>
The fetch issue on header lowercasing is pretty cool. Good compromise and people working together for a solution that seems to get better each time someone revises it. WHATWG in action.
14:34
<daleharvey>
So got a fun problem with anyone familiar with indexeddb (also know anywhere better to ask about this?)
14:35
<daleharvey>
I have a library (pouchdb), I want to expose the ability for users to define their own indexes at runtime (ie after schema creation)
14:39
<daleharvey>
even without them being defined at runtime and being done at schema creation it is still fairly complex, the user will certainly require the ability to change indexes outwith the versioning of the schema, and pouchdb will still need to track the schema version number for actual data migrations
14:39
<annevk>
daleharvey: when jsbell is around it'd be a good time to ask
14:40
<daleharvey>
ah cool, yeh I have been in touch with him before about chrome idb bugs, will look out for, cheers
14:44
<annevk>
daleharvey: have you looked at persistent storage btw? https://storage.spec.whatwg.org/
14:45
<annevk>
daleharvey: would appreciate feedback in the GitHub repo if you have any, no implementations yet though, still being worked on
14:45
<daleharvey>
oh I havent yet, will definitely take a look, thanks
14:47
<daleharvey>
still reading, but did you manage to get in implicit persistence? ie if a PWA is saved / installed then storage is persistent by default?
14:49
<annevk>
daleharvey: needs some rewording here and there, but the idea is that the permission can be granted in such a way, yes
14:50
<annevk>
daleharvey: probably still best if the developer invokes the method at that point to persist, in case they have a different storage strategy in mind
15:07
<annevk>
Domenic: for browser testing, get Google to buy you a BrowserStack account
15:07
<Domenic>
that's probably a good idea.
15:08
<annevk>
Domenic: it's quite nice, I use that now for Edge since I got tired of running a VM
16:55
<wanderview>
Domenic: do you know the answer to this streams spec notation question? https://bugzilla.mozilla.org/show_bug.cgi?id=1272697#c4
16:57
<Domenic>
wanderview: answered
16:57
<wanderview>
thanks!
16:57
<annevk>
Domenic: why can't we use "." for both?
16:58
<Domenic>
annevk: not really sure...
16:58
<Domenic>
Maybe another ECMA262 issue...
16:58
<annevk>
Domenic: sure
17:02
<annevk>
https://github.com/tc39/ecma262/issues/574
17:54
<Domenic>
TabAtkins: can I have Bikeshed specify a default for when I don't use for=""?
17:55
<TabAtkins>
Domenic: Yeah, link-defaults
17:55
<TabAtkins>
(And remember, if you ever need to *explicitly* refer to a dfn *without* a for='', use for="/".)
17:55
<jyasskin>
TabAtkins: It'd be really nice for terms with both a <dfn>term</dfn> and a <dfn for="parent">term</dfn>, if <a>term</a> would automatically assume for="".
17:56
<TabAtkins>
jyasskin: That's precisely the sort of thing that is *very* commonly an error and I *can't* assume, unfortunately.
17:56
<jyasskin>
:(
17:57
<Domenic>
TabAtkins: oh, the thing jyasskin is asking for is what I was asking for :(
17:58
<TabAtkins>
I was just having this discussion with fantasai - there's a border area where the likelihood of magic hiding errors outweighs the annoyance of having to manually specify things.
17:58
<TabAtkins>
Domenic: Yeah, you can *force* Bikeshed to assume that. I just can't do it automatically.
17:58
<TabAtkins>
Like I said, do a link-defaults line for it.
17:58
<Domenic>
Oh hmm
17:58
<TabAtkins>
with "for: /;" in it
17:58
<jyasskin>
Does a link-defaults of just "for: /; term: the term" do this, or do we also have to say the spec?
17:58
<Domenic>
doesn't seem to be working... spec: FETCH; type: dfn; text: referrer policy; for: /;
17:59
<Domenic>
[1;33mLINK ERROR:[0m Multiple possible 'dfn' local refs for 'referrer policy'.
17:59
<Domenic>
Arbitrarily chose the one with type 'dfn' and for ''.
17:59
<TabAtkins>
Hmmmm, that should work. I'll debug and fix today.
18:01
<TabAtkins>
jyasskin: I think you need the spec.
18:11
<Domenic>
Hmm [WHATWG-DOM] again...
18:28
<jgraham>
zcorpan: Is window.resizeTo expected to be sync?
18:33
<TabAtkins>
Domenic: If you ever refer to [DOM] in the spec, it'll use that in the biblio. It's just [WHATWG-DOM] in the db, so it'll use that if there's nothing else telling it which tag to use (such as if you only picked up that biblio entry indirectly, from an autolink pointing to a term in that spec)
18:33
<Domenic>
TabAtkins: I see. Yeah, all I did was add <a>node document</a>; it doesn't really make sense to put [DOM] there
18:34
<TabAtkins>
K. Fixing that more thoroughly is more effort than I'm willing to put in for something that's still *supposed* to be temporary. ^_^
18:34
<Domenic>
ya tobie, that's supposed to be temporary ;)
18:35
<jgraham>
zcorpan: BTW Iam very much hoping the anser is "no"
18:35
<jgraham>
Because I don't think that's possible to implement in many WMs (and I doubt browsers do it)
18:37
jgraham
guesses that zcorpan is not really around
18:40
<tobie>
Domenic: heh
18:46
<TabAtkins>
Domenic: "referrer policy" is in HTML. Is that the definition you want to refer to?
18:46
<Domenic>
TabAtkins: nope, I want to refer to the one in Fetch
18:47
<Domenic>
TabAtkins: except for when I do for="Document"
18:47
<TabAtkins>
Oh, that's not in Shepherd.
18:47
<Domenic>
https://github.com/w3c/webappsec-referrer-policy/pull/49 has the problematic code
18:47
<Domenic>
Sure but I put it in the links section
18:48
<TabAtkins>
Domenic: It looks like you just added a link-defaults for it. Did you add it somewhere else that I'm not seeing?
18:49
<TabAtkins>
Because link defaults just sets up the defaults for links. If the spec in question isn't in the db, it doesn't matter *what* the links specify, obviously. ^_^
18:49
<Domenic>
TabAtkins: line 24
18:49
<TabAtkins>
Ah, kk. (That wasn't changed in the commit, so I didn't see it.)
18:51
<Domenic>
ah right
18:57
<TabAtkins>
Okay, I've reproduced the issue. It's because <pre class=anchors> things are treated as local (so they'll get picked over other collisions, since you presumably *meant* to use them), and locals don't look at as many of the defaulting things. I'll see what I can do to fix this.
18:59
<TabAtkins>
Funky collision of heuristics here, ugh.
19:14
<Domenic>
\o/
19:15
<annevk>
Domenic: https://twitter.com/mpotra/status/732628389065035776
19:17
<gsnedders>
Someone mentioned that the TAG had concluded everyone should just use URL. Any citation?
19:32
<TabAtkins>
plinss mentioned that
19:39
<gsnedders>
TabAtkins: that's not a citation :P
19:39
<TabAtkins>
I know, I was just filling in the hole in your statement.
19:41
<TabAtkins>
Domenic: Your issue will require more work than I can do right now (I'm trying to get Echidna publishing working), so I've filed it as https://github.com/tabatkins/bikeshed/issues/710
19:41
<Domenic>
TabAtkins: OK cool, thanks
19:41
<Domenic>
at least it's "arbitrarily" picking the right version for now
19:43
<TabAtkins>
It really is arbitrary, since it depends on the ordering of Python dicts.
21:00
<jyasskin>
Domenic: Dumb question: why do you need to distinguish internal slots from record fields named like [[something]]?
21:01
<Domenic>
jyasskin: yeah, we're not really clear, upon reflection. I guess it'd be similar to keeping -> and . as separate in C++, even if pointers could never have normal properties; they have different semantics, sure, but maybe we should just consolidate (like, say, C# does, despite having both value and reference objets).
21:02
<Domenic>
jyasskin: annevk opened https://github.com/tc39/ecma262/issues/574 to discuss further
21:02
jyasskin
subscribes.
21:05
<jyasskin>
IIUC, the difference between an attribute on an interface vs a field on a record is that the attribute is a getter/setter on the prototype of the JS object, but a field is just a field directly on the JS object. But an internal slot acts like a field on the object, so it actually should be accessed like a record field.
21:05
<jyasskin>
s/record/dictionary
21:06
<Domenic>
agreed. The [[s are enough to make it clear it's internal, now that I think about it
21:06
<jyasskin>
\o/
22:09
<wanderview>
Domenic: how significant is it that the streams spec defines IsReadableStream() as an internal slot check vs essentially an instanceof ReadableStream check?
22:09
<Domenic>
wanderview: pretty significant. Otherwise you could fool it by doing `var o = {}; o.__proto__ = ReadableStream.prototype`
22:09
<Domenic>
Then you'd start asking `o` for a bunch of interesting internal state, and bad things would happen
22:09
<wanderview>
Domenic: so its intended to be more strict, then...
22:10
<Domenic>
yes indeed
22:10
<Domenic>
it's a brand check
22:10
<wanderview>
Domenic: ok, so if we have a way of doing the brand check via an intrinsic, that should be fine to use vs the spec version
22:10
<Domenic>
wanderview: yeah as long as it can't be fooled, it should be fine
22:13
<wanderview>
Domenic: hmm, I guess our intrinsic could be fooled by Reflect.setPrototypeOf()
22:14
<Domenic>
wanderview: right, that was my __proto__ example... seems bad?
22:14
<wanderview>
Domenic: the problem with the slot check for me is that we don't have names for slots... really just indexes that a constant maps to
22:16
<Domenic>
wanderview: I see. I guess you probably need to reserve the 0th-index slot to have a guid or something you can check... I wonder if that's how SpiderMonkey does it for Promise and Map and friends?
22:16
<wanderview>
Domenic: I'll look and see what they do... thanks