Update: Due to breakage of the Wordpress editor, and a couple of other sites, we plan to delay the Stable ship milestone to 122.
I'll update the status entry etc. Stephen. On Wed, Nov 8, 2023 at 10:34 AM Yoav Weiss <yoavwe...@chromium.org> wrote: > LGTM3 > > On Wednesday, November 8, 2023 at 4:18:59 PM UTC+1 Daniel Bratell wrote: > >> LGTM2 >> >> You may want to ping the Mozilla standards position issue and let them >> know that we are close to shipping. It looks like they forgotten it. >> >> /Daniel >> On 2023-11-06 16:43, Mike Taylor wrote: >> >> Thanks for the detailed explanation of compat and for filing a TAG >> review. The risk of breakage seems low (and I suppose we'll learn how true >> that is as the change rides the trains), and breakage in this case would >> just be cosmetic (unless someone is doing something really clever). >> >> LGTM1 to ship. Good luck. :) >> On 11/3/23 12:19 PM, Stephen Chenney wrote: >> >> Note that I have moved the shipping milestone to M121, and have created a >> TAG review issue. >> >> On Thu, Nov 2, 2023 at 10:07 AM Stephen Chenney <schen...@chromium.org> >> wrote: >> >>> >>> >>> On Wed, Nov 1, 2023 at 11:11 AM Stephen Chenney <schen...@chromium.org> >>> wrote: >>> >>>> Answers inline. Regarding Ander's comment on the current base_feature >>>> setting: I'll fix that. >>>> >>>> Cheers, >>>> Stephen. >>>> >>>> On Wed, Nov 1, 2023 at 4:17 AM Yoav Weiss <yoavwe...@chromium.org> >>>> wrote: >>>> >>>>> >>>>> >>>>> On Tue, Oct 31, 2023 at 1:45 PM Stephen Chenney <schen...@chromium.org> >>>>> wrote: >>>>> >>>>>> Contact emails schen...@chromium.org >>>>>> >>>>>> Specification >>>>>> https://drafts.csswg.org/css-pseudo-4/#highlight-cascade >>>>>> >>>>>> Summary >>>>>> >>>>>> With CSS Highlight Inheritance, the CSS Highlight pseudo classes, >>>>>> such as ::selection and ::highlight, inherit their properties through the >>>>>> pseudo highlight chain, rather than the element chain. The result is a >>>>>> more >>>>>> intuitive model for inheritance of properties in highlights. >>>>>> Specifically, >>>>>> "When any supported property is not given a value by the cascade ... its >>>>>> specified value is determined by inheritance from the corresponding >>>>>> highlight pseudo-element of its originating element’s parent element." ( >>>>>> https://drafts.csswg.org/css-pseudo-4/#highlight-cascade) >>>>>> >>>>>> >>>>>> Blink component Blink>CSS >>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECSS> >>>>>> >>>>>> TAG review None >>>>>> >>>>> >>>>> Features are exempt from a TAG review only when another vendor has >>>>> already shipped them. That doesn't seem to be the case here. >>>>> >>>> >>>> The feature is in the CSS pseudos spec and has been for quite a >>>> while. The CSS Working Group has been discussing issues too and Safari, at >>>> least, is implementing according to the spec. I think the ship has sailed >>>> for any major revision to the behavior. (For context, there was no feature >>>> defined for this change until recently because it was originally viewed as >>>> a "make the code implement the spec" change.) >>>> >>> >> TAG Review Issue: https://github.com/w3ctag/design-reviews/issues/914 >> >> >>> >>>> >>>>> >>>>>> >>>>>> TAG review status Not applicable >>>>>> >>>>>> Risks >>>>>> >>>>>> >>>>>> Interoperability and Compatibility >>>>>> >>>>>> The feature is still under implementation in other browser engines, >>>>>> but the standards are well developed and there is general agreement on >>>>>> the >>>>>> spec. I think compat risk is very limited at this time. >>>>>> >>>>> >>>>> Does this feature change the behavior of existing uses of ::highlight >>>>> and ::selection? Is there risk from breakage there? >>>>> >>>> >>>> The change aligns the behavior of ::selection with Firefox. ::highlight >>>> is already implemented with this behavior. There was breakage of >>>> ::selection due to custom property handling, which was resolved at the spec >>>> level and fixed in chromium before sending this intent. No other bugs have >>>> come in over the extended period that this has been on for experimental web >>>> platform features (since M111). >>>> >>> >>> My above comment is wrong: The spec defining this feature does change >>> the behavior of ::selection (not ::highlight) for all browsers. But >>> evidence suggests that the mitigations that sites used to work around the >>> old behavior still work with the new behavior, so breakage is very limited. >>> There was a single source of significant breakage when the feature was >>> first turned on and the spec and code have been changed to maintain the >>> former behavior (related to custom properties on root applying to >>> ::selection). We have had zero other reported bugs from enabling the >>> feature experimentally. >>> >>> Some history ... The spec was changed in response to an issue where >>> Firefox wanted to un-prefix -moz-selection but was not obeying the old >>> spec. As I understand it, the selection style was checking for ::selection >>> on the selected element, using it if found, otherwise using the root >>> selection styling. All browsers were doing this. >>> >>> Sites were designed to work around this through the judicious use of >>> ::selection on various elements. That is, put ::selection on anything you >>> wanted a specified selection on, and if the inheritance was wrong, add a >>> more specific ::selection selector. Hence the heavy use of custom >>> properties to keep all these ::selection declarations in sync. You can see >>> this, for example, on GitHub where they define ::selection for an element, >>> element > span, and element > span > span, and again for light and dark >>> mode. Sass even has an operator with a comment on it saying they would >>> remove it if the spec is fixed. >>> >>> This intent to ship does not break sites that have taken this approach. >>> Specific selectors for ::selection will resolve to the same properties as >>> they do now. The improvement is that "element > span::selection" and >>> "element > span > span::selection" can now be removed in favor of just >>> "element::selection". >>> >>> >>>> >>>> >>>>>> *Gecko*: Neutral ( >>>>>> https://github.com/mozilla/standards-positions/issues/548) emilio@ >>>>>> is active in standards discussions on the issues, but I am not aware of >>>>>> implementation. https://bugzilla.mozilla.org/show_bug.cgi?id=1703963 >>>>>> https://bugzilla.mozilla.org/show_bug.cgi?id=1703961 >>>>>> >>>>>> *WebKit*: In development ( >>>>>> https://github.com/WebKit/standards-positions/issues/95) I have a >>>>>> private email from the Apple engineer tasked with implementing. I don't >>>>>> want to reveal PI. >>>>>> >>>>>> *Web developers*: Developer ergonomics is the primary concern >>>>>> motivating highlight inheritance. See >>>>>> https://github.com/w3c/csswg-drafts/issues/2474 for the initial spec >>>>>> discussion related to the behavior of ::selection. See >>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1490471 for an >>>>>> example of a user seeing unexpected behavior without this feature. >>>>>> >>>>>> *Other signals*: >>>>>> >>>>>> Ergonomics >>>>>> >>>>>> None. >>>>>> >>>>>> >>>>>> Activation >>>>>> >>>>>> No. This reflects the already active behavior for ::selection in >>>>>> Firefox and the already used behavior for ::highlight, ::spelling and >>>>>> ::grammar. >>>>>> >>>>>> >>>>>> Security >>>>>> >>>>>> There are no security risks. >>>>>> >>>>>> >>>>>> WebView application risks >>>>>> >>>>>> None >>>>>> >>>>>> >>>>>> Debuggability >>>>>> >>>>>> Devtools supports highlight pseudos and correctly shows the >>>>>> inheritance chain. >>>>>> >>>>>> >>>>>> Will this feature be supported on all six Blink platforms (Windows, >>>>>> Mac, Linux, Chrome OS, Android, and Android WebView)? Yes >>>>>> >>>>>> There are no cross-platform issues with implementation and no reason >>>>>> to discriminate on platform. >>>>>> >>>>>> >>>>>> Is this feature fully tested by web-platform-tests >>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>>>>> ? Yes >>>>>> >>>>>> >>>>>> https://wpt.fyi/results/css/css-pseudo?label=experimental&label=master&aligned >>>>>> highlight-cascade-* covers this functionality. There are additional WPT >>>>>> that make use of the feature in >>>>>> https://wpt.fyi/results/css/css-highlight-api?label=experimental&label=master&aligned >>>>>> >>>>>> >>>>>> Flag name on chrome://flags experimental-web-platform-features >>>>>> >>>>>> Finch feature name HighlightInheritance >>>>>> >>>>>> Non-finch justification >>>>>> >>>>>> The feature was enabled as experimental way back in M111 and stayed >>>>>> that way until M116 when it was switched back to test, and it is back on >>>>>> experimental for M118. Developers have significant experience with the >>>>>> feature enabled via experimental web platform features. There is no value >>>>>> to running a finch trial given the large amount of existing experience >>>>>> with >>>>>> the feature. >>>>>> >>>>>> >>>>>> Requires code in //chrome? False >>>>>> >>>>>> Estimated milestones >>>>>> Shipping on desktop 120 >>>>>> DevTrial on desktop 118 >>>>>> Shipping on Android 120 >>>>>> DevTrial on Android 118 >>>>>> Shipping on WebView 120 >>>>>> >>>>>> Anticipated spec changes None >>>>>> >>>>>> Link to entry on the Chrome Platform Status >>>>>> https://chromestatus.com/feature/5090853643354112 >>>>>> >>>>>> Links to previous Intent discussions Ready for Trial: >>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/BbvI5VAguvk >>>>>> >>>>>> >>>>>> 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/CAGsbWzQfdRQU81Cdm2phXD9f4wktm4f%2BReeYJaYVZKLrt_T4rg%40mail.gmail.com >>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGsbWzQfdRQU81Cdm2phXD9f4wktm4f%2BReeYJaYVZKLrt_T4rg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> -- >> 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/CAGsbWzQV-S4-w5nen9dWqeGRjSx_ietab3MzfF%2B-UdikH-8Hmw%40mail.gmail.com >> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGsbWzQV-S4-w5nen9dWqeGRjSx_ietab3MzfF%2B-UdikH-8Hmw%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> >> -- >> 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/b0b3fb6e-bc93-4823-a9e8-d3e7f8e4a388%40chromium.org >> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/b0b3fb6e-bc93-4823-a9e8-d3e7f8e4a388%40chromium.org?utm_medium=email&utm_source=footer> >> . >> >> -- 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/CAGsbWzS8U-KU_QE_aWkicYW_1NJDC0hp_j4B9t%2Ba66DqKeENdw%40mail.gmail.com.