Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Intent to Extend Deprecation Trial: Deprecate unload event

107 views
Skip to first unread message

Chromestatus

unread,
Feb 13, 2025, 5:54:23 AMFeb 13
to blin...@chromium.org, fer...@chromium.org, kenji...@chromium.org

Contact emails

fer...@chromium.org, kenji...@chromium.org

Explainer

None

Specification

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

Design docs


https://github.com/fergald/docs/blob/master/explainers/permissions-policy-deprecate-unload.md

Summary

A Permission-Policy for creating unload event listeners will be added. Initially the default policy will be to allow but Chrome will gradually migrate the default policy to deny creating unload event listeners until it is fully opt-in. The eventual goal is to remove support for unload event.



Blink component

Blink>PermissionsAPI

TAG review

None

TAG review status

Not applicable

Origin Trial Name

DeprecateUnloadOptOut

Chromium Trial Name

DeprecateUnloadOptOut

Origin Trial documentation link

https://github.com/fergald/docs/blob/master/explainers/permissions-policy-deprecate-unload.md

Risks



Interoperability and Compatibility

If no other browsers implement this, there is a risk that devs continue to use unload widely and pages malfunction on chrome. However given that alternatives to unload exist AND we are providing an opt-out it seems entirely possible for sites that are actively maintained to move off unload.



Gecko: Closed Without a Position (https://github.com/mozilla/standards-positions/issues/691#issuecomment-1484997320) It's possible that pages are depending on `unload` handlers in subframes for functionality even without any main frame navigation. We should try to understand how common this is before breaking it. It should be possible to measure how often subframe unloads fire when the mainframe is not navigating. This will give us an upper bound on the size of the problem, - Chrome: we have landed code to measure the occurrence of unload in different scenarios. We will report back the findings.

WebKit: Closed Without a Position (https://github.com/WebKit/standards-positions/issues/127)

Web developers: Positive (https://groups.google.com/a/chromium.org/g/bfcache-dev/c/zTIMx7u4uxo/m/-M4IS6LDBgAJ) We have had some positive response and no negative responses from devs

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?

N/A this is not rolling out to WebView.



Goals for experimentation



Reason this experiment is being extended

The deprecation was paused since early 2024, it is now resuming.



Ongoing technical constraints



Debuggability



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

[NOT FINAL] On WebView, we will introduce the Permissions-Policy but not move the default to "deny". BFCache does not work on WebView, so the benefit is lower. Meanwhile the risk seems higher as we have far less visibility into the HTML being run in WebViews.



Is this feature fully tested by web-platform-tests?

Yes

https://wpt.fyi/results/permissions-policy/experimental-features?label=master&label=experimental&aligned&view=subtest&q=unload



Flag name on about://flags



Finch feature name

DeprecateUnload

Requires code in //chrome?

False

Tracking bug

http://crbug.com/40063983

Estimated milestones

Origin trial desktop first 122
Origin trial desktop last 146
Origin trial extension 1 end milestone 146
DevTrial on desktop 117
Origin trial Android first 122
Origin trial Android last 146
DevTrial on Android 117


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5579556305502208?gate=5133680617717760

Links to previous Intent discussions

Intent to Experiment: https://groups.google.com/a/chromium.org/g/blink-dev/c/dvusqw9-IhI/m/IbI2V-3VAQAJ


This intent message was generated by Chrome Platform Status.

Rick Byers

unread,
Feb 14, 2025, 10:23:13 AMFeb 14
to Chromestatus, blin...@chromium.org, fer...@chromium.org, kenji...@chromium.org
LGTM to extend through Chrome 146

Responsibly deprecating unload is going to be a long process, we should expect this deprecation trial to be useful for an extended period...

--
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+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/67adcf52.2b0a0220.49add.333f.GAE%40google.com.
Reply all
Reply to author
Forward
0 new messages