Skip to content

[css-2025] Add features to Safe to Release pre-CR Exceptions #10687

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 Aug 4, 2024 · 15 comments
Open

[css-2025] Add features to Safe to Release pre-CR Exceptions #10687

SebastianZ opened this issue Aug 4, 2024 · 15 comments
Labels
css-2025 The new, improved CSS snapshot

Comments

@SebastianZ
Copy link
Contributor

SebastianZ commented Aug 4, 2024

Here's a (very hand-wavy) list of features I believe could be added to the "Safe to Release pre-CR Exceptions" section of CSS 2024:

All from CSS Animations 2

  • Spec. status: WD (last published: 2 June 2023)

font-tech() and font-format() from CSS Conditional 5

linear() from CSS Easing 2

env(safe-area-inset-*) from CSS Environment Variables 1

All from CSS Highlight API 1

  • Spec. status: WD (last published: 15 December 2021)
  • Implemented in all major browsers (experimental in Firefox)
  • WPT: passing tests (experimental): Chrome: 223, Edge: 219, Firefox: 171, Safari: 188; interop: 162 / 235 (68,9%)
  • Open issues: on GitHub: 17, in spec.: 3

conic-gradient() and <color-interpolation-method> for gradient functions from CSS Images 4

  • Spec. status: WD (last published: 17 February 2023)
  • Implemented in all major browsers
  • WPT: passing tests: Chrome: 2518, Edge: 2518, Firefox: 2897, Safari: 2857; interop: 2511 / 2907 (86.4%)
  • Open issues: on GitHub: 20, in spec.: 3

text-box-trim and text-box-edge from CSS Inline Layout 3

All from CSS Overflow 3

  • Spec. status: WD (last published: 29 March 2023)
  • Implemented in all major browsers
  • WPT: passing tests: Chrome: 1042, Edge: 1027, Firefox: 667, Safari: 657; interop: 566 / 1084 (52.2%)
  • Open issues: on GitHub: 39, in spec.: 5

All from CSS Paged Media 3

Typographic pseudo-elements, ::before, ::after from CSS Pseudo-Elements 4 (basically all from CSS 2 with double-colon syntax plus ::prefix and ::postfix)

  • Spec. status: WD (last published: 30 December 2022)
  • Implemented in all major browsers for many years
  • WPT: passing tests: Chrome: 3, Edge: 3, Firefox: 3, Safari: 3; interop: 3 / 3 (100.0%)
  • Open issues: on GitHub: 12, in spec.: 0

:is(), :where(), :has(), and selector lists in :not() from Selectors 4

text-decoration-thickness, text-underline-offset properties and from-font value for text-underline-position from CSS Text Decorations 4

transition-behavior property, @starting-style rule and CSSStartingStyleRule interface of CSS Transitions 2

  • Spec. status: WD (last published: 5 September 2023)
  • Implemented in all major browsers as part of Interop 2024
  • WPT: passing tests: Chrome: 59, Edge: 59, Firefox: 58, Safari: 59; interop: 58 / 59 (98.3%)
  • Open issues: on GitHub: 8, in spec.: 0

accent-color property, auto value for outline-color property, and <url-set> value for the cursor property from CSS UI 4

  • Spec. status: WD (last published: 16 March 2021)
  • Implemented in all major browsers
  • WPT: passing tests: Chrome: 353, Edge: 353, Firefox: 354, Safari: 357; interop: 352 / 360 (97.8%)
  • Open issues: on GitHub: 8, in spec.: 0

Several of the interfaces defined in CSSOM 1

  • Spec. status: WD (last published: 26 August 2021)
  • Implemented in all major browsers for many years
  • WPT: passing tests: Chrome: 3826, Edge: 3826, Firefox: 3777, Safari: 3614; interop: 3539 / 3908 (90.6%)
  • Open issues: on GitHub: 140, in spec.: 19

(I believe should be cut now regarding its feature set and a CSSOM 2 spec. started for new features, see #10686.)


For this list I went through all the specs and checked what seems fairly stable to me based on issues within the spec. and on GitHub and/or is already widely implemented in browsers. For some I checked the WPT coverage, though not all. I may go through them and provide some more detailed info. And there are surely some Interop 2023 and 2024 features I didn't list here yet, which might be added.

Everyone is encouraged to edit this list or suggest additions, changes, or removals! And let me know if it makes sense to split it into separate issues to discuss them individually!

Sebastian

@SebastianZ SebastianZ added the css-2024 The 2024 snapshot label Aug 4, 2024
@svgeesus
Copy link
Contributor

svgeesus commented Aug 5, 2024

  • linear() from CSS Easing 2 (requires to publish a FPWD)

Yes we absolutely need a FPWD :) also it would be good if the spec had WPT annoutations to show how well it is tested

@svgeesus
Copy link
Contributor

svgeesus commented Aug 5, 2024

In general, if the proposal for pre-CR exceptions is "all from spec foo" then it kind of implies that foo should move to CR.

@SebastianZ
Copy link
Contributor Author

In general, if the proposal for pre-CR exceptions is "all from spec foo" then it kind of implies that foo should move to CR.

Agree, though some of them have a lot of open issues (in-spec and/or on GitHub), but all of their features are widely implemented. Not sure how to handle those. I'll try to dig up some numbers, so we can get a better picture of their actual state, though that'll take a bit.

Sebastian

@svgeesus
Copy link
Contributor

svgeesus commented Nov 5, 2024

Yes we absolutely need a FPWD :)

To keep this issue up to date, the FPWD of CSS Easing 2 was published 29 August 2024 and I did add the WPT annotations.

@svgeesus
Copy link
Contributor

svgeesus commented Nov 5, 2024

  • env() from CSS Environment Variables 1 (still some open issues but interoperably implemented, requires to publish a FPWD)

We still don't have a FPWD yet.

@SebastianZ
Copy link
Contributor Author

I have now updated the list of features and added additional information and stats to them. The info on some of them is still incomplete and I'll continue updating it.
Though I believe we're now in a state to discuss this. So adding it to the agenda.

Sebastian

@fantasai
Copy link
Collaborator

  • text-box* needs some edits, it's close, but it's not quite at "ready to ship". We should track it independently.
  • anything in CSS2 doesn't need to be listed, it's already in REC

@astearns astearns moved this to FTF agenda items in CSSWG January 2025 meeting Jan 22, 2025
@astearns astearns moved this from FTF agenda items to Regular agenda items in CSSWG January 2025 meeting Jan 22, 2025
@svgeesus svgeesus added css-2025 The new, improved CSS snapshot and removed css-2024 The 2024 snapshot labels Feb 27, 2025
@svgeesus svgeesus changed the title [css-2024] Add features to Safe to Release pre-CR Exceptions [css-2025] Add features to Safe to Release pre-CR Exceptions Feb 27, 2025
@svgeesus svgeesus removed the Agenda+ label Feb 27, 2025
@astearns
Copy link
Member

astearns commented Mar 9, 2025

There is a question on whether we should include interactivity in this list, as the html spec will be referencing it

https://drafts.csswg.org/css-ui-4/#inertness

@svgeesus
Copy link
Contributor

  • linear() from CSS Easing 2 (requires to publish a FPWD)

Yes we absolutely need a FPWD :) also it would be good if the spec had WPT annoutations to show how well it is tested

The FPWD of Easing 2 ws published 29 August 2024 and includes WPT annotations

@SebastianZ
Copy link
Contributor Author

The FPWD of Easing 2 ws published 29 August 2024 and includes WPT annotations

You already mentioned that earlier.😃

Sebastian

@SebastianZ
Copy link
Contributor Author

  • env() from CSS Environment Variables 1 (still some open issues but interoperably implemented, requires to publish a FPWD)

We still don't have a FPWD yet.

I've created #11899, which is blocking #6729.

Sebastian

@SebastianZ
Copy link
Contributor Author

I've updated "font-tech() and font-format() from CSS Conditional 5", "linear() from CSS Easing 2", "env(safe-area-inset-*) from CSS Environment Variables 1", and "All from CSS Highlight API 1".
More to come.

Sebastian

@SebastianZ
Copy link
Contributor Author

Updated "conic-gradient() and for gradient functions from CSS Images 4", "text-box-trim and text-box-edge from CSS Inline Layout 3", and "All from CSS Overflow 3".

Sebastian

@SebastianZ
Copy link
Contributor Author

Updated "All from CSS Overflow 3", "All from CSS Paged Media 3" (though now wondering a bit whether really all should be added), "Typographic pseudo-elements, ::before, ::after from CSS Pseudo-Elements 4", and "text-decoration-thickness, text-underline-offset properties and from-font value for text-underline-position from CSS Text Decorations 4".

Sebastian

@SebastianZ
Copy link
Contributor Author

Updated the rest and included additional WPT and issues info.

Sebastian

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: Regular agenda items
Development

No branches or pull requests

4 participants