Skip to content

feat(css): update CSS properties order to align with stylelint-config-recess-order@7.4.0#8234

Merged
ematipico merged 1 commit intobiomejs:nextfrom
ongyuxing:fix/recess-order
Dec 4, 2025
Merged

feat(css): update CSS properties order to align with stylelint-config-recess-order@7.4.0#8234
ematipico merged 1 commit intobiomejs:nextfrom
ongyuxing:fix/recess-order

Conversation

@ongyuxing
Copy link
Contributor

@ongyuxing ongyuxing commented Nov 24, 2025

Summary

I updated the PROPERTY_ORDER list to match the upstream changes.

Note: Some properties (such as composes, font-smooth, nav-index, etc.) are commented out because Biome does not yet support them.

Test Plan

Updated snapshot tests

Docs

@changeset-bot
Copy link

changeset-bot bot commented Nov 24, 2025

🦋 Changeset detected

Latest commit: a1d07ed

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 14 packages
Name Type
@biomejs/biome Minor
@biomejs/cli-win32-x64 Minor
@biomejs/cli-win32-arm64 Minor
@biomejs/cli-darwin-x64 Minor
@biomejs/cli-darwin-arm64 Minor
@biomejs/cli-linux-x64 Minor
@biomejs/cli-linux-arm64 Minor
@biomejs/cli-linux-x64-musl Minor
@biomejs/cli-linux-arm64-musl Minor
@biomejs/wasm-web Minor
@biomejs/wasm-bundler Minor
@biomejs/wasm-nodejs Minor
@biomejs/backend-jsonrpc Patch
@biomejs/js-api Major

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions bot added A-Linter Area: linter L-CSS Language: CSS labels Nov 24, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 24, 2025

Walkthrough

Adds a changeset entry for a minor version bump and expands CSS property ordering in crates/biome_css_analyze/src/order.rs, increasing PROPERTY_ORDER from 375 to 427 entries to align with stylelint-config-recess-order v7.4.0 (adds containment, font-synthesis, ruby, colour-adjustment, view transitions, shapes, motion-path, etc.). No runtime logic changes; only metadata/order data updated. Also adds corresponding test fixtures under crates/biome_css_analyze/tests/specs/source/useSortedProperties/ (valid.css and invalid.css) containing the new properties.

Suggested reviewers

  • ematipico
  • dyc3

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: updating CSS properties order to align with stylelint-config-recess-order@7.4.0, which directly matches the changeset content.
Description check ✅ Passed The description explains the motivation (updating PROPERTY_ORDER to match upstream changes) and notes limitations (unsupported properties are commented out), directly relating to the changeset modifications.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6ba5709 and a1d07ed.

⛔ Files ignored due to path filters (2)
  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/invalid.css.snap is excluded by !**/*.snap and included by **
  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/valid.css.snap is excluded by !**/*.snap and included by **
📒 Files selected for processing (4)
  • .changeset/real-owls-glow.md (1 hunks)
  • crates/biome_css_analyze/src/order.rs (19 hunks)
  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/invalid.css (1 hunks)
  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/valid.css (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • .changeset/real-owls-glow.md
🧰 Additional context used
📓 Path-based instructions (1)
**/*.rs

📄 CodeRabbit inference engine (CONTRIBUTING.md)

**/*.rs: Use the Rust dbg!() macro for debugging output during test execution, and pass the --show-output flag to cargo test to display debug output.
Use snapshot testing with the insta crate for testing in Rust projects. Accept or reject snapshots using cargo insta accept, cargo insta reject, or cargo insta review.
Write doc comments as doc tests in Rust using code blocks with assertions that will be executed during the testing phase.
Use rustdoc inline documentation for rules, assists, and their options. Create corresponding documentation PRs for other documentation updates against the next branch of the website repository.
Set the version metadata field in linter rule implementations to 'next' for newly created rules. Update this field to the new version number when releasing a minor or major version.

Files:

  • crates/biome_css_analyze/src/order.rs
🧠 Learnings (5)
📓 Common learnings
Learnt from: CR
Repo: biomejs/biome PR: 0
File: CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:03:52.013Z
Learning: Applies to **/*.rs : Set the `version` metadata field in linter rule implementations to `'next'` for newly created rules. Update this field to the new version number when releasing a minor or major version.
Learnt from: CR
Repo: biomejs/biome PR: 0
File: CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:03:52.014Z
Learning: For bugfix/feature PRs visible to Biome toolchain users or affecting published crates, create a changeset using the `just new-changeset` command with appropriate package selection, change type (major/minor/patch), and description.
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/lib/src/**/!(mod).rs : The 'declare_lint_rule!' macro must include a 'version' field set to 'next' to allow flexibility for the actual release version
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_css_analyze/lib/src/**/!(mod).rs : CSS rules that report non-standardized or unknown concepts should use the 'noUnknown<Concept>' naming convention (e.g., `noUnknownUnit`)

Applied to files:

  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/valid.css
  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/invalid.css
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/lib/src/**/!(mod).rs : Avoid deep indentation in rule implementations by using Rust helper functions like 'map', 'filter', and 'and_then' instead of nested if-let statements

Applied to files:

  • crates/biome_css_analyze/src/order.rs
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_rule_options/lib/**/*.rs : Rule option fields should use 'Box<[Box<str>]>' instead of 'Vec<String>' for array types to save memory

Applied to files:

  • crates/biome_css_analyze/src/order.rs
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/tests/specs/**/*.{js,ts,tsx,jsx,json,css,graphql} : Test files should use 'invalid' or 'valid' prefixes to indicate whether they contain code reported by the rule

Applied to files:

  • crates/biome_css_analyze/tests/specs/source/useSortedProperties/invalid.css
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: Documentation
  • GitHub Check: Test (depot-ubuntu-24.04-arm-16)
  • GitHub Check: Lint project (depot-windows-2022)
  • GitHub Check: Test (depot-windows-2022-16)
  • GitHub Check: End-to-end tests
  • GitHub Check: autofix
  • GitHub Check: Bench (biome_css_parser)
  • GitHub Check: Bench (biome_css_analyze)
  • GitHub Check: Bench (biome_css_formatter)
🔇 Additional comments (3)
crates/biome_css_analyze/tests/specs/source/useSortedProperties/invalid.css (1)

80-211: LGTM! Comprehensive test coverage for new property groups.

The test fixtures appropriately cover all the newly-added property groups (containment, font-synthesis, ruby, color-adjustment, masking, shapes, writing-modes, svg, transforms, view-transitions, animations, motion-path) with intentionally misordered properties.

crates/biome_css_analyze/tests/specs/source/useSortedProperties/valid.css (1)

82-212: LGTM! Proper test coverage for correctly-ordered properties.

The valid test fixtures complement the invalid ones nicely, providing positive test cases for the new property groups.

crates/biome_css_analyze/src/order.rs (1)

10-533: All v7.4.0 properties present and correctly positioned.

The implementation includes all documented v7.4.0 additions: text properties (hyphenate-character, line-break, text-wrap-mode, text-wrap-style, white-space-collapse), font-palette properties (base-palette, override-colors, font-palette), and SVG properties (marker, paint-order, text-rendering). The property order aligns with upstream and maintains logical grouping by CSS module.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
crates/biome_css_analyze/src/order.rs (1)

146-146: Double‑check a couple of property names for future you

Two tiny nits that might save head‑scratching later:

  • Line 146: the commented‑out scroll-behaviour uses British spelling, whereas the CSS property is scroll-behavior – worth confirming you’re mirroring the upstream config intentionally rather than the spec spelling.
  • Lines 491–492: view-transition-class isn’t a property I recognise from the current CSS view transitions spec; if this comes solely from stylelint-config-recess-order, consider adding a short comment or TODO so we remember why it’s here and that it might be non-standard.

Neither blocks the PR, but a quick sanity check against MDN/specs or the upstream config would be prudent.

Also applies to: 490-492

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7fedb92 and b2aab53.

📒 Files selected for processing (2)
  • .changeset/real-owls-glow.md (1 hunks)
  • crates/biome_css_analyze/src/order.rs (19 hunks)
🔇 Additional comments (2)
crates/biome_css_analyze/src/order.rs (1)

10-523: PROPERTY_ORDER sync looks consistent with upstream intent

The expanded list and grouping look coherent with the MDN modules and the existing invariants; keeping the tests unchanged here is a nice way to guard against duplicate/unknown props and ordering regressions.

.changeset/real-owls-glow.md (1)

1-5: Changeset message matches the actual change

Nice, this clearly documents the patch‑level impact and ties it to the stylelint-config-recess-order@7.4.0 sync.

@codspeed-hq
Copy link

codspeed-hq bot commented Nov 24, 2025

CodSpeed Performance Report

Merging #8234 will not alter performance

Comparing ongyuxing:fix/recess-order (a1d07ed) with next (4291ff3)

Summary

✅ 29 untouched
⏩ 111 skipped1

Footnotes

  1. 111 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@ongyuxing ongyuxing changed the title fix(css): update CSS properties order to align with stylelint-config-recess-order@7.4.0 feat(css): update CSS properties order to align with stylelint-config-recess-order@7.4.0 Nov 25, 2025
@ongyuxing ongyuxing force-pushed the fix/recess-order branch 2 times, most recently from 955dabb to 83dea71 Compare November 25, 2025 08:26
@ongyuxing
Copy link
Contributor Author

I reset the test changes. Adding snapshot tests for specific properties doesn't seem necessary; the unit tests in order.rs already cover property mismatch cases well.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
crates/biome_css_analyze/src/order.rs (1)

3-14: PROPERTY_ORDER sync and handling of unsupported properties look solid

The expanded constant and the commented‑out entries for things Biome doesn’t support yet ("composes" etc.) are a clean way to track upstream without breaking our own grammar; the invariants are all guarded by the tests below. As a small future‑you aid, you might want to name‑drop stylelint-config-recess-order@7.4.0 in the doc comment so it’s obvious which upstream version this list mirrors.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 955dabb and 83dea71.

📒 Files selected for processing (2)
  • .changeset/real-owls-glow.md (1 hunks)
  • crates/biome_css_analyze/src/order.rs (19 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • .changeset/real-owls-glow.md
🧰 Additional context used
📓 Path-based instructions (1)
**/*.rs

📄 CodeRabbit inference engine (CONTRIBUTING.md)

**/*.rs: Use the Rust dbg!() macro for debugging output during test execution, and pass the --show-output flag to cargo test to display debug output.
Use snapshot testing with the insta crate for testing in Rust projects. Accept or reject snapshots using cargo insta accept, cargo insta reject, or cargo insta review.
Write doc comments as doc tests in Rust using code blocks with assertions that will be executed during the testing phase.
Use rustdoc inline documentation for rules, assists, and their options. Create corresponding documentation PRs for other documentation updates against the next branch of the website repository.
Set the version metadata field in linter rule implementations to 'next' for newly created rules. Update this field to the new version number when releasing a minor or major version.

Files:

  • crates/biome_css_analyze/src/order.rs
🧠 Learnings (1)
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_rule_options/lib/**/*.rs : Rule option fields should use 'Box<[Box<str>]>' instead of 'Vec<String>' for array types to save memory

Applied to files:

  • crates/biome_css_analyze/src/order.rs
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (11)
  • GitHub Check: Test Node.js API
  • GitHub Check: Documentation
  • GitHub Check: Check Dependencies
  • GitHub Check: Test (depot-ubuntu-24.04-arm-16)
  • GitHub Check: Bench (biome_css_analyze)
  • GitHub Check: Lint project (depot-ubuntu-24.04-arm-16)
  • GitHub Check: Lint project (depot-windows-2022)
  • GitHub Check: Test (depot-windows-2022-16)
  • GitHub Check: autofix
  • GitHub Check: Bench (biome_css_parser)
  • GitHub Check: Bench (biome_css_formatter)
🔇 Additional comments (5)
crates/biome_css_analyze/src/order.rs (5)

86-136: Box sizing / intrinsic size / containment grouping is coherent

Placing the contain-intrinsic-* properties immediately after the core sizing props, and then introducing the dedicated Containment block before Overflow, keeps the layout story readable and doesn’t disturb any of the shorthand/longhand or start/end invariants enforced by the tests.


157-245: Fonts, colour palettes, and text‑layout additions are wired in sensibly

The new font-synthesis* entries under Fonts, the palette props (base-palette, override-colors, font-palette) under Colours, and the extra text controls (hyphenate-character, text-wrap-*, white-space-collapse) all sit in the right modules. With test_no_unknown_properties_in_order_list backing this, I don’t see any ordering or naming pitfalls here.


254-339: UI, colour adjustment, ruby, scroll snap, and imagery sections look consistent

The additions for basic UI (accent-color, navigation props), colour adjustment (forced-color-adjust, print-color-adjust), ruby layout, scroll snap/margins, scrollbar styling, and image behaviour are all grouped where you’d expect them and keep the logical flow from interaction → layout → scrolling → imagery intact. No red flags from the linter‑rule perspective.


339-443: Backgrounds/borders, compositing, masking, shapes, and writing‑mode tweaks are tidy

Extending the visual effects area with clip-rule, mask-type, the Shapes block (shape-*), and the Writing modes additions (direction, unicode-bidi, text-orientation, text-combine-upright) fits neatly with the surrounding comments. This all remains pure data; the existing duplicate and vendor‑prefix tests will catch any future mishaps.


450-533: SVG, transforms, transitions, view transitions, animations, and motion‑path coverage looks great

The SVG presentation additions (marker, paint-order, text-rendering), transform‑related properties (transform-box, transform-style, backface-visibility), and the new modules for view transitions, animation composition, motion path, and will-change round out the modern rendering stack nicely. You’ve also not introduced any new "start" substrings without matching "end" entries, so the start/end ordering test should stay happy.

@ongyuxing ongyuxing changed the base branch from main to next November 25, 2025 08:49
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
crates/biome_css_analyze/src/order.rs (1)

145-149: Tiny nit: spelling of the commented scroll-behaviour property

Ultra‑minor and non‑blocking: the canonical CSS property is scroll-behavior (without the “u”). If this commented‑out entry is meant to mirror the actual property name from upstream/spec rather than British spelling, you might want to tweak it for future clarity before it ever gets uncommented.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 83dea71 and 6ba5709.

📒 Files selected for processing (2)
  • .changeset/real-owls-glow.md (1 hunks)
  • crates/biome_css_analyze/src/order.rs (19 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • .changeset/real-owls-glow.md
🧰 Additional context used
📓 Path-based instructions (1)
**/*.rs

📄 CodeRabbit inference engine (CONTRIBUTING.md)

**/*.rs: Use the Rust dbg!() macro for debugging output during test execution, and pass the --show-output flag to cargo test to display debug output.
Use snapshot testing with the insta crate for testing in Rust projects. Accept or reject snapshots using cargo insta accept, cargo insta reject, or cargo insta review.
Write doc comments as doc tests in Rust using code blocks with assertions that will be executed during the testing phase.
Use rustdoc inline documentation for rules, assists, and their options. Create corresponding documentation PRs for other documentation updates against the next branch of the website repository.
Set the version metadata field in linter rule implementations to 'next' for newly created rules. Update this field to the new version number when releasing a minor or major version.

Files:

  • crates/biome_css_analyze/src/order.rs
🧠 Learnings (2)
📓 Common learnings
Learnt from: CR
Repo: biomejs/biome PR: 0
File: CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:03:52.014Z
Learning: For bugfix/feature PRs visible to Biome toolchain users or affecting published crates, create a changeset using the `just new-changeset` command with appropriate package selection, change type (major/minor/patch), and description.
Learnt from: CR
Repo: biomejs/biome PR: 0
File: CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:03:52.013Z
Learning: Applies to **/*.rs : Set the `version` metadata field in linter rule implementations to `'next'` for newly created rules. Update this field to the new version number when releasing a minor or major version.
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/lib/src/**/!(mod).rs : The 'declare_lint_rule!' macro must include a 'version' field set to 'next' to allow flexibility for the actual release version
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/lib/src/**/!(mod).rs : Rules ported from other ecosystems should include a 'sources' field in the 'declare_lint_rule!' macro with RuleSource metadata (e.g., '::ESLint')
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_css_analyze/lib/src/**/!(mod).rs : CSS rules that report non-standardized or unknown concepts should use the 'noUnknown<Concept>' naming convention (e.g., `noUnknownUnit`)
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_*_analyze/lib/src/**/!(mod).rs : Deprecated rules must include a 'deprecated' field in the 'declare_lint_rule!' macro with the reason for deprecation
📚 Learning: 2025-11-24T18:04:42.146Z
Learnt from: CR
Repo: biomejs/biome PR: 0
File: crates/biome_analyze/CONTRIBUTING.md:0-0
Timestamp: 2025-11-24T18:04:42.146Z
Learning: Applies to crates/biome_analyze/**/biome_rule_options/lib/**/*.rs : Rule option fields should use 'Box<[Box<str>]>' instead of 'Vec<String>' for array types to save memory

Applied to files:

  • crates/biome_css_analyze/src/order.rs
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: Test (depot-windows-2022-16)
  • GitHub Check: Test (depot-ubuntu-24.04-arm-16)
  • GitHub Check: Documentation
  • GitHub Check: Lint project (depot-windows-2022)
  • GitHub Check: Check Dependencies
  • GitHub Check: autofix
  • GitHub Check: Bench (biome_css_analyze)
  • GitHub Check: Bench (biome_css_formatter)
  • GitHub Check: Bench (biome_css_parser)
🔇 Additional comments (1)
crates/biome_css_analyze/src/order.rs (1)

10-533: Expanded PROPERTY_ORDER looks consistent and well‑guarded by tests

The new properties and grouping comments line up nicely with the spec modules and the intent of mirroring stylelint-config-recess-order, and the existing tests (no shorthand-after-longhand, no vendor prefixes, no duplicates, no unknown properties, start/end ordering) still provide solid safety rails over the enlarged list. I don’t see any behavioural regressions here; happy with this as‑is.

Copy link
Member

@ematipico ematipico left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, now the PR is more reasonable! However, we should add tests :)

"All tests passed" isn't reasonable because we're adding new stuff and this new stuff hasn't been tested, so it's expected that the current tests pass... because we aren't testing the new stuff!

Please add new tests that cover the new properties

@ongyuxing
Copy link
Contributor Author

Awesome, now the PR is more reasonable! However, we should add tests :)

"All tests passed" isn't reasonable because we're adding new stuff and this new stuff hasn't been tested, so it's expected that the current tests pass... because we aren't testing the new stuff!

Please add new tests that cover the new properties

Sure, I've added the tests. You might notice that some blocks don't have a safe fix; this is because they contain a shorthand property, which is expected behavior.

@ongyuxing ongyuxing requested a review from ematipico November 25, 2025 10:14

This comment has been minimized.

@ematipico ematipico merged commit e2e6e66 into biomejs:next Dec 4, 2025
24 of 25 checks passed
@github-actions github-actions bot mentioned this pull request Feb 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Linter Area: linter L-CSS Language: CSS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants