LGTM3.

I had a slight concern about the quilljs usage - even though they've minted a new version, we know that getting sites to update is a major hurdle. That said, after reading through the comments and linked issues on upstream repos (react-quill, etc) - nobody seems to be describing any breakage, they just want the warning to go away. :)

On 5/20/24 1:09 AM, Domenic Denicola wrote:
LGTM2. This is extremely exciting. I hope that in a year, the deprecation process is fully complete, and we get to enjoy deleting a lot of code/specs/maybe tests.

I agree with your instinct to go to 100% directly with the 127 release.

On Mon, May 20, 2024 at 12:18 AM Philip Jägenstedt <foo...@chromium.org> wrote:

    Hi Mason,

    This is quite exciting! Mutation events is something I've long
    assumed we'd have to live with forever, but your findings here are
    extremely encouraging. Most compelling to me is (1) your analysis
    of UKM data and the lack of clear breakage on any of the ~30
    checked sites, and (2) that disabling the events on canary, dev
    and beta only resulted in a single bug report. The previous
    success of Shadow DOM v0 and event.path deprecation also shows
    that use counter numbers aren't always a good proxy for risk of
    breakage.

    In https://github.com/WebKit/standards-positions/issues/192 the
    point is made that there are other events that fire with the same
    timing as mutation events, so this removal doesn't unblock
    everything. Nevertheless, I share the assessment that mutation
    events "significantly increase the complexity of adding new
    features to the Web"  so if removal is within reach I think we
    should go for it. From
    https://github.com/mozilla/standards-positions/issues/807 it's
    clear that there is enthusiasm beyond the Chromium project too.

    Rolling this out with Finch is definitely prudent, and I agree
    with the argument for going directly to 100% in 127 to make for a
    less confusing debugging experience.

    LGTM1 to this plan, while being ready to adapt to things that come
    up in the process.

    Best regards,
    Philip

    On Fri, May 17, 2024 at 9:28 PM Mason Freed <mas...@chromium.org>
    wrote:



        On Thu, May 16, 2024 at 11:00 AM Vladimir Levin
        <vmp...@chromium.org> wrote:

                I looked into the UKM data about three months ago,
                before I started the experiment to disable all
                mutation events on Canary/Dev/Beta. I looked at the
                top ~30 UKM hits and dug into the site's code to see
                what the usage was. Many (~40% or so?) of the top
                sites usage was due to quilljs
                <https://github.com/quilljs/quill/issues/3806> which
                has since updated their code to not rely on mutation
                events. Another maybe 10% was due to a Sharepoint 2016
                mquery.js utility
                
<https://techcommunity.microsoft.com/t5/sharepoint/sharepoint-2016-server-mquery-js-event-deprecation/m-p/3947764>,
                for which several folks have requested support from
                MS, but it's a bit unclear what the plan is. The rest
                of the sites appeared to have bespoke code looking at
                mutation events.


            Is Sharepoint 10% of the 1% usage? According to the thread
            you linked
            
<https://techcommunity.microsoft.com/t5/sharepoint/sharepoint-2016-server-mquery-js-event-deprecation/m-p/4103969/highlight/true#M80109>
 they
            will fix it in a Sept 2024 release but seem like they
            won't backport the fix to previous versions. That seems a
            bit risky, but also I'm not sure what the breakage looks
            like and as you say, things seem to work.


        I don't have a great way to break down how much of the 1% is
        represented by the Sharepoint library, because it just shows
        up as a JS dependency on affected sites. And yes that's what
        the public thread there says, though I'm not sure how
        authoritative that is. I've reached out privately to MS to see
        if there's more info I can glean. Just to confirm, I can't
        "see" any breakage on those sites. The most "visible" thing,
        which is what gets folks to report issues like the Sharepoint
        one, is the console warning that mutation events are being
        used and might break. Those had the intended effect in all of
        these cases, which is a good thing.

                And finally, of course, assuming I'm approved to
                disable in M127, I'll be very mindful of breakage and
                will flip the events back on immediately in the case
                that there is more breakage than I'm expecting.


            Is the plan to do a finch rollout, something like 1%
            stable increasing week by week? Or were you just thinking
            of enabling it in 127 without finch?


        So I'm definitely planning to launch this via Finch, so I can
        be guaranteed that un-launching it that way will "work" for
        all platforms. But I could go either way on the question of
        whether to ramp up slowly or go directly to 100% with the 127
        release. I was leaning toward 100% of 127 on stable release
        day, because I think that'll be the least confusing for people
        experiencing issues. I.e. they relaunch their browser into 127
        and something breaks - they now understand what caused it.
        When the breakage starts on some random day, and isn't
        repeatable across computers, they have a harder time knowing
        they should report a bug. And I want to maximize the chance
        that issues get reported quickly.

        Thanks,
        Mason


                Let me know if anything else would help make the case
                that we should go forward with this.

                Thanks,
                Mason


                                    Chrome has shipped an experiment
                                    since M124 that disables all
                                    Mutation Events for 99% of users
                                    of Canary, Dev, and Beta versions
                                    of Chrome. Very few bugs have been
                                    filed in the intervening months,
                                    and all that were filed have been
                                    resolved quickly via the site
                                    owner making changes to not rely
                                    on the deprecated events.


                                    This gives me significant
                                    confidence that removing the
                                    events will not be as big of a
                                    deal as the use counters would
                                    suggest. Still, due to the
                                    still-high numbers, extreme care
                                    will be taken in the removal
                                    process. I plan to disable the
                                    events via Finch only, so that if
                                    issues are encountered, Finch will
                                    be a safe way to re-enable the
                                    events. Additionally, there are
                                    the deprecation trial and
                                    enterprise policies to offer an
                                    easy relief valve for affected sites.



                                    /Gecko/: Positive
                                    
(https://github.com/mozilla/standards-positions/issues/807)
                                    "very strong positive position"

                                    /WebKit/: No signal
                                    
(https://github.com/WebKit/standards-positions/issues/192)

                                    /Web developers/: No signals

                                    /Other signals/:


                                    Activation


                                    This npm package attempts to
                                    polyfill Mutation Events using
                                    Mutation Observer:
                                    
https://www.npmjs.com/package/mutation-events.



                                    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




                                    Will this feature be supported on
                                    all six Blink platforms (Windows,
                                    Mac, Linux, ChromeOS, 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>?


                                    No


                                    Flag name on chrome://flags


                                    mutation-events


                                    Finch feature name


                                    MutationEvents


                                    Requires code in //chrome?


                                    False


                                    Tracking bug


                                    https://crbug.com/1446498


                                    Estimated milestones


                                    Shipping on desktop         127
                                    Origin trial desktop first  124
                                    Origin trial desktop last   134

                                    Shipping on Android         127
                                    OriginTrial Android last    134
                                    OriginTrial Android first   124

                                    Shipping on WebView         127
                                    OriginTrial webView last    134
                                    OriginTrial webView first   124



                                    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/5083947249172480?gate=5111010140094464


                                    Links to previous Intent discussions


                                    Intent to Deprecate:
                                    
https://groups.google.com/a/chromium.org/g/blink-dev/c/qDsKRU-cQ_4/m/isA1mZ_aAAAJ


                                    Intent to Experiment:
                                    
https://groups.google.com/a/chromium.org/g/blink-dev/c/z-VIfSOco4k/m/KDz9c_goAAAJ



                                    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/CAM%3DNeDjonGju3YX1WkXtEJrMGLo4bH9AqtwV0QoqvopdGNioAg%40mail.gmail.com
                            
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDjonGju3YX1WkXtEJrMGLo4bH9AqtwV0QoqvopdGNioAg%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/CAOmohSJzmUKZo5K0TwixDRx0J5JfcNzugO3C%2BPVac-sB-3M-0g%40mail.gmail.com
                        
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJzmUKZo5K0TwixDRx0J5JfcNzugO3C%2BPVac-sB-3M-0g%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/CAM%3DNeDgfmwE9%3DKjAuKSZKEw_3CQ9tWenNa0yfLo8QXG6EyZ5uw%40mail.gmail.com
                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDgfmwE9%3DKjAuKSZKEw_3CQ9tWenNa0yfLo8QXG6EyZ5uw%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/CAM%3DNeDjm%2BgJ%3D5HEe6-DH1uG37Dwvn_iL6jZKytYSk4aHhZkoPA%40mail.gmail.com
        
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDjm%2BgJ%3D5HEe6-DH1uG37Dwvn_iL6jZKytYSk4aHhZkoPA%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/CAARdPYc74oCQFO%3Dhnmt_%2BK-XgwbBX-U1gkLQ%2Bo10vKd4uTHTZw%40mail.gmail.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYc74oCQFO%3Dhnmt_%2BK-XgwbBX-U1gkLQ%2Bo10vKd4uTHTZw%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/CAM0wra83-2od_jv2KkO8sn7gYkkvQLZiTjLX5wfLss0HCT9ZEg%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra83-2od_jv2KkO8sn7gYkkvQLZiTjLX5wfLss0HCT9ZEg%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/d8e0556b-c8e3-4633-ad8e-84c6865d2d22%40chromium.org.

Reply via email to