The "less than 0.001%" number is not a fraction of page loads, but of URL patterns created -- so it's a minuscule fraction *of pages that are using URLPattern at all* (which itself is 0.11%); if you look up Blink.URLPattern.IncompatiblePatternWithUnicodeSetsMode in UMA you'll see the raw data, but it truly is essentially zero samples.
Most of the characters that would be invalid without escaping aren't as common in URLs without percent encoding, the major exception being -, because something like /[-a-z]/u works but /[-a-z]/v doesn't and the author must write /[\-a-z]/v. (I'll leave it to Shunya to comment on the pros/cons of waiting for stable data.) On Wed, Nov 15, 2023 at 11:04 AM Mike Taylor <[email protected]> wrote: > This feels like something that has the potential to be rather thorny... I > would expect 0.001% on Beta to be higher on Stable. > > Given that your UMA > <https://chromiumdash.appspot.com/commit/155a6cac4aab72685cfcc39029739394243ed1ef> > landed in M120, could we wait a few weeks to look at the stable data, then > come back with an Intent to Ship? This seems slightly riskier for a page > than > https://groups.google.com/a/chromium.org/g/blink-dev/c/gIyvMw0n2qw/m/-WZC9C4VCQAJ > (which had server-side validation as a fallback). > On 11/15/23 3:16 AM, Shunya Shishido wrote: > > Contact emails [email protected] > > Specification https://urlpattern.spec.whatwg.org > > Summary > > The URL Pattern API allows developers to specify pattern strings. Those > are transformed to regular expressions internally. When the API was first > implemented, these regular expressions were compiled with the u flag. We're > going to update it to the v flag, enabling Unicode sets > <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/unicodeSets> > . > > > Blink component Blink>URLPattern > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EURLPattern> > > TAG review None > > TAG review status Not applicable > > Risks > > > Interoperability and Compatibility > > > https://github.com/tc39/proposal-regexp-v-flag#how-is-the-v-flag-different-from-the-u-flag > This doc has a list the potentially breaking changes between u and v. Some > patterns that previously would compile, now throw an error with the v flag, > specifically those with a character class including either an unescaped > special character or a double punctuator. I believe it does not > significantly affect the patterns in use today. From UMA metric on Beta, > incompatible patterns are less than 0.001% of the total compilation. Also, > the use counter of the API itself has only 0.11%. The expected impact is > extremely limited. > > > *Gecko*: No signal > > *WebKit*: No signal > > *Web developers*: No signals > > *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 > > > Debuggability > > None > > > Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, Chrome OS, Android, and Android WebView)? No > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> > ? Yes > > https://wpt.fyi/results/urlpattern/urlpattern.any.html Tests for set > notations were added in > https://github.com/web-platform-tests/wpt/pull/43014 > > > Flag name on chrome://flags > > Finch feature name URLPatternRegexpUnicodeSetsMode > > Requires code in //chrome? False > > Tracking bug https://bugs.chromium.org/p/chromium/issues/detail?id=1482263 > > Estimated milestones > Shipping on desktop 121 > Shipping on Android 121 > > 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/5122651463090176 > > 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 [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGMyg-ZAnsDEw1haRd1HOuYcieHOYKZ73oYAQ3SfWv9umsd-TA%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGMyg-ZAnsDEw1haRd1HOuYcieHOYKZ73oYAQ3SfWv9umsd-TA%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 [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c16d70b8-298a-4dc7-80cf-1c1c2ae5c8ab%40chromium.org > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c16d70b8-298a-4dc7-80cf-1c1c2ae5c8ab%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 [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACuR13dmf24dUyCLR-%2BJLmbTaH2f%3Dg0LcC%3Dwe2h45Xzd8SiVdQ%40mail.gmail.com.
