Skip to content

[css-2025] Add specs to Rough Interoperability #9793

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
SebastianZ opened this issue Jan 14, 2024 · 12 comments
Open

[css-2025] Add specs to Rough Interoperability #9793

SebastianZ opened this issue Jan 14, 2024 · 12 comments
Labels
css-2025 The new, improved CSS snapshot

Comments

@SebastianZ
Copy link
Contributor

SebastianZ commented Jan 14, 2024

There are a bunch of specifications which might be added to the Rough Interoperability section.

CSS Nesting 1

Current status: WD (last published: 14 February 2023)
WPT: passing tests: Chrome: 88, Edge: 88, Firefox: 89, Safari: 85; interop: 84 / 89 (94.4%)
Current Snapshot section: -
Open issues: on GitHub: 23, in spec.: 2

Notes: Very high interoperability, part of interop 2024

CSS Scroll Anchoring 1

Current status: WD (last published: 11 November 2020)
WPT: passing tests (experimental): Chrome: 79, Edge: 81, Firefox: 78, Safari: 22; interop: 22 / 84 (26.2%), 76 / 84 (90.5%) for Chrome, Edge and Firefox
Current Snapshot section: -
Open issues: on GitHub: 17, in spec.: 0

Notes: high interoperability between two engines, implementations agree on main use cases

CSS Tables 3

Current status: WD (last published: 27 July 2019)
WPT: passing tests: Chrome: 982, Edge: 982, Firefox: 916, Safari: 802; interop: 740 / 1028 (72.0%)
Current Snapshot section: -
Open issues: on GitHub: 59, in spec.: 10

Notes: relatively high interoperability, though many open issues

CSS Color 5

Current status: WD (last published: 29 February 2024)
WPT: passing tests: Chrome: 9217 , Edge: 9210, Firefox: 9237, Safari: 8452 ; interop: 8412 / 8412 (100%)
Current Snapshot section: -
Open issues: on GitHub: 30, in spec.: 0

Notes: interoperability is good. Both CSS Color 5 Relative Colors and CSS Color 5 color-mix(), were cleared-to-ship pre-CR in CSS 2023. Relative Colors are part of Interop 2024. color-mix() was part of Interop 2023 in the Color Spaces and Functions focus area.

CSSOM 1

Current status: WD (last published: 26 August 2021)
WPT: passing tests: Chrome: 3745, Edge: 3745, Firefox: 3735, Safari: 3571; interop: 3511 / 3873 (90.7%)
Current Snapshot section: -
Open issues: on GitHub: 128, in spec.: 19

Notes: high interoperability, though many open issues

CSSOM View 1

Current status: WD (last published: 17 March 2016)
WPT: passing tests: Chrome: 1119, Edge: 1047, Firefox: 1140, Safari: 1064; interop: 949 / 1287 (73.7%)
Current Snapshot section: -
Open issues: on GitHub: 143, in spec.: 7

Notes: high interoperability, though many open issues

Media Queries 5

Current status: WD (last published: 18 December 2021)
WPT: passing tests: Chrome: 93, Edge: 93, Firefox: 89, Safari: 90; interop: 86 / 97 (88.7%)
Current Snapshot section: -
Open issues: on GitHub: 72, in spec.: 8

Notes: high interoperability, though many open issues, looks like WPTs for some features are missing, but some important ones are there. Though as not all features are supported by browsers, maybe only the interoperable ones should be added to Safe to Release pre-CR Exceptions.

Selectors 4

Current status: WD (last published: 11 November 2022)
WPT: passing tests (all tests, not sure how to restrict to level 4): Chrome: 4807, Edge: 4800, Firefox: 5466, Safari: 4807; interop: 4737 / 5506 (86.0%)
Current Snapshot section: features :dir(), :lang(), and :focus-within in Safe to Release pre-CR Exceptions
Open issues: on GitHub: 105, in spec.: 11

Notes: high interoperability, though many open issues, looks like WPTs for some features are missing, but some important ones are there. Though as not all features are supported by browsers, maybe only the interoperable ones should be added to Safe to Release pre-CR Exceptions.


Note that this issue only covers specs that should move to the Rough Interoperability section. #9770 covers the ones that should move to the Official Definition. And I'll go through all the other specs and create separate issues for the others sections if needed.

Sebastian

@SebastianZ
Copy link
Contributor Author

SebastianZ commented Aug 3, 2024

I've updated the statistics for all the specs listed.

As time is passing quickly, let's add this to the agenda.

I think definite candidates for the rough interoperability are:

  • CSS Nesting 1
  • CSS Scoping 1
  • CSS Scroll Anchoring 1
  • CSS Shadow Parts 1 (though would profit from more WPTs)
  • CSSOM 1

The others listed above need more debate. (See the notes I've added.)

Sebastian

@svgeesus
Copy link
Contributor

svgeesus commented Aug 3, 2024

@SebastianZ to keep things together, is it okay for me to edit your first comment to add other specs?

@SebastianZ
Copy link
Contributor Author

@svgeesus Yes, of course!

@svgeesus
Copy link
Contributor

svgeesus commented Aug 3, 2024

Thanks! I added CSS Color 5 which is still a WD, but major parts are cleared for pre-CR, and also formed part of Interop 2023 and 2024. However, we have other specs in the rough interop area that are also WD.

@SelenIT
Copy link
Collaborator

SelenIT commented Aug 4, 2024

Speaking of Selectors, maybe at least :not() with a selector list can be Safe to Release pre-CR Exception too?

@SebastianZ
Copy link
Contributor Author

I am currently working on a separate "Safe to Release pre-CR Exception" issue, in which such exceptions will be listed.

Though I wonder whether explicitly listing :not() with a selector list there brings additional benefit if Selectors 4 already gets listed under "Rough Interoperability".
I mean, yes, that indicates that the working group ensures that the specification of the feature is stable enough to be released, though rough interoperability between engines also indicates that.

Sebastian

@SebastianZ
Copy link
Contributor Author

SebastianZ commented Sep 3, 2024

I was just wondering if Houdini specs should also be considered. At least regarding CSS Typed OM, we Chromium and WebKit have more than 90% interoperability.

Sebastian

@astearns astearns moved this to TPAC/FTF agenda items in CSSWG Agenda TPAC 2024 Sep 13, 2024
@astearns astearns moved this from TPAC/FTF agenda items to Regular agenda items in CSSWG Agenda TPAC 2024 Sep 13, 2024
@svgeesus
Copy link
Contributor

I see

CSS Scoping 1 -> CSS Shadow
CSS Shadow Parts 1 -> CSS Shadow

However there isn't even an ED of CSS Shadow, far less a FPWD. So it seems premature to list these specs, last published in 2014 and 2018, under the new title until the work has been done to produce the spec itself.

@fantasai
Copy link
Collaborator

The "rough interop" section is for specs that are a mess, but where we have significant shipping interop in implementations. So Values 4 doesn't belong here.

@svgeesus
Copy link
Contributor

svgeesus commented Dec 4, 2024

Removed from initial post:

CSS Values 4

Current status: WD (last published: 12 March 2024)
WPT: passing tests: Chrome: 4367, Edge: 4410, Firefox: 4717, Safari: 4693; interop: 4147 / 8197 (50.6%)
Current Snapshot section: -
Open issues: on GitHub: 25, in spec.: 3

Notes: interoperability decreased a lot (from over 70%) due to introduction of calc-size(), though engines are working on its implementation

CSS Scoping 1 -> CSS Shadow

Current status: WD (last published: 3 April 2014)
WPT: passing tests: Chrome: 188, Edge: 181, Firefox: 188, Safari: 187; interop: 168 / 203 (82.8%)
Current Snapshot section: -
Open issues: on GitHub: 24, in spec.: 4

Notes: high interoperability

CSS Shadow Parts 1 -> CSS Shadow

Current status: WD (last published: 15 November 2018)
WPT: passing tests: Chrome: 63, Edge: 63, Firefox: 65, Safari: 64; interop: 63 / 66 (95.5%)
Current Snapshot section: -
Open issues: on GitHub: 32, in spec.: 1

Notes: very high interoperability, though only few tests

@svgeesus
Copy link
Contributor

svgeesus commented Dec 4, 2024

I think definite candidates for the rough interoperability are:

* CSS Nesting 1
* CSS Scoping 1
* CSS Scroll Anchoring 1
* CSS Shadow Parts 1 (though would profit from more WPTs)
* CSSOM 1

So that would be

  • CSS Nesting 1
  • CSS Scroll Anchoring 1
  • CSSOM 1
    and
  • CSS Color 5

@css-meeting-bot
Copy link
Member

The CSS Working Group just discussed [css-2024] Add specs to Rough Interoperability, and agreed to the following:

  • RESOLVED: Add Scroll Anchoring 1, CSSOm 1, and Color 5 to Rough Interop; add Nesting once it's republished.
  • RESOLVED: Add Selectors 4 to Rough Interop
The full IRC log of that discussion <ChrisL> q+
<fantasai> SebastianZ: I posted all the data I could collect in 1st comment
<astearns> ack ChrisL
<fantasai> ChrisL: I'm broadly agreeing, but 2 things that have become CSS Shadow have not been published in a long time and can't be referenced
<fantasai> ChrisL: I do suggest adding Color 5. So much of it has been cleared to ship
<TabAtkins> scribe+
<TabAtkins> fantasai: Nesting hasn't been published in like 2 years
<TabAtkins> fantasai: I think it shouldb ein rough interop, but it needs to be updated on TR
<TabAtkins> fantasai: otherwise id' be fine with adding it
<TabAtkins> fantasai: so i'd be fine if it was updated, but not until it is
<fantasai> astearns: So stripped down is add CSS Scroll Anchoring 1, CSSOM 1, and Color 5 to Rough Interop
<ChrisL> +1
<fantasai> SebastianZ: We can add CSS Nesting if it gets updated in time
<fantasai> fantasai: If Tab can update in the next couple weeks, happy to add it :)
<fantasai> ChrisL: Do we mean publish a new WD as we have today, or do a bunch of work on it?
<fantasai> TabAtkins: I think the ED is pretty up to date
<fantasai> PROPOSED: Add Scroll Anchoring 1, CSSOm 1, and Color 5 to Rough Interop; add Nesting once it's republished.
<fantasai> SebastianZ: One more thing -- Selectors 4
<fantasai> RESOLVED: Add Scroll Anchoring 1, CSSOm 1, and Color 5 to Rough Interop; add Nesting once it's republished.
<fantasai> ChrisL: Not objecting to including it
<fantasai> astearns: Comment is that it's perhaps further than Rough Interop
<fantasai> PROPOSED: Add Selectors 4 to Rough Interop
<fantasai> RESOVLVED: Add Selectors 4 to Rough Interop
<fantasai> RESOLVED: Add Selectors 4 to Rough Interop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
css-2025 The new, improved CSS snapshot
Projects
Status: Not for TPAC?
Development

No branches or pull requests

5 participants