Oh yes, I recall this now. :) IIRC, we generally follow this convention anyway; that feature had some communication gaps, but we did follow that convention.
On Wed, Oct 4, 2023 at 5:24 PM Jeffrey Yasskin <jyass...@chromium.org> wrote: > Apparently +Chris Wilson <cwi...@google.com> had part of this discussion > with Alan Stearns in April at > https://github.com/w3c/csswg-drafts/issues/8730#issuecomment-1524167658, > and the suggestion was that if a CSS spec for a feature is "unstable" > (meaning 'not at CR'?), then we should either post "we're about to send an > intent" to the last issue discussing it, or file an "Is X ready to ship?" > issue. I think +Chris Harrelson <chris...@chromium.org> is likely to have > the strongest opinions about this: should we add such a rule to our launch > process for CSS features? > > Jeffrey > > On Wed, Oct 4, 2023 at 1:15 PM Jeffrey Yasskin <jyass...@chromium.org> > wrote: > >> On Wed, Oct 4, 2023 at 1:08 PM Joey Arhar <jar...@chromium.org> wrote: >> >>> > I'd like to understand better how we wound up shipping :--foo and then >>> having the CSSWG ask us to change it to :state(foo) instead, and what we >>> could do in the future to avoid it happening again. >>> >>> I think if this was specced before shipping that would have been better >>> and is a practice that I (and we?) currently follow, but this was shipped a >>> number of years ago. >>> >> >> Yeah, good point: it's totally possible that our more recent process >> rigor is sufficient, and we don't need anything new to prevent this in the >> future. No matter what, we should expect the occasional old feature to pop >> up and be an exception. >> >> I do think that it's worth finding a way to write down your current >> practice, so that it doesn't regress if you switch teams. I think you mean >> that you do "hold off on shipping CSS features until they land in an >> official draft", so let's try to record that if it's our idea of the >> solution. >> >> >>> > As far as I can see, nobody asked for the ergonomic evidence that >>> https://www.chromium.org/blink/guidelines/web-platform-changes-guidelines/#browser-engine-reviews >>> says we can expect after Chrome has shipped a feature. >>> >>> This was my bad, I didn't realize or didn't completely consider >>> usecounters before I presented the name change to the CSSWG. >>> I am hoping that with an answer from the API owners, I can go back to >>> the CSSWG and potentially change it back. >>> There is still no merged spec in HTML or CSS for this feature yet, but I >>> have open PRs in both specs. >>> >> >> Thanks! >> >> On Wed, Oct 4, 2023 at 1:00 PM Jeffrey Yasskin <jyass...@chromium.org> >>> wrote: >>> >>>> +1 on the API owners discussing this. >>>> >>>> I'd like to understand better how we wound up shipping :--foo and then >>>> having the CSSWG ask us to change it to :state(foo) instead, and what we >>>> could do in the future to avoid it happening again. >>>> >>>> It looks like the initial proposal was :state(foo); the CSSWG asked to >>>> change it to :--foo in 2020 >>>> <https://github.com/w3c/csswg-drafts/issues/4805#issuecomment-591547956>; >>>> we shipped that in M90 in 2021 >>>> <https://chromestatus.com/feature/6537562418053120> (with a feature >>>> entry that still says :state 🙃); then Ryosuke suggested undoing that >>>> change in January 2023 >>>> <https://github.com/whatwg/html/pull/8467#issuecomment-1381645661>, >>>> and the CSSWG accepted that suggestion in August >>>> <https://github.com/w3c/csswg-drafts/issues/4805#issuecomment-1663111980>. >>>> As far as I can see, nobody asked for the ergonomic evidence that >>>> https://www.chromium.org/blink/guidelines/web-platform-changes-guidelines/#browser-engine-reviews >>>> says we can expect after Chrome has shipped a feature. It doesn't seem like >>>> this feature was so contentious that the team needed to use a name change >>>> as a bargaining chip, so we should probably have insisted on more evidence >>>> before agreeing with the change. Maybe that's still a "should" instead of a >>>> "should have": Joey's second email >>>> <https://groups.google.com/a/chromium.org/g/blink-dev/c/JvpHoUfhJYE/m/wPAHJzIvAQAJ> >>>> might >>>> say that the CSSWG's resolution >>>> <https://github.com/w3c/csswg-drafts/issues/4805#issuecomment-1663111980> >>>> about this isn't as committed as it appears to an external observer? >>>> >>>> Should we generally hold off on shipping CSS features until they land >>>> in an official draft, or even in a CR? Should we be clearer to the CSSWG >>>> when we decide to ship ahead of their consensus that the bar for changes is >>>> going up? There's not good support for this kind of per-WG restriction in >>>> Chrome Status yet, but maybe it'll fit near >>>> https://github.com/GoogleChrome/chromium-dashboard/issues/3390... >>>> >>>> Jeffrey >>>> >>>> On Fri, Sep 29, 2023 at 12:32 PM Alex Russell <slightly...@chromium.org> >>>> wrote: >>>> >>>>> hrm, this is another instance of bikeshedding after shipping, and I'm >>>>> not inclined to approve. Perhaps we can discuss at next week's API OWNERs >>>>> meeting? >>>>> >>>>> Adding others who I know are interested in this topic. >>>>> >>>>> On Friday, September 29, 2023 at 9:16:13 AM UTC-7 Joey Arhar wrote: >>>>> >>>>>> The spec for the new syntax hasn't been merged yet, I haven't >>>>>> finished implementing it in chromium yet, and I don't have estimated >>>>>> milestones yet, but I'd like to get the API owners thoughts on whether >>>>>> this >>>>>> deprecation would be acceptable to help guide the spec discussion. >>>>>> >>>>>> I did some analysis of the top 8 websites on the chromestatus entry >>>>>> to see what the breakage would be like: >>>>>> https://docs.google.com/document/d/1BHoO12ts0E-NQQH9AMwR2sKAIV0OPB-FA_8QXMpolz0/edit?usp=sharing >>>>>> I found that most of them had the affected custom elements behind >>>>>> display:none rules that I had to manually remove in order to use them. >>>>>> There was only one website where there was actual breakage by default, in >>>>>> which case the carousel buttons didn't work on firefox and safari. If the >>>>>> new syntax is just for the CSS property and we keep CustomStateSet the >>>>>> same, then the affected website's buttons would continue to work but >>>>>> whatever custom styles they have (which I couldn't trigger) wouldn't >>>>>> apply >>>>>> anymore. >>>>>> >>>>>> Personally, I think that this breakage would not be bad especially if >>>>>> we keep CustomStateSet the same, and I kind of like :state(foo) more than >>>>>> :--foo. However, I might have not made it clear in the spec discussions >>>>>> yet >>>>>> that we have already shipped :--foo by default for several years. >>>>>> >>>>>> On Fri, Sep 29, 2023 at 9:15 AM Joey Arhar <jar...@chromium.org> >>>>>> wrote: >>>>>> >>>>>>> Contact emailsjar...@chromium.org >>>>>>> >>>>>>> ExplainerNone >>>>>>> >>>>>>> Specificationhttps://github.com/whatwg/html/pull/8467 >>>>>>> >>>>>>> Summary >>>>>>> >>>>>>> CSS custom state, which allows custom elements to expose their own >>>>>>> pseudo-classes, was shipped here: >>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/dJibhmzE73o/m/VT-NceIhAAAJ >>>>>>> >>>>>>> This feature has not been implemented in gecko or webkit yet. I >>>>>>> recently made an effort to spec this feature in CSSWG and WHATWG, but >>>>>>> there >>>>>>> was pushback to change the syntax back from :--foo to :state(foo), and >>>>>>> the >>>>>>> CSSWG has resolved to do this as well: >>>>>>> https://github.com/w3c/csswg-drafts/issues/4805 >>>>>>> >>>>>>> The UseCounter is currently at 0.03% >>>>>>> https://chromestatus.com/metrics/feature/timeline/popularity/3796 >>>>>>> >>>>>>> This deprecation will have a window where we support both the old >>>>>>> syntax and the new syntax so websites can switch to the new one. >>>>>>> >>>>>>> >>>>>>> Blink componentBlink>HTML>CustomElements >>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EHTML%3ECustomElements> >>>>>>> >>>>>>> TAG reviewNone >>>>>>> >>>>>>> TAG review statusNot applicable >>>>>>> >>>>>>> Risks >>>>>>> >>>>>>> >>>>>>> Interoperability and Compatibility >>>>>>> >>>>>>> Websites which are currently using the old syntax and don't migrate >>>>>>> to the new syntax will have CSS selectors which become invalid which >>>>>>> would >>>>>>> impact the styling of their custom elements. >>>>>>> >>>>>>> >>>>>>> *Gecko*: No signal >>>>>>> >>>>>>> *WebKit*: No signal ( >>>>>>> https://github.com/whatwg/html/pull/8467#issuecomment-1381645661) >>>>>>> >>>>>>> *Web developers*: No signals >>>>>>> >>>>>>> *Other signals*: >>>>>>> >>>>>>> Activation >>>>>>> >>>>>>> Switching to the new syntax should be quite easy. >>>>>>> >>>>>>> >>>>>>> WebView application risks >>>>>>> >>>>>>> Does this intent deprecate or change behavior of existing APIs, such >>>>>>> that it has potentially high risk for Android WebView-based >>>>>>> applications? >>>>>>> >>>>>>> None >>>>>>> >>>>>>> >>>>>>> Debuggability >>>>>>> >>>>>>> None >>>>>>> >>>>>>> >>>>>>> Will this feature be supported on all six Blink platforms (Windows, >>>>>>> Mac, Linux, Chrome OS, Android, and Android WebView)?Yes >>>>>>> >>>>>>> Is this feature fully tested by web-platform-tests >>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>>>>>> ?Yes >>>>>>> >>>>>>> Flag name on chrome://flagsNone >>>>>>> >>>>>>> Finch feature nameNone >>>>>>> >>>>>>> Non-finch justificationNone >>>>>>> >>>>>>> Requires code in //chrome?False >>>>>>> >>>>>>> Estimated milestones >>>>>>> >>>>>>> No milestones specified >>>>>>> >>>>>>> >>>>>>> Anticipated spec changes >>>>>>> >>>>>>> Open questions about a feature may be a source of future web compat >>>>>>> or interop issues. Please list open issues (e.g. links to known github >>>>>>> issues in the project for the feature specification) whose resolution >>>>>>> may >>>>>>> introduce web compat/interop risk (e.g., changing to naming or >>>>>>> structure of >>>>>>> the API in a non-backward-compatible way). >>>>>>> None >>>>>>> >>>>>>> Link to entry on the Chrome Platform Status >>>>>>> https://chromestatus.com/feature/5140610730426368 >>>>>>> >>>>>>> This intent message was generated by Chrome Platform Status >>>>>>> <https://chromestatus.com/>. >>>>>>> >>>>>> -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJK2wqWyKRqYhWAG1yecr2Otth9SDTOS8pwF93Lji1n96eifRA%40mail.gmail.com.