Intent to Experiment: Select parser relaxation

131 views
Skip to first unread message

Mason Freed

unread,
Feb 6, 2025, 10:32:55 PMFeb 6
to blink-dev

{Highlighting this since it isn't obvious from this intent: this is a deprecation trial for sites that might be broken by the select parser relaxation, and would like extra time to migrate to the new behavior. The OT will restore the *old* behavior, while the feature launches in M134 and changes Chrome to the *new* behavior. }


Contact emails

jar...@chromium.orgmas...@chromium.org

Explainer

https://open-ui.org/components/customizableselect

Specification

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

Summary

This change makes the HTML parser allow additional tags in <select> besides <option>, <optgroup>, and <hr>. This change is in support of the customizable <select> feature but is being shipped first because it can be done separately and has some compat risk which I'd like to get feedback on. This feature is gated by the temporary policy (SelectParserRelaxationEnabled). This is a temporary transition period, and the policy will stop working on milestone M141. Customizable select explainer: https://open-ui.org/components/customizableselect/ I did a compat analysis and determined that the vast majority of sites which would see the effects of the parser changes would not have their behavior changed. More details here: https://github.com/whatwg/html/issues/10310 If there are major issues with this change, I will reassess and make adjustments to the parser as needed.



Blink component

Blink>HTML>Parser

TAG review

https://github.com/w3ctag/design-reviews/issues/1007

TAG review status

Pending

Risks



Interoperability and Compatibility

I believe there is low interop risk because other vendors are reviewing the proposal in WHATWG and are not objected to changing the parser behavior here. There is a compat risk if websites are relying on the old parser behavior. As I mentioned in the main description, I have done an analysis and based on the websites I have investigated I believe there is low risk. If we encounter issues then I will adjust the parser as needed.



Gecko: Positive (https://github.com/mozilla/standards-positions/issues/1086) Positive of experimenting: https://github.com/whatwg/html/issues/10310#issuecomment-2189178702

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

Web developers: No signals (https://github.com/mozilla/standards-positions/issues/1086)

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



Goals for experimentation



Ongoing technical constraints

While the OT is going, the old parser behavior will need to be maintained. This isn't a significant maintenance burden.



Debuggability

None



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?

Yes

Flag name on about://flags

SelectParserRelaxation

Finch feature name

SelectParserRelaxation

Requires code in //chrome?

False

Tracking bug

https://crbug.com/335456114

Estimated milestones

Shipping on desktop134
Origin trial desktop first134
Origin trial desktop last140
DevTrial on desktop128
Shipping on Android134
Origin trial Android first134
Origin trial Android last140
DevTrial on Android128
Shipping on WebView134
Origin trial WebView first134
Origin trial WebView last140


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5145948356083712?gate=5084392347926528

Links to previous Intent discussions

Intent to Ship: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK6btw%2B2u4-MY3c2x5uci_dOJWw8UdDNGfr_BiSfNESQwmPh5w%40mail.gmail.com


This intent message was generated by Chrome Platform Status.

Mike Taylor

unread,
Feb 7, 2025, 1:05:48 AMFeb 7
to Mason Freed, blink-dev

LGTM

--
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/CAM%3DNeDj4P68z1A1Kq8-Wk2vu_Nu0jidG4ZwN3SHigxAug80%3Dqw%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages