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://flagsmutation-events
>>>>>>>
>>>>>>> Finch feature nameMutationEvents
>>>>>>>
>>>>>>> Requires code in //chrome?False
>>>>>>>
>>>>>>> Tracking bughttps://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 discussionsIntent 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.

Reply via email to