2023-06-01 [01:26:09.0064] is there a spec reference for prefetch using `Sec-Fetch-Dest: empty`? (cc Noam Rosenthal) [01:30:56.0995] * is there a spec reference for prefetch using `Sec-Fetch-Dest: empty`? (cc Noam Rosenthal) it makes sense (to me) but not sure if there's an explicit reference which should be used [01:31:07.0666] canadahonk: yes! https://html.spec.whatwg.org/#link-type-prefetch:fetch-and-process-the-linked-resource (#3) [01:32:42.0397] thanks! [05:19:40.0255] Domenic: so when I click on any of the types/objects in https://webidl.spec.whatwg.org/#ArrayBufferView I end up in the same place as when I click those linked from https://webidl.spec.whatwg.org/#dfn-typed-array-type [05:20:47.0988] Domenic: so at least fundamentally it seems like Web IDL treats them as interchangeable already [05:22:05.0129] I guess I should leave that as a comment in the PR. Also found https://w3c.github.io/IndexedDB/#convert-value-to-key thanks to dontcallmedom [05:28:47.0839] annevk: yes. I don't think that changes my point that "typed array types" is a concept you reference when talking about types, whereas `Uint8Array` is a concept you reference when talking about either types or instances. [05:30:14.0021] We say "a `Uint8Array`" as a shorthand for "a `Uint8Array` instance", and we say "`Uint8Array`" as a shorthand for "the `Uint8Array` type". But we don't say "x is a typed array type" when x is an instance. We can say "x is a `ArrayBufferView` (instance)" if we want though. [05:31:51.0205] Domenic: I'm pretty sure there's precedent for "x is A or B" and then using "x" in that sense, e.g., in DOM [05:32:11.0708] Domenic: I guess you're saying there's some magic imbued by it being in Web IDL in this particular section, but that seems super weird [05:32:22.0833] I don't think there is when "A" or "B" have "type" in their string. [05:34:40.0907] Okay, so the magic is imbued by "type", that seems even worse, if we ever had `MIMEType` or equivalent [05:35:29.0127] I don't mind upholding the fiction for now and no longer exporting these terms (apart from buffer source types they don't appear to be used elsewhere), but this doesn't seem like a tenable solution long term [05:36:20.0285] I don't think it's magic, it's just staying consistent with how Web IDL is defining terms. [05:36:51.0226] Like definitely if you're using "type" in some sense other than "type in a formal type system" (e.g., MIME type) then you don't need to follow this idea. [05:37:20.0897] ES has a similar distinction since it's also defining a formal type system [05:38:15.0640] https://tc39.es/ecma262/#sec-ecmascript-language-types-boolean-type vs. https://tc39.es/ecma262/#sec-terms-and-definitions-boolean-value [05:39:00.0338] and then informally "a Boolean" is shorthand for "a Boolean value", but you don't say "true is a Boolean type" [05:56:53.0601] ES seems to have _String_ vs String though, at least [05:57:06.0637] or even _String type_ vs String [05:57:18.0783] And they're not saying "_String type_ is a String" [08:24:09.0676] > <@domenicdenicola:matrix.org> We say "a `Uint8Array`" as a shorthand for "a `Uint8Array` instance", and we say "`Uint8Array`" as a shorthand for "the `Uint8Array` type". But we don't say "x is a typed array type" when x is an instance. We can say "x is a `ArrayBufferView` (instance)" if we want though. I should read spec, does it cover uniform array views? or just DataView which are slower than uniform array views Also covers other things like `Float64Arrays` [08:41:00.0458] > <@domenicdenicola:matrix.org> We say "a `Uint8Array`" as a shorthand for "a `Uint8Array` instance", and we say "`Uint8Array`" as a shorthand for "the `Uint8Array` type". But we don't say "x is a typed array type" when x is an instance. We can say "x is a `ArrayBufferView` (instance)" if we want though. * I should read spec, does it cover uniform array views? or just DataView which are slower than uniform array views(typed array views) Also covers other things like `Float64Array`s [08:41:25.0839] * I should read spec, does it cover uniform array views? or just DataView which are slower than uniform array views (TypedArrayViews) Also covers other things like `Float64Array`s 2023-06-02 [17:12:23.0289] > <@annevk:matrix.org> or even _String type_ vs String In ES, 's CSS is italics. [23:45:54.0607] Domenic: fair. I think I still can't use the typedefs though because that would not obviously allow for resizable buffers [23:47:12.0187] Domenic: I guess I should just introduce some terms for the "values" [23:47:22.0316] Or just say "an instance of one of the buffer source types" [23:47:30.0621] Or define new typedefs if they're useful [23:48:00.0625] Actually I'm not sure what's wrong with the typedefs... [23:48:32.0728] > To create one of the buffer view types from a byte sequence bytes in a realm realm: Here "buffer view types" links to a dfn that says it's DataView + Uint8Array + ... [23:48:50.0325] But we already have a typedef for that: ArrayBufferView [23:49:45.0269] I'm not saying my current wording works with my new understanding of types, but https://webidl.spec.whatwg.org/#AllowResizable suggests it creates a new IDL type [23:50:50.0145] Yeah, I guess the question is whether the "create" algorithm is meant to allow creating resizable ABs etc. [23:50:56.0946] But presumably some of them are [23:51:16.0744] E.g. "byte length" [23:51:30.0739] So for "byte length" could you use `AllowSharedBufferSource`? [23:51:44.0290] That still doesn't include AllowResizable [23:51:54.0594] Got it [23:51:58.0198] So, preexisting issue [23:52:42.0025] I guess you have to say "annotated type whose inner type is..." and then you have to use "instance" because you're in type-land [23:52:43.0162] Yeah I suppose, WebKit doesn't seem to have AllowResizable [23:53:00.0273] Domenic: that doesn't help with `for` though [23:53:23.0440] I think having `for` not be rigorous is OK [23:53:30.0552] oh [23:54:25.0666] Making people type `[=[AllowResizable] Uint8Array/byte length=]` instead of `[=Uint8Array/byte length=]` seems unnecessary, even if they're technically operating on a value whose type is `[AllowResizable] Uint8Array` [23:55:20.0565] We could define `InclusiveAllowSharedBufferSource` I suppose, hmm [23:55:39.0485] Well I would expect something like "buffer objects/byte length" maybe [23:55:53.0574] But I could live with not fixing it, certainly less to fix downstream [23:56:09.0861] It's true we probably do need a typedef that includes [AllowResizable] [23:56:19.0745] Is anyone using [AllowResizable]? Hmm. [23:56:33.0280] WebDex says no https://dontcallmedom.github.io/webdex/a.html#AllowResizable%40%40%40%40extended-attribute [23:56:47.0316] But yeah it seems likely anyone who did use it would quickly want a typedef [23:57:00.0895] Either AllowResizableBufferSource or AllowSharedAndResizableBufferSource [23:57:16.0680] (shared and resizable = growable, I guess??) [00:07:06.0252] Domenic: yeah maybe, I don't really know what kind of operations you need with resizable, perhaps we should wait until someone actually attempts to do it [00:07:16.0768] Yeah fair enough [00:07:58.0652] Domenic: I guess I'll restore the existing `for` attributes and such and file a follow-up issue [04:29:13.0141] zcorpan: (and on the off chance there might be actually be any others here that care about the error-checking behavior of the vnu/mozilla HTML parser) Good news about my investigation of the fubarred behavior for error checking for ampersands is: From testing now, I can say: - the relevant patch as I had originally written it myself (almost 3 years ago now) was actually passing all the tests; that’s to first commit at https://github.com/validator/htmlparser/pull/30/commits - as Henri and I were reviewing my patch, we somewhere introduced the bug that caused the regression we only recently discovered we had — from it being reported in the issue at https://github.com/validator/htmlparser/issues/82 - the exact commit where we introduced the bug that caused the regression is https://github.com/validator/htmlparser/pull/30/commits/9814070b66f5d48f7798f97820fac14d36950243 - so I need to back at that commit in fine detail, and trace through it, and test changes to it to try to pinpoint exactly what part of it is where the regression bug was introduced [05:14:37.0666] Are there emcascript type IDL definitions or in another machine readable format? im working on some bindings to another language and would rather not have to manually write it all out [05:26:49.0318] Zomatree: TypeScript has those, maybe? [05:29:55.0363] parsing ts types would be a nightmare with how complex the type system is [05:39:48.0598] sideshowbarker: if you're still around, does https://github.com/whatwg/html/pull/9372 look good to you? I'll merge [05:51:41.0293] > <@annevk:matrix.org> sideshowbarker: if you're still around, does https://github.com/whatwg/html/pull/9372 look good to you? I'll merge Looking now [05:54:04.0672] It's not exactly what you are looking for, but with https://github.com/es-meta/esmeta you can parse the ecmascript spec and extract type definitions from it [06:00:38.0057] > <@annevk:matrix.org> sideshowbarker: if you're still around, does https://github.com/whatwg/html/pull/9372 look good to you? I'll merge Quick answer for now for here is: I think I am unliking to willingly implement this in the HTML Checker, because I think that on balance this restriction will end up wasting more time of HTML developer-authors than it helps others. Use cases for `summary` are very different from use cases for `button`. For one thing, a `summary` often acts essentially as a title/heading, as far as its informational purposes go, rather than just its function. I understand and recognize the very-real accessibility problems with allowing it, and I am in no way dismissing those as being ignorable and unimportant. But in this particular very special case, I do not judge the accessibility problems to be sufficient to merit the restriction being implemented in the HTML checker. [06:02:22.0349] Incidentally, all that said, I would have sworn that the spec previously already this restriction (and I had been already intentionally not implementing it), and I so I am a bit surprised to discover that the spec has actually not had this restriction, and this PR is needed to add it. [06:02:57.0830] I need to make time to go back and figure out _why_ I had thought this restriction was already in the spec. [06:03:33.0867] Alright, if you could put your concerns in the issue or PR that would be good. If it's not going to be enforced there's no real reason to make the change. [06:03:53.0063] Well I may really be in the wrong side of this [06:03:56.0869] Or at least it warrants some further discussion I think [06:04:07.0522] for sure [06:06:31.0657] and for now, I will put the comments into the PR — and then find some time to look back through my stuff and try to see what had confused previously about this already being in the spec. I guess that’s moot/irrelevant anyway as far as this PR goes — but it’s just I feel unsettled about not being able to remember yet why I had this apparent misapprehension so far, about this being in the spec already [06:06:46.0400] thanks for the heads-up about the PR [06:07:28.0121] I had actually seen notifications about that PR rolling by, but been lazy about not actually going to take a look and read the issue description [07:28:45.0104] sideshowbarker: I just realized this would also outlaw WebKit's PR bot comments [07:32:01.0445] > <@annevk:matrix.org> sideshowbarker: I just realized this would also outlaw WebKit's PR bot comments There you go. I think there are many other existing uses that it would outlaw — all over the place. I think if we look, we could find plenty of them — because it’s actually a logical normal natural reasonable use case to anybody [07:33:16.0454] I am recalling some of this, and what led me before to already having come to the the conclusion that I would not implement it [07:33:24.0624] * I am recalling some of this, and what led me before to already having come to the conclusion that I would not implement it [07:33:26.0217] Yeah, this no longer seems like a good fix [07:34:05.0568] I hope you did not provide pushback before and that was not conveyed to us this time around... [07:35:03.0028] Anyway, no harm done (and we could have always reverted had it been merged, although that would be somewhat bad) [07:36:15.0627] Yeah — and I know when I say this that it’s a standard cop-out we have been accused of using since forever in discussions with the accessibility advocates — but it really seems like what needs to happen here is for the AT to be refined to provide the right UX for this [07:36:36.0542] I mean, it’s in the wild already being used very commonly for years [07:37:11.0438] And we know that developers are not going to change there existing stuff just because the HTML checker starts barking at them [07:37:23.0183] * And we know that many (or most) developers are not going to change their existing stuff just because the HTML checker starts barking at them [08:47:27.0476] sideshowbarker: oops I was wrong, the WebKit PR bot doesn't put interactive content in `summary`, just in `details` [08:47:51.0264] sideshowbarker: for `summary` it does seem less likely, but there are probably existing cases [09:09:20.0887] Wait, why does the selector *|test serialize as test? [09:24:02.0290] I guess that's just how it works, unless you use @namespace it's all global [09:24:31.0578] So there's no need for *|* if you don't have @namespace either, something to keep in mind for the "global style sheet" I suppose [09:24:43.0670] * So there's no need for `*|*` if you don't have @namespace either, something to keep in mind for the "global style sheet" I suppose [09:37:59.0485] * zcorpan: (and on the off chance there might be actually be any others here that care about the error-checking behavior of the vnu/mozilla HTML parser) Good news about my investigation of the fubarred behavior for error checking for ampersands is: From testing now, I can say: - the relevant patch as I had originally written it myself (almost 3 years ago now) was actually passing all the tests; that’s the first commit at https://github.com/validator/htmlparser/pull/30/commits - as Henri and I were reviewing my patch, we somewhere introduced the bug that caused the regression we only recently discovered we had — from it being reported in the issue at https://github.com/validator/htmlparser/issues/82 - the exact commit where we introduced the bug that caused the regression is https://github.com/validator/htmlparser/pull/30/commits/9814070b66f5d48f7798f97820fac14d36950243 - so I need to back at that commit in fine detail, and trace through it, and test changes to it to try to pinpoint exactly what part of it is where the regression bug was introduced [10:37:57.0086] zcorpan: Trying to wrap my head around concrete object size ignoring natural dimensions. Is this correct? https://gist.github.com/eeeps/3b6c4b90f7275526534d5928a978fbaa [10:38:41.0779] We just released Ada's website, as well as Rust, Python and Go clients. Appreciate any feedback from WHATWG. http://ada-url.com [10:40:26.0747] > <@etportis:matrix.org> zcorpan: Trying to wrap my head around concrete object size ignoring natural dimensions. Is this correct? https://gist.github.com/eeeps/3b6c4b90f7275526534d5928a978fbaa (thinking through a new wrinkle, adding an example with height: auto...) [10:45:45.0379] > <@etportis:matrix.org> zcorpan: Trying to wrap my head around concrete object size ignoring natural dimensions. Is this correct? https://gist.github.com/eeeps/3b6c4b90f7275526534d5928a978fbaa * (thinking through a new wrinkle, adding an example with height: auto...) nevermind, I forgot how height:auto + width and height work, ignore me... [10:46:24.0598] * (thinking through a new wrinkle, adding an example with height: auto...) nevermind, I forgot how height:auto + width and height work, ignore me... still curious to check my understanding of the two examples in the gist though [10:56:50.0479] Also, my reading of https://whatpr.org/html/8008/images.html#parsing-a-sizes-attribute is that once you've specified `loading=lazy`, an img will behave equivalently with or without `sizes=auto`. Aka lazy-loaded images get auto-sizes by default. Is that right? [14:59:43.0119] > <@annevk:matrix.org> sideshowbarker: for `summary` it does seem less likely, but there are probably existing cases One concrete thing I can do that with give us some actual data ー though _aggregated_ data, as opposed to a list of sites ー is: I can add a use counter to the HTML checker, and then take a look at the number from that, after the counter has been in there for a few days [15:07:05.0566] That is, the counter will give us a percentage of sites which are using interactive content or tabindex inside `summary` [15:09:07.0422] ...and in parallel to me adding that ice counter, zcorpan or somebody else here who's set up to run HTTPArchive queries can run one for this [15:09:22.0675] * ...and in parallel to me adding that use counter, zcorpan or somebody else here who's set up to run HTTPArchive queries can run one for this [15:12:38.0764] But separate still from both of those, it would be greatly helpful for somebody to try to create a list of existing widely-visited sites which are using it (interactive content or tabindex inside `summary`) [15:14:35.0831] Maybe Scott Ohara or Steve Faulkner already know of some big sites which are 2023-06-03 [20:00:37.0637] We previously had some of this discussion about the sections at the bottom of https://participate.whatwg.org/agreement [20:03:20.0148] > <@yagiznizipli:matrix.org> We just released Ada's website, as well as Rust, Python and Go clients. Appreciate any feedback from WHATWG. http://ada-url.com Pretty cool. One thing that might be nice is highlighting how up-to-date you currently are. For jsdom/whatwg-url I link to the commit hash of the spec I've most recently updated to. https://github.com/jsdom/whatwg-url#specification-conformance If you put in more work you could translate that into "# of commits behind whatwg/url main". I think that would be some of the most important info I'd be looking for in a URL Standard-focused URL parser library. Basically, is it maintained. [20:04:30.0634] Also for your FAQ entry on WHATWG, maybe consider linking to https://whatwg.org/, and/or https://whatwg.org/faq [06:06:06.0453] Found an issue with the universal selector, prolly of interest to some people here: https://github.com/w3c/csswg-drafts/issues/8911 2023-06-05 [00:22:10.0507] > <@annevk:matrix.org> So there's no need for `*|*` if you don't have @namespace either, something to keep in mind for the "global style sheet" I suppose right but it's a bit of a footgun e.g. if implementers add the "global" rules into html.css [00:25:27.0343] > <@etportis:matrix.org> zcorpan: Trying to wrap my head around concrete object size ignoring natural dimensions. Is this correct? https://gist.github.com/eeeps/3b6c4b90f7275526534d5928a978fbaa For example 1, since img is display: block it would be 60rem wide. cf. https://software.hixie.ch/utilities/js/live-dom-viewer/saved/11739 [00:25:50.0714] (or less if the viewport is smaller) [00:27:44.0090] Eric Portis (he/him): https://drafts.csswg.org/css-images/#specified-size [00:29:12.0149] Eric Portis (he/him): example 2 seems correct [00:39:22.0425] zcorpan: hmm yeah, tests? 😀 [01:00:19.0898] > <@sideshowbarker:matrix.org> ...and in parallel to me adding that use counter, zcorpan or somebody else here who's set up to run HTTPArchive queries can run one for this Done, with these exceptions: (sans href) is included, , is included [01:04:39.0066] I made at least 2 mistakes in the regexp :) [01:05:37.0044] > <@zcorpan:mozilla.org> Done, with these exceptions: (sans href) is included, ,