LGTM2. Thanks for the thorough analysis. Please roll this out carefully.

On Thu, Oct 13, 2022 at 8:07 PM Chris Harrelson <chris...@chromium.org>
wrote:

> LGTM1
>
> On Thu, Oct 13, 2022 at 11:06 AM Xiaocheng Hu <xiaoche...@chromium.org>
> wrote:
>
>> Hi all,
>>
>> Here's an update as now the trunk has reached M109, the target milestone
>> for the removal.
>>
>> Event.path has been fully disabled on Canary & Dev, 50% on Beta and 1% on
>> Stable. To help migration, an enterprise policy
>> <https://chromeenterprise.google/policies/#EventPathEnabled> is also
>> added to extend the availablility of Event.path until M115.
>>
>> Despite the usage number
>> <https://chromestatus.com/metrics/feature/timeline/popularity/345> still
>> being high, I think the actual compat risks of the removal is low because:
>> - The feature is never supported by WebKit or Gecko, yet there's no bug
>> reports for them
>> - Since the partial disabling, we have received only one complaint
>> <https://groups.google.com/a/chromium.org/g/chromium-dev/c/xt4XJYpoHXo/m/yBW13BXvAAAJ>,
>> which appears resolved by the enterprise policy
>> - HTTPArchive source analysis
>> <https://docs.google.com/document/d/1JUeNc-ZxxWTn2tz9M_DJ4cV-M8lBdp40xlnfQ2-Mhgg/edit>
>> (done in June) shows that very few (<0.1%) pages actually have a usage that
>> will fail after the removal; Many other pages are using the feature with
>> Event.composedPath() or some ad hoc code as a fallback, or are not real
>> usage (e.g., cloning every attribute of an Event object, hence triggering
>> the use counter without actually using it)
>>
>>
>>
>> On Tuesday, February 8, 2022 at 4:25:57 PM UTC-8 Xiaocheng Hu wrote:
>>
>>> Contact emailsxiaoche...@chromium.org
>>>
>>> ExplainerNone
>>>
>>> SpecificationNone. Not a standard feature.
>>>
>>> Summary
>>>
>>> Event.path is a non-standard API that returns the event's path, which is
>>> an array of the objects on which listeners will be invoked. It is supported
>>> by Blink only, causing web compatibility issues. Web developers should
>>> switch to the equivalent standard API Event.composedPath(), which returns
>>> the same result.
>>>
>>>
>>> Blink componentBlink>DOM
>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EDOM>
>>>
>>> TAG review
>>>
>>> TAG review statusNot applicable
>>>
>>> Risks
>>>
>>>
>>> Interoperability and Compatibility
>>>
>>> The removal of this API should improve interoperability, as it's
>>> supported by Blink only. It still has 18% usage as of Feb 2022 (
>>> https://chromestatus.com/metrics/feature/timeline/popularity/345), so
>>> we will only deprecate it for now, and will not remove it before the usage
>>> drops low enough. We expect low compatibility risks, since there is an
>>> equivalent standard API (Event.composedPath()) by all browsers, and the
>>> following polyfill should also keep existing sites functioning with minimum
>>> changes: if (!Event.prototype.path) {
>>> Object.defineProperty(Event.prototype, 'path', { get() { return
>>> this.composedPath(); } }); }
>>>
>>>
>>> Gecko: No signal Firefox does not support Event.path
>>>
>>> WebKit: No signal Safari does not support Event.path
>>>
>>> Web developers: Positive (
>>> https://github.com/web-platform-tests/interop-2022/issues/26)
>>>
>>> Other signals:
>>>
>>>
>>> Debuggability
>>>
>>> Usage of this deprecated feature will be reported to the DevTools Issues
>>> Tab.
>>>
>>>
>>> Is this feature fully tested by web-platform-tests
>>> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
>>> ?No
>>>
>>> Flag name
>>>
>>> Requires code in //chrome?False
>>>
>>> Tracking bug
>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1277431
>>>
>>> Estimated milestones
>>>
>>> No milestones specified
>>>
>>>
>>> Link to entry on the Chrome Platform Status
>>> https://chromestatus.com/feature/5726124632965120
>>>
>>> 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/9547aff7-15ad-420e-8574-d5bfc06b67c3n%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9547aff7-15ad-420e-8574-d5bfc06b67c3n%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/CAOMQ%2Bw-9CRZ5ZRC6BVUU0-jcEE0jOyvqdOuvmU_fAUZ%2BeEOhrQ%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-9CRZ5ZRC6BVUU0-jcEE0jOyvqdOuvmU_fAUZ%2BeEOhrQ%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/CAL5BFfWPWqQYpYTz%2BJ9O_VegsT1rG%2By1pFT5H3wGtRTpASqiag%40mail.gmail.com.

Reply via email to