Silent failures + console warnings/errors seem to address this, right?

On Fri, Oct 29, 2021 at 9:15 AM Thomas Steiner <to...@google.com> wrote:

> As a developer, I have run into a stupid typo in a filter's name making me
> pull my hair out for an hour until I realized it. Had there been a console
> warning or an error about the non-existent filter name, I would not be bald
> 🧑‍🦲 now.
>
> On Fri, Oct 29, 2021 at 7:24 AM Yoav Weiss <yoavwe...@chromium.org> wrote:
>
>> Hey Domenic! :)
>>
>> On Thu, Oct 28, 2021 at 11:00 PM Domenic Denicola <dome...@chromium.org>
>> wrote:
>>
>>>
>>>
>>> On Thu, Oct 28, 2021 at 3:48 PM 'Aaron Krajeski' via blink-dev <
>>> blink-dev@chromium.org> wrote:
>>>
>>>> yoavweiss@:
>>>>
>>>> Great video, thanks for that!!
>>>>
>>>>   Thanks!
>>>>
>>>> Were the concerns WebKit raised on the issue
>>>> <https://github.com/whatwg/html/issues/5618> addressed? Can you expand
>>>> on that front?
>>>>
>>>>   Yes, othermaciej@'s comments lead to us changing the name of that
>>>> function to `reset` instead of `clear`.
>>>>
>>>> Is the hold-up on the Filters PR editorial or something more
>>>> fundamental?
>>>>
>>>>   The hold-up is mostly over the question of whether `new
>>>> CanvasFilter({filter: "someNonExistantFilterType"})` should throw an error.
>>>> You can read the (very long) discussion in the pull request
>>>> <https://github.com/whatwg/html/pull/6763>. Unfortunately it's been
>>>> extremely hard to reach consensus on that specific issue for the past 3
>>>> months. Any comments from this group that would help drive us towards
>>>> consensus would be much appreciated!
>>>>
>>>
>>> FWIW the two HTML editors on the thread (myself and Anne, with our HTML
>>> editor hats on), as well as Mozilla (via Anne with his Mozilla hat on),
>>> prefer the throwing behavior. I think in most cases to overcome that
>>> position we would need some really strong reasons why the Chromium project
>>> believes the non-throwing behavior is better. It's not clear to me how
>>> strong Chromium's position is on this issue, and whether it's worth
>>> delaying the feature over. (Or indeed, delaying all the features, since the
>>> plan seems to be to bundle them together?)
>>>
>>
>> My concerns with the throwing behavior are similar to the ones we have
>> discussed
>> <https://github.com/w3c/mediasession/issues/228#issuecomment-886455386>
>> in the context of MediaSession actions.
>> If we go with the throwing behavior, every future addition of filters
>> would have a significant interop risk, in case adopting developers won't
>> use try/catch properly. If they do that and they are not testing in
>> not-yet-supporting browsers, their apps are likely to break entirely in
>> those browsers.
>> If we go with a silent failure + feature detection approach, developers
>> using the feature without properly detecting it may not have the desired
>> visual effects they are going for, but won't have unrelated parts of their
>> app break.
>>
>> From my perspective (with my API owner hat on), less risk is better, and
>> the second approach seems less risky to me.
>>
>>
>>>
>>>>
>>>> Are these features individually detectable? Do we have reasonable
>>>> developer advice on how we want folks to use those features with backwards
>>>> compat/fallbacks in mind?
>>>>
>>>>   We're working with the DevRel team on some polyfills that will be
>>>> included in a web.dev article that is launching. All the features are
>>>> trivially detectable except for perhaps contextlost/restored events. I can
>>>> look further into that if you'd like?
>>>>
>>>
>>> Those two are feature detectable using 'oncontextlost' in
>>> Document.prototype, happily enough.
>>>
>>>
>>>>   For polyfills, there are different degrees of
>>>> effectiveness/difficulty.
>>>>   Easy: roundRect (small perf hit), reset
>>>>   Hard, maybe we should just advertise a polyfill that avoids errors:
>>>> filters, conic gradient, text modifiers
>>>>   Doesn't make sense to polyfill: contextloss, willReadFrequently
>>>>
>>>> On Thursday, October 21, 2021 at 3:07:21 AM UTC-4 yoav...@chromium.org
>>>> wrote:
>>>>
>>>>> Thanks for modernizing Canvas! :)
>>>>>
>>>>> On Thu, Oct 14, 2021 at 11:06 PM Aaron Krajeski <aar...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> *Contact emails*aar...@chromium.org, fs...@chromium.org
>>>>>>
>>>>>> *Explainer*
>>>>>> https://github.com/fserb/canvas2d
>>>>>> https://youtu.be/dfOKFSDG7IM
>>>>>>
>>>>>
>>>>> Great video, thanks for that!!
>>>>>
>>>>>
>>>>>>
>>>>>> *Specification*
>>>>>> Context Lost Event
>>>>>> <https://html.spec.whatwg.org/multipage/indices.html#event-contextlost>
>>>>>> Context Restored Event
>>>>>> <https://html.spec.whatwg.org/multipage/indices.html#event-contextrestored>
>>>>>> Will Read Frequently
>>>>>> <https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently>
>>>>>> New Text Modifiers
>>>>>> <https://html.spec.whatwg.org/multipage/canvas.html#canvastextdrawingstyles>
>>>>>> Reset
>>>>>> <https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-reset>
>>>>>>
>>>>>
>>>>> Were the concerns WebKit raised on the issue
>>>>> <https://github.com/whatwg/html/issues/5618> addressed? Can you
>>>>> expand on that front?
>>>>>
>>>>>
>>>>>> RoundRect
>>>>>>
>>>>>> <https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-roundrect>Conic
>>>>>> Gradient
>>>>>>
>>>>>> <https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-createconicgradient>
>>>>>> Filters <https://github.com/whatwg/html/pull/6763> (still in
>>>>>> progress)
>>>>>>
>>>>>
>>>>> Is the hold-up on the Filters PR editorial or something more
>>>>> fundamental?
>>>>> I noticed Mozilla's opposition on their position. Is that something
>>>>> that has changed since?
>>>>>
>>>>> Are these features individually detectable? Do we have reasonable
>>>>> developer advice on how we want folks to use those features with backwards
>>>>> compat/fallbacks in mind?
>>>>>
>>>>>
>>>>>>
>>>>>> *Summary*
>>>>>> Updated functionality for the Canvas2D API. Adds seven new
>>>>>> features/functions to CanvasRenderingContext2D:
>>>>>>
>>>>>> - "ContextLost" and "ContextRestored" events
>>>>>> - "willReadFrequently" option for canvases where lots of readback is
>>>>>> expected
>>>>>> - More CSS text modifier support
>>>>>> - A reset function
>>>>>> - A roundRect draw primitive
>>>>>> - Conic gradients
>>>>>> - Better support for SVG filters
>>>>>>
>>>>>> https://github.com/fserb/canvas2d
>>>>>>
>>>>>> *Blink component*
>>>>>> Blink>Canvas
>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECanvas>
>>>>>>
>>>>>>
>>>>>> *TAG review status*Resolution: satisfied
>>>>>> <https://github.com/w3ctag/design-reviews/issues/627#issuecomment-838726027>
>>>>>>
>>>>>> *Risks*
>>>>>> Security and privacy team expressed concerns with ContextLost and
>>>>>> ContextRestored events during the intent to implement phase. These 
>>>>>> concerns
>>>>>> were addressed by re-designing the event to not launch simultaneously
>>>>>> across different contexts.
>>>>>>
>>>>>> *Interoperability and Compatibility*
>>>>>> Gecko: In development (https://github.com/whatwg/html/issues/5431
>>>>>> <https://www.chromestatus.com/admin/features/launch/6051647656558592/5?intent=1>)
>>>>>> Already implemented conic gradient. Okay with willReadFrequently,
>>>>>> transforms and reset.
>>>>>>
>>>>>> WebKit: Positive (https://github.com/whatwg/html/issues/5619).
>>>>>> Positive signal on text modifiers, round rect and color input.
>>>>>>
>>>>>> Web developers: Positive (https://www.youtube.com/watch?v=dfOKFSDG7IM)
>>>>>> CDN talk in December was received very positively.
>>>>>>
>>>>>> *Signals*
>>>>>> Gecko: https://github.com/mozilla/standards-positions/issues/519
>>>>>> WebKit:
>>>>>> https://lists.webkit.org/pipermail/webkit-dev/2021-May/031833.html
>>>>>>
>>>>>> *Is this feature fully tested by* web-platform-tests
>>>>>> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
>>>>>> ?
>>>>>> Yes
>>>>>>
>>>>>> *Flag name*
>>>>>> #new-canvas-2d-api
>>>>>>
>>>>>> *Requires code in //chrome?*
>>>>>> False
>>>>>>
>>>>>> *Tracking bug*
>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1201359
>>>>>>
>>>>>> *Estimated milestones*
>>>>>> OriginTrial desktop first
>>>>>> 95
>>>>>>
>>>>>> OriginTrial desktop last
>>>>>> 98
>>>>>>
>>>>>> OriginTrial android first
>>>>>> 95
>>>>>>
>>>>>> OriginTrial android last
>>>>>> 98
>>>>>>
>>>>>> *Link to entry on the Chrome Platform Status*
>>>>>> https://www.chromestatus.com/feature/6051647656558592
>>>>>>
>>>>>> This intent message was generated by Chrome Platform Status
>>>>>> <https://www.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+...@chromium.org.
>>>>>>
>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/eb702e7e-88d6-4b6f-b419-6051511689f1n%40chromium.org
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/eb702e7e-88d6-4b6f-b419-6051511689f1n%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/ad052b76-cd02-475a-82a2-f010ecb92075n%40chromium.org
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/ad052b76-cd02-475a-82a2-f010ecb92075n%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/CAL5BFfVe%3DWB7vT%2BmM3oS%3DJg_nJj7Xu8MGt9eqHqQjkno9Xv1Aw%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfVe%3DWB7vT%2BmM3oS%3DJg_nJj7Xu8MGt9eqHqQjkno9Xv1Aw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>
>
> --
> Thomas Steiner, PhD—Developer Advocate (https://blog.tomayac.com,
> https://twitter.com/tomayac)
>
> Google Germany GmbH, ABC-Str. 19, 20354 Hamburg, Germany
> Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
> Registergericht und -nummer: Hamburg, HRB 86891
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.3.2 (GNU/Linux)
>
>
> iFy0uwAntT0bE3xtRa5AfeCheCkthAtTh3reSabiGbl0ck0fjumBl3DCharaCTersAttH3b0ttom.
> hTtPs://xKcd.cOm/1181/
> -----END PGP SIGNATURE-----
>

-- 
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/CAL5BFfUUOdo6nEP6qT6gMcKycNzywChbOEm5xW19RXSLebgDRg%40mail.gmail.com.

Reply via email to