On 3/19/24 6:51 PM, Mason Freed wrote:



On Tue, Mar 19, 2024 at 1:44 PM Mike Taylor <[email protected]> wrote:

    Hi Mason,

    Would you mind requesting reviews for the various shipping gates
    (privacy, security, enterprise, etc.) in your chromestatus entry?


Definitely! But I only need to do that before I ship this, right? I.e. not required yet, while I’m just deprecating but not yet removing the feature?
We discussed this in our owners meeting today, and we think it's probably useful to go ahead and do that now - Enterprise in particular would probably be very interested in knowing about a deprecation. And for the rest if you think they're N/A, it's not much work to request that.


    On 3/15/24 6:49 PM, Mason Freed wrote:


            Contact emails


            [email protected]


            Explainer


            None


            Specification


            https://github.com/whatwg/html/pull/10139


            Summary


            The includeShadowRoots argument was a never-standardized
            argument to the DOMParser.parseFromString() function,
            which was there to allow imperative parsing of HTML
            content that contains declarative shadow DOM. This was
            shipped in M90 [1] as part of the initial shipment of
            declarative shadow DOM. Since the standards discussion
            rematerialized in 2023, the shape of DSD APIs changed,
            including this feature for imperative parsing. (See [2]
            for more context on the standards situation and recent
            changes, and see [3] and [4] for other related
            deprecations.) Now that a standardized version of this
            API, in the form of setHTMLUnsafe() and parseHTMLUnsafe()
            will ship in M124 ([5]), the non-standard
            includeShadowRoots argument needs to be deprecated and
            removed. All usage should shift accordingly: Instead of:
            (new
            DOMParser()).parseFromString(html,'text/html',{includeShadowRoots:
            true}); this can be used instead:
            document.parseHTMLUnsafe(html); [1]
            https://chromestatus.com/feature/5191745052606464 [2]
            https://chromestatus.com/feature/5161240576393216 [3]
            https://chromestatus.com/feature/5081733588582400 [4]
            https://chromestatus.com/feature/6239658726391808 [5]
            https://chromestatus.com/feature/6560361081995264



            Blink component


            Blink>DOM>ShadowDOM
            
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EDOM%3EShadowDOM>


            Motivation


            Now that there is a standardized version of this API, it
            makes sense to remove the non-standard, Chrome-only
            version of the API.



            Initial public proposal


            None


            TAG review


            None


            TAG review status


            Not applicable


            Risks




            Interoperability and Compatibility


            Because this is a removal of an API, there is some compat
            risk if sites use the API without feature detection.
            Additionally, feature detection is a bit difficult for
            this feature directly, and typical usage would instead
            feature-detect the old `shadowroot` attribute. In that
            case, there should be no breakage, since that attribute
            has since been removed. The use counter [1] for this
            feature has unfortunately had a recent spike in usage,
            peaking at just over 0.01% of page loads as of March,
            2024. However, I analyzed 8 of the top sites, and 8 of 8
            are due to the exact same code snippet, from AstroJS/Lit
            [2]. And that code amounts to feature detection, which
            as-written will properly detect the lack of
            `includeShadowRoots` and fall back to other behavior.
            This, plus the lack of support in other browsers, makes
            me less concerned about the compat risk here. [1]
            https://chromestatus.com/metrics/feature/timeline/popularity/4455
            [2]
            
https://github.com/withastro/astro/blob/main/packages/integrations/lit/client-shim.js



            /Gecko/: No signal

            /WebKit/: No signal

            /Web developers/: No signals

            /Other signals/:


            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



            Is this feature fully tested by web-platform-tests
            
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?


            Yes

            Tested via this WPT:
            
https://wpt.fyi/results/shadow-dom/declarative/declarative-shadow-dom-opt-in.html
            which fails because `includeShadowRoots` is non-standard.
            This is the only test failing within the Interop2024
            Declarative Shadow DOM section, due to this deprecation
            not being completed yet.



            Flag name on chrome://flags




            Finch feature name


            None


            Non-finch justification


            None


            Requires code in //chrome?


            False


            Estimated milestones


            Shipping on desktop         129
            DevTrial on desktop         125

            Shipping on Android         129
            DevTrial on Android         125

            Shipping on WebView         129



            Link to entry on the Chrome Platform Status


            https://chromestatus.com/feature/5116094370283520

            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 [email protected].
    To view this discussion on the web visit
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDhoX1h-FiR6p9tjuOCxhb1iXVciuQ%2BH4%3DHnzdb9M4rGKQ%40mail.gmail.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDhoX1h-FiR6p9tjuOCxhb1iXVciuQ%2BH4%3DHnzdb9M4rGKQ%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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/ed23f647-4779-4a1a-a7d9-5a6447ae099d%40chromium.org.

Reply via email to