10:07
<Yoav Weiss>
Is there a room for bikeshed questions? I'm hitting linking errors in my setup and others don't and I'd love some help debugging it..
10:59
<annevk>
Noam Rosenthal: note that moving in and out of a disconnected node now works, right? So the DocumentFragment example seems wrong.
11:00
<Noam Rosenthal>
annevk: only disconnected->disconnected works
11:00
<annevk>
Yoav Weiss: I usually use this room. Tab is here. 😊
11:00
<Noam Rosenthal>
I mean we can fallback to insertion for disconnected->connected / connected->disconnected, but that would not be the "move steps", it would be "falling back to insertBefore" which is exactly what they're asking
11:02
<annevk>
Right. I guess we might never be able to support disconnected <> connected. But we might be able to support connected/disconnected <> other document connected/disconnected.
11:02
<Noam Rosenthal>
Right. I guess we might never be able to support disconnected <> connected. But we might be able to support connected/disconnected <> other document connected/disconnected.
Right, in the future perhaps we'll be able to move cross-origin iframes across documents without reloading them, that would be neat
11:06
<Noam Rosenthal>
annevk: but this shouldn't preclude us from also having a moveOrInsertBefore version and/or something like a canMove function, don't you think?
11:08
<annevk>
I'm not really convinced by the people in that thread thus far. There's a lot of hyperbole and very little concrete arguments.
11:13
<Noam Rosenthal>
annevk: I guess we can also fall back to insert when it's something that inherently doesn't have state, like comment nodes or processing instructions etc, then throwing would be just for disconnected<->connected and across documents
11:17
<annevk>
I think this method should treat all nodes the same as much as it can.
11:19
<annevk>
(And as far as I can tell it does.)
11:19
<Noam Rosenthal>
annevk: currently it only allows moving elements & document fragments, perhaps we can remove that restricition
11:20
<Noam Rosenthal>
annevk: since comments etc don't have "insertion steps" anyway it should just work spec-wise I think
11:23
<Noam Rosenthal>
As in we might not need this line: https://github.com/whatwg/dom/pull/1307/files#diff-30f698d9b4650514daf7a04de5e44eebf8feff1a30e0505f8eeaf06703b2777dR2685
11:24
<Noam Rosenthal>
Ah sorry, there is no such restriction, I was reading the parent vs. node thing wrong
12:48
<annevk>
Noam Rosenthal: yeah, the only restriction is on DocumentType and that seems reasonable as it's not really something we care to support beyond the bare necessity. And there's a restriction on the root element, but that makes sense. Though maybe the root element restriction should be lifted (by allowing parent to be a Document) so it falls out of other conditions.
13:05
<annevk>
It seems that insertBefore() only works if Document has no element children currently. So I think behavior-wise it's going to be identical.
13:09
<annevk>
Oh, but for non-elements it's not. Okay, leaving another comment.
13:17
<annevk>
That issue btw has seen 30 new comments in 3 days. That's a good way to get your feedback ignored. :/
13:30
<Noam Rosenthal>
That issue btw has seen 30 new comments in 3 days. That's a good way to get your feedback ignored. :/
Yea several people trying to chime in to repeat the same point... not very helpful
14:01
<annevk>
Domenic: any latent thoughts on scoped custom element registries? Scoping for innerHTML and the like came up and it made me think that maybe decoupling from shadow roots could be nice. Would be interested to hear your thoughts. https://github.com/WICG/webcomponents/issues/1040#issuecomment-2498031090
14:07
<annevk>
Domenic: the other thing that irks me a bit about https://github.com/WICG/webcomponents/blob/gh-pages/proposals/Scoped-Custom-Element-Registries.md is importNode() and createElement[NS] on ShadowRoot. Import does not at all imply clone to me. And createElementNS doesn't seem needed? But maybe these should also be on CustomElementRegistry to begin with.
14:11
<Domenic>
I've been hoping to not have to think too hard about them, heh...
15:47
<annevk>
Ms2ger: nicolo-ribaudo: I think it would be useful if we had a WHATNOT call with a short presentation on ShadowRealm integration to get everyone on the same page. One thing you mentioned is that certain concepts are not applicable inside ShadowRealm, but couldn't someone just make the Image constructor available? I thought that was a thing.
16:29
<Ms2ger>
annevk: what's the schedule for those?
16:31
<Ms2ger>
annevk: you can only pass functions and primitives, so (unless I've confused myself again), you could pass the Image constructor into the shadow realm, but if you then called (the wrapper for) that constructor, you'd get an exception because it returns an object
16:48
<annevk>
Ms2ger: I think the most useful one to present at is bi-weekly at 6PM Amsterdam/Berlin/Paris on Thursday, next week being the next one of those. There's also a 10AM and 12AM variant the latter of which I only attend when I'm in the US and the former of which sees quite a bit less attendance. The 10AM one is this Thursday and the other one is two weeks from now.
16:49
<annevk>
Ms2ger: so it would call it in the parent global first and then try to proxy the outcome? So there's no way the global could be something else? I guess that makes sense.
16:51
<Ms2ger>
I think so, yes
16:54
<Ms2ger>
annevk: so 5 Dec at 6pm, right? I'll see if someone can make that work
17:06
<annevk>
Ms2ger: yes and please tell Panos Astithas early next week if it's happening so we can reserve time
19:44
<akaster>

In this test case:

let xmlString = '<html><head></head><body><div></div><span></span></body></html>';
let root = (new DOMParser()).parseFromString(xmlString, 'text/xml').documentElement
let serialized = (new XMLSerializer()).serializeToString(root.ownerDocument);
// serialized == '<html><head/><body><div/><span/></body></html>'

Why is it incorrect to have the XHTML namespace on the html element? (i.e. <html xmlns=\"http://www.w3.org/1999/xhtml\">;)

20:13
<akaster>
hm. maybe our patch to add that was in error anyway. doesn't fail any of our local tests to remove it 😅
20:38
<Yoav Weiss>
TabAtkins: hey! I'm hitting some weird issues with my local setup and the CSP spec, where I see 400+ linking errors. I think basically all the external refs are borked. Other folks and the GH bots don't see the same, so it's something about my setup. I'd appreciate some help with debugging it.. :D
20:39
<TabAtkins>
TabAtkins: hey! I'm hitting some weird issues with my local setup and the CSP spec, where I see 400+ linking errors. I think basically all the external refs are borked. Other folks and the GH bots don't see the same, so it's something about my setup. I'd appreciate some help with debugging it.. :D
You're on a (slightly) old Bikeshed - new enough to understand the new datafile file format, but old enough to not know about the change to that file format. (I'm still, uh, not handling datafile versions well.)
20:52
<Yoav Weiss>
TabAtkins: thanks! do I need to reinstall?
20:52
<TabAtkins>
pip install --upgrade bikeshed (or pipx if you used that, per the current instructions) will do
20:55
<Yoav Weiss>
TabAtkins: upgraded and I'm still seeing the linking errors..
20:55
<TabAtkins>
bikeshed --version?
20:55
<Yoav Weiss>
4.1.6
20:55
<Yoav Weiss>
Also, I'm getting this warning /Users/yoavweiss/Library/Python/3.9/lib/python/site-packages/urllib3/__init__.py:34: NotOpenSSLWarning: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020
20:56
<TabAtkins>
...huh, the most recent Bikeshed version is 4.2.7
20:57
<Yoav Weiss>
I'm trying to upgrade pip first..
20:58
<TabAtkins>
(Looks like 4.1.6 is back from March.)
20:59
<Yoav Weiss>
upgrading pip didn't help, now trying the pipx route
21:00
<TabAtkins>
uninstall from pip first, to be safe
21:03
<Yoav Weiss>
OK, so pip installed 4.2.7, but it's not the one I'm seeing when doing which bikeshed
21:04
<TabAtkins>
Then you're past the point I can help, because you've done something weird with your environment. Track down and delete whatever one your command line is using.
21:05
<TabAtkins>
(maybe you installed it from source at some point?)
21:07
<Yoav Weiss>
yeah, I'm trying to venv my way out of this
21:07
<Yoav Weiss>
I dunno what I did - I was young(er) and wanted to get something done
21:08
<Yoav Weiss>
thanks!!
21:09
<Yoav Weiss>
and venv saved the day! Thank you so much, TabAtkins ! :)
21:10
<TabAtkins>
Glad it's fixed. Part of why I recommend installing via pipx now is that it puts it in a venv for you. ^_^