I agree that this is probably too risky right now. Are you willing to 
modify the plan you posted to gate #4 on a UKM analysis and/or driving use 
below a negotiated threshold, Chris?

Thanks,

Alex

On Thursday, April 20, 2023 at 11:15:32 AM UTC-7 Chris Harrelson wrote:

> Comments below, but here is a concrete shipping plan proposal:
>
> 1. Blog post describing what is happening, why, and how to fix your code.
> 2. Start a deprecation for 3 milestones (M114-116), with a devtools 
> console warning. Notify enterprises and webview clients of the deprecation.
> 3. In parallel with #2: turn it off now via finch for canary/dev, then 
> later beta, to see if we get bug reports.
> 4. Assuming no bug reports that raise new concerns, ship the change in 
> M117.
>
> On Thu, Apr 20, 2023 at 9:01 AM Rick Byers <rby...@chromium.org> wrote:
>
>> On Wed, Apr 19, 2023 at 6:53 PM Chris Harrelson <chris...@chromium.org> 
>> wrote:
>>
>>> Mike said: *"It would also be good to go through all duplicates and 
>>> "See Also" bugs linked at 
>>> https://bugzilla.mozilla.org/show_bug.cgi?id=390936 
>>> <https://bugzilla.mozilla.org/show_bug.cgi?id=390936> and see how we fare 
>>> with a build that has zoom disabled."*
>>>
>>> Good idea. I checked all 37 of the sites referenced from that issue. I 
>>> found only 3 that were even somewhat broken, and only 2 where there was 
>>> something substantial (an "8-ball" image that was too big, and a facebook 
>>> login that was cut off at some viewport sizes). Most sites didn't have any 
>>> zoom at all.
>>>
>>> I also updated the "use cases" section with more use cases found by 
>>> reviewing the sites.
>>>
>>> Yoav said:* "Is it possible to also expose the usecounter as UKM, and 
>>> see the usage distribution? Given the high usage percentage, it can be 
>>> reassuring to see that a) No large sites get broken by this b) Long tail 
>>> sampling from UKM matches what y'all saw in HA"*
>>>
>>> It's possible. Based on the data I've provided (including response to 
>>> Mike above), do you think it's needed?
>>>
>>> On Mon, Apr 17, 2023 at 2:39 PM Rick Byers <rby...@chromium.org> wrote:
>>>
>>>>
>>>> First, you'll have a flag so we can kill-switch it if we see any 
>>>> non-trivial breakage in practice, right?
>>>>
>>>
>>> Already in place. CSSZoom is a base::Feature in addition to a 
>>> RuntimeEnabledFeature.
>>>  
>>>
>>>> WebView seems particularly risky, perhaps we should separate that out 
>>>> and leave it enabled on WebView at least to start?
>>>>
>>>
>>> I'm willing to do that as a first step.
>>>  
>>>
>>>> What about enterprise, likely to be higher risk / needing a mitigation 
>>>> strategy?
>>>>
>>>
>>> I'll add an enterprise flag for it, and ask for this change to be 
>>> highlighted in enterprise release notes. WDYT, good enough?
>>>
>>
>> Works for me. 
>>
>> From the HA analysis, were you able to get any upper bound on the 
>>>> fraction of sites with significant (i.e. usability impacting) breakage? 
>>>> Eg. 
>>>> can we spot check 100 pages that hit the counter to see if any look really 
>>>> broken? Alternately the UKM analysis Yoav suggests could help. I've been 
>>>> planning on figuring out how to do a UKM usage distribution analysis - 
>>>> this 
>>>> might make a good candidate. 
>>>>
>>>
>>> I spot checked 62 sites from HTTPArchive and from the Mozilla bug. In my 
>>> view, none were terribly broken, and almost all were unaffected or had 
>>> trivial changes. According to foolip's methodology 
>>> <https://sample-size.net/confidence-interval-proportion/> with N=62 and 
>>> x=0, that means that we've reduced the risk from the use counter of 0.5% to 
>>> 0.028%.
>>>
>>> To get to 0.001% I'd need a lot more N, technically speaking.
>>>
>>> However, in basically all of the cases zoom was applied either to very 
>>> few elements or to the body; in the latter the site still renders fine 
>>> (because browser zoom uses the same technique), and for the others it's at 
>>> best cosmetic in almost all cases.
>>>
>>
>> That's great to hear. Given the usage is pretty high and there's at least 
>> some uncertainty among developers with how to replace their use of zoom 
>> (Christoph's note), WDYT about doing a blog post warning about the removal 
>> of zoom and showing how to replace it with transforms?
>>
>
> Sure, I can do that. Note that some sites already put -moz-transform and 
> zoom in their style sheet, so there is evidence that transform works ok for 
> some use cases.
>  
>
>>
>> Also, should we consider a deprecation period with deprecation warnings 
>> in the console and available to the reporting API? Or is that likely to be 
>> so noisy with most cases being false positives that it would be net harmful 
>> do you think?
>>
>
> A deprecation period makes sense. (Note that Firefox already has warnings 
> in their devtools not to use this feature.)
>  
>
>>
>>> On Mon, Apr 17, 2023 at 4:55 PM Morten Stenshorne <msten...@chromium.org> 
>>>> wrote:
>>>>
>>>>> Chris Harrelson <chris...@chromium.org> writes:
>>>>>
>>>>> > On Sun, Apr 16, 2023 at 11:45 PM Morten Stenshorne <
>>>>> msten...@chromium.org> wrote:
>>>>> >
>>>>> >  Chris Harrelson <chris...@chromium.org> writes:
>>>>> >
>>>>> >  > On Fri, Apr 14, 2023 at 5:09 PM PhistucK <phist...@gmail.com> 
>>>>> wrote:
>>>>> >  >
>>>>> >  >  Any alternatives? I thought there was a section in the intent 
>>>>> templates for that...
>>>>> >  >
>>>>> >  > One alternative for the use case mentioned in my earlier email is 
>>>>> to
>>>>> >  > apply a CSS transform instead. This will magnify the subtree 
>>>>> visually
>>>>> >  > but not cause a zoom-style layout change.
>>>>> >
>>>>> >  The fact that a CSS transform doesn't affect layout, whereas 'zoom'
>>>>> >  does, means that we'll paginate (fragment) properly with 'zoom', 
>>>>> but not
>>>>> >  with transforms, since they are applied after fragmentation [1], 
>>>>> causing
>>>>> >  content to be sliced across fragmentainer boundaries, and the actual
>>>>> >  page/column breaks (as far as layout is concerned) are shifted away 
>>>>> from
>>>>> >  the fragmentainer edges visually, and will appear in the middle of a
>>>>> >  page/column, for instance.
>>>>> >
>>>>> >  [1] https://www.w3.org/TR/css-break-3/#transforms (never mind the
>>>>> >  example there; it's not too relevant for this discussion, but I can
>>>>> >  provide one if you want)
>>>>> >
>>>>> > Agreed that this is a difference. If a developer wants the result to
>>>>> > flow through fragmentation, they'll have to use the second 
>>>>> alternative
>>>>> > I suggested.
>>>>> >
>>>>> > But in terms of web compat, I don't think this situation is anything
>>>>> > to worry about (e.g. I didn't see any fragmentation when reviewing 25
>>>>> > random sites linked to from chromestatus.com).
>>>>>
>>>>> But as soon as someone prints any of those sites, there'll be
>>>>> fragmentation.
>>>>>
>>>>> That said, I couldn't find anything bad on those sites, either. I was
>>>>> thinking that if it's actually okay to replace zoom with a scale
>>>>> transform, we really need authors to make such elements monolithic
>>>>> (because any break point inserted inside a transformed element will 
>>>>> more
>>>>> likely than not end up in the middle of some page, rather than at an
>>>>> actual page boundary). So I changed the engine locally to treat zoom !=
>>>>> 1 as monolithic. But that didn't make any of sites that I tried look 
>>>>> any
>>>>> worse.
>>>>>
>>>>> >  > Another alternative is for the developer to multiply the numbers 
>>>>> in
>>>>> >  > their CSS properties via calc + variables.
>>>>> >
>>>>> >  That alternative should always work, but more cumbersome for the
>>>>> >  authors, I suppose?
>>>>> >
>>>>> > Yes, a bit more cumbersome, but interoperable across all browser 
>>>>> engines.
>>>>> >  
>>>>> >  
>>>>> >  >  On Sat, Apr 15, 2023 at 1:03 AM Chris Harrelson <
>>>>> chris...@chromium.org> wrote:
>>>>> >  >
>>>>> >  >  Contact emails
>>>>> >  >
>>>>> >  >  chris...@chromium.org
>>>>> >  >
>>>>> >  >  Specification
>>>>> >  >
>>>>> >  >  https://developer.mozilla.org/en-US/docs/Web/CSS/zoom
>>>>> >  >
>>>>> >  >  Summary
>>>>> >  >
>>>>> >  >  Removes support for the non-standard "zoom" CSS property. This 
>>>>> CSS property causes computed lengths for an element to be multiplied by
>>>>> >  >  the specified zoom factor. 
>>>>> >  >
>>>>> >  >  Blink component
>>>>> >  >
>>>>> >  >  Blink>CSS
>>>>> >  >
>>>>> >  >  TAG review
>>>>> >  >
>>>>> >  >  None
>>>>> >  >
>>>>> >  >  TAG review status
>>>>> >  >
>>>>> >  >  Not applicable
>>>>> >  >
>>>>> >  >  Risks
>>>>> >  >
>>>>> >  >  Interoperability and Compatibility
>>>>> >  >
>>>>> >  >  This feature is only available in Webkit and Blink-based 
>>>>> browsers, and has been present in Chrome since the beginning. Usage is a 
>>>>> little above
>>>>> >  >  0.5% of page loads: 
>>>>> https://chromestatus.com/metrics/feature/timeline/popularity/3578 
>>>>> However, research shows that sites in HTTPArchive
>>>>> >  >  triggering the feature mostly don't even seem to use it, and 
>>>>> those that do appear to always use it in a way that works fine without 
>>>>> zoom 
>>>>> applied
>>>>> >  >  - worst case, just a very minor change to the size of a tiny 
>>>>> number of UI elements, but the UX is basically the same. See:
>>>>> >  >  
>>>>> https://docs.google.com/document/d/1cmbXpjAcXAht2ufi7bNKy-rbVNveqaf0UzeYg_DIMNA/edit#
>>>>> >  >
>>>>> >  >  Gecko: Shipped/Shipping (Firefox never supported the feature.)
>>>>> >  >
>>>>> >  >  WebKit: No signal (
>>>>> https://github.com/WebKit/standards-positions/issues/170)
>>>>> >  >
>>>>> >  >  Web developers: Some web developers like the feature, in 
>>>>> particular for the use case of zooming in content in a legible way with 
>>>>> responsive
>>>>> >  >  design. See comments regarding that in this issue; 
>>>>> https://github.com/w3c/csswg-drafts/issues/5623
>>>>> >  >
>>>>> >  >  Other signals: The CSSWG has decided to not specify this 
>>>>> feature: https://github.com/w3c/csswg-drafts/issues/5623
>>>>> >  >
>>>>> >  >  Ergonomics
>>>>> >  >
>>>>> >  >  See "other views" section.
>>>>> >  >
>>>>> >  >  Activation
>>>>> >  >
>>>>> >  >  N/A
>>>>> >  >
>>>>> >  >  Security
>>>>> >  >
>>>>> >  >  None
>>>>> >  >
>>>>> >  >  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?
>>>>> >  >
>>>>> >  >  Maybe. WebView-based apps might use this feature.
>>>>> >  >
>>>>> >  >  Debuggability
>>>>> >  >
>>>>> >  >  Sites should be able to see that zoom no longer applies to 
>>>>> elements in devtools, though there is no warning planned.
>>>>> >  >
>>>>> >  >  Will this feature be supported on all six Blink platforms 
>>>>> (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
>>>>> >  >
>>>>> >  >  Yes
>>>>> >  >
>>>>> >  >  Is this feature fully tested by web-platform-tests?
>>>>> >  >
>>>>> >  >  No
>>>>> >  >
>>>>> >  >  Flag name
>>>>> >  >
>>>>> >  >  CSSZoom
>>>>> >  >
>>>>> >  >  Requires code in //chrome?
>>>>> >  >
>>>>> >  >  False
>>>>> >  >
>>>>> >  >  Sample links
>>>>> >  >
>>>>> >  >  https://output.jsbin.com/yimuwax
>>>>> >  >
>>>>> >  >  Estimated milestones
>>>>> >  >
>>>>> >  >   Shipping on desktop  114  
>>>>> >  >   DevTrial on desktop  114  
>>>>> >  >
>>>>> >  >   Shipping on Android  114  
>>>>> >  >   DevTrial on Android  114  
>>>>> >  >
>>>>> >  >   Shipping on WebView  114  
>>>>> >  >
>>>>> >  >  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/6535859207143424
>>>>> >  >
>>>>> >  >  Links to previous Intent discussions
>>>>> >  >
>>>>> >  >  This intent message was generated by Chrome Platform Status.
>>>>> >  >
>>>>> >  >  -- 
>>>>> >  >  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_2izF%2BTzHvALsKSxD_uLds%2BPAD7fLtvpX4Cwe7sTwU7g%40mail.gmail.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/CABc02_%2Br8k-q-bKWGFKxgNbSy97UKGf7VUSMnrnURBJHor-x_w%40mail.gmail.com
>>>>> .
>>>>> >  
>>>>> >
>>>>> >  -- 
>>>>> >  Morten Stenshorne, Software developer,
>>>>> >  Blink/Layout, Google, Oslo, Norway
>>>>> >
>>>>> >  -- 
>>>>> >  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/87pm83knwv.fsf%40bud.servebeer.com
>>>>> .
>>>>> >
>>>>>
>>>>> -- 
>>>>> Morten Stenshorne, Software developer,
>>>>> Blink/Layout, Google, Oslo, Norway
>>>>>
>>>>> -- 
>>>>> 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/87leiqkz3o.fsf%40bud.servebeer.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/CAFUtAY-XO6eyfHLNFJGf2RNL%3D8-4i2%3DoNCjK6X5MfB9ZCOaUfw%40mail.gmail.com
>>>>  
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-XO6eyfHLNFJGf2RNL%3D8-4i2%3DoNCjK6X5MfB9ZCOaUfw%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/CAFUtAY8khSiw2o7dZ5S6qUjQsmdJ6XUb49q_a5NH1Pn7%2BmyA%3Dw%40mail.gmail.com
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8khSiw2o7dZ5S6qUjQsmdJ6XUb49q_a5NH1Pn7%2BmyA%3Dw%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/4c24d7fe-7e68-4b8f-b16c-814d68667ac2n%40chromium.org.

Reply via email to