On Mon, Nov 29, 2021 at 1:40 PM Mason Freed <mas...@chromium.org> wrote:

> Contact emailsmas...@chromium.org
>
> Explainer
> https://developers.google.com/web/updates/2019/02/constructable-stylesheets
>
> Specification
> https://www.w3.org/TR/cssom-1/#extensions-to-the-document-or-shadow-root-interface
>
> Summary
>
> The prior specification for adoptedStyleSheets used a FrozenArray backing
> array. The spec was recently changed, so that the backing array is an
> ObservableArray. This makes the API easier to use and understand, since it
> is a true mutable JS array object. For example, normal array operations
> such as adoptedStyleSheets.push(sheet) can be used.
>
>
> Blink componentBlink
> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink>
>
> Search tagsadoptedStyleSheets
> <https://chromestatus.com/features#tags:adoptedStyleSheets>,
> ObservableArray <https://chromestatus.com/features#tags:ObservableArray>
>
> TAG review
>
> TAG review statusNot applicable
>

Was ObservableArray and its use in the web platform reviewed by the TAG? If
not then I think it should be, as there are plans to use it in more places
than just this.


>
>
> Risks
>
>
> Interoperability and Compatibility
>
> Chromium is the only shipped implementation of adoptedStyleSheets. Gecko
> would like to ship this feature, but has been waiting for the resolution of
> this issue (FrozenArray vs. ObservableArray) to ship their implementation.
> This should unblock Gecko [1]. The Edge team supports this change [2].
> WebKit continues to be skeptical [3] of this usefulness of this feature,
> despite the general agreement of the rest of the web components community
> [4], and the support of the developer community [5][6][7]. So the interop
> risk is mainly that WebKit decides not to implement this feature. Compat
> risks (from the change from FrozenArray to ObservableArray) should be
> minimal, as the same re-assignment semantics will continue to work. As
> documentation improves, and usage expands, we expect re-assignment usage to
> wane, and mutation (e.g. adoptedStyleSheets.push()) to expand. [1]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-834749590
> [2] https://github.com/whatwg/webidl/issues/1027#issuecomment-940204556
> [3]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-826036758
> [4]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-825055766
> [5]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-577941622
> [6]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-827229881
> [7]
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-827234689
>

I appreciate your extensive efforts to achieve consensus and a good design.
The result is in a spec and has broad consensus, which is great!

Gecko: Positive (
> https://github.com/whatwg/webidl/issues/1027#issuecomment-940204556)
>
> WebKit: Negative (
> https://github.com/WICG/construct-stylesheets/issues/45#issuecomment-826036758
> )
>

While those two links are not signals, I think it's:

* OK to not ask for a formal Gecko signal on this, if you can point to
clear evidence they are implementing. Can you provide a link?

* OK to not ask for a formal webkit signal, given their negative signal on
the public issues. Another one would be redundant and likely yield the same
(negative) result.

Web developers: Strongly positive Several large web component developers
> are strongly positive on this feature and change. See several links in the
> "Interoperability and Compatibility Risks" section.
>
> Other signals:
>
>
> Debuggability
>
> This feature should remain debuggable via existing JS/devtools
> infrastructure. There is good support for adoptedStyleSheets already in
> devtools.
>
>
> Is this feature fully tested by web-platform-tests
> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
> ?Yes
>
> Flag nameBecause few compat risks are anticipated, and because it is
> relatively difficult to switch the representation (FrozenArray to
> ObservableArray) via a feature flag, this feature will be enabled by
> default. This will be done at the start of a new Chromium milestone (M99),
> and bugs will be monitored carefully in case any breakages are observed.
>
> Requires code in //chrome?False
>
> Tracking bughttps://crbug.com/1236777
>
> Estimated milestones
>
> No milestones specified
>
>
> Link to entry on the Chrome Platform Status
> https://chromestatus.com/feature/5638996492288000
>
> 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+unsubscr...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDijQpNhJJJUjtCzLSDrPngTHYY31H4oJrULxm%3DtxLVHew%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDijQpNhJJJUjtCzLSDrPngTHYY31H4oJrULxm%3DtxLVHew%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/CAOMQ%2Bw8n_BnPcHDGsaO6RBPHg3Bg3w5_5QLzjUjB8dC-LUwSVA%40mail.gmail.com.

Reply via email to