Files
oxc-project__oxc/crates/oxc_formatter_css/CHANGELOG.md
oxc-guard b4da00b621 release(apps): oxlint v1.82.0 && oxfmt v0.67.0 (#26384)
# Oxlint
### 🚀 Features

- 6a0e19c linter/eslint/no-unmodified-loop-condition: Support `checkConditionalExpressions` option (#26249) (camc314)

### 🐛 Bug Fixes

- 562dd14 jsx-a11y/anchor-has-content: Allow anchors passed as custom component props (#26360) (Mikhail Baev)
- 253cdb2 linter/eslint/id-length: Exempt TS interface/type-literal members with never (#26310) (Pearce Ropion)
- 8c7ea76 ast_visit: Account for trimmed source offsets (#26223) (Cameron)
- 5f9cffc linter/typescript/no-explicit-any: Fix rest parameter to `unknown[]` (#26279) (camc314)
- 4de9fa3 linter/react/jsx-no-literals: Check nested JSX expression literals (#26253) (camc314)
- 07851b9 parser: Fix debug assert failure when lexer error with tokens enabled (#26229) (overlookmotel)
- 9cee146 oxlint/lsp: Don't try to parse fix message, always fallback (#26204) (Sysix)
- a662c40 linter/eslint/no-useless-assignment: Handle destructuring assignments (#25925) (camc314)
- 304bd9a linter/eslint/no-array-constructor: Handle ASI hazards in fixer (#26166) (Hamody We)
- b41bb35 linter: Qualify rules in rules output (#26250) (camc314)
- 895c685 linter/typescript/no-extraneous-class: Avoid deleting class expressions (#26231) (camc314)
- 4ba33c8 linter/eslint/no-unused-vars: Handle stored arrow references (#26225) (camc314)

### 🛡️ Security

- 9a612d5 deps: Update npm packages (#26178) (renovate[bot])
# Oxfmt
### 💥 BREAKING CHANGES

- 2c9a947 parser: [**BREAKING**] Reduce `MAX_LEN` to 256 bytes below `u32::MAX` (#26352) (overlookmotel)

### 🚀 Features

- 68e12ab formatter_css: Follow the oxc-css-parser's acceptance line (#26337) (leaysgur)

### 🐛 Bug Fixes

- f7acdc0 formatter: Treat a JSDoc cast target as opaque in chain layouts (#26375) (leaysgur)
- 104061b formatter: Keep JSDoc cast parens with a comment inside them (#26374) (leaysgur)
- 3d00a76 formatter_css: Keep comment inside important and simple-vars colon (#26370) (leaysgur)
- 172ddb6 formatter_css: Keep a same-line line comment on its line (#26321) (leaysgur)
- cafaf32 formatter_css: Never drop comments inside an at-rule prelude (#26320) (leaysgur)
- 534a0fe formatter_css: Keep a line comment on its comma's line (#26319) (leaysgur)
- 99cfd75 formatter_css: Hide raw comment printing API, use strcut instead (#26316) (leaysgur)
- 2028896 formatter_css: Preserve comments around SCSS/Less variable values (#26276) (leaysgur)
- 6752abc formatter_css: Keep leading comments before (#26272) (leaysgur)
- 3b054de formatter_graphql: Align comment printing after open `{` (#26271) (leaysgur)
- b3c287a formatter_css: Fix SCSS bracket list printing (#26270) (leaysgur)
- bac770a formatter_css: Preserve comment in SCSS paren comma list (#26269) (leaysgur)
- c7b57ef formatter_css: Print SCSS map consisntent with and without comment (#26268) (leaysgur)
- 063e2b6 formatter_css: Preserve trailing comma in single-item scss lists (#26245) (leaysgur)
- 5f9580d oxfmt: Bump prettier-plugin-tailwindcss (#26273) (leaysgur)

### ⚡ Performance

- 1cad286 oxfmt: Match editorconfig once per file (#26239) (Yuji Sugiura)
- 260c5eb oxfmt: Match `overrides` once per file (#26238) (leaysgur)
- 61565bc oxfmt: Share resolved `FormatConfig` via `Arc` instead of cloning per file (#26237) (leaysgur)

### 📚 Documentation

- 32084d4 formatter_core: Clarify printer hard_line compression (#26312) (leaysgur)
- 4fabdcc formatter,formatter_css,formatter_graphql,formatter_yaml: Update DIVERGENCES.md (#26267) (leaysgur)
- 26a1fa4 formatter_core: Refine FORMATTER_POLICY (#26266) (leaysgur)

### 🛡️ Security

- 9a612d5 deps: Update npm packages (#26178) (renovate[bot])
2026-09-07 14:13:57 +00:00

5.5 KiB

Changelog

All notable changes to this package will be documented in this file.

The format is based on Keep a Changelog.

[0.67.0] - 2026-09-07

🚀 Features

  • 68e12ab formatter_css: Follow the oxc-css-parser's acceptance line (#26337) (leaysgur)

🐛 Bug Fixes

  • 3d00a76 formatter_css: Keep comment inside important and simple-vars colon (#26370) (leaysgur)
  • 172ddb6 formatter_css: Keep a same-line line comment on its line (#26321) (leaysgur)
  • cafaf32 formatter_css: Never drop comments inside an at-rule prelude (#26320) (leaysgur)
  • 534a0fe formatter_css: Keep a line comment on its comma's line (#26319) (leaysgur)
  • 99cfd75 formatter_css: Hide raw comment printing API, use strcut instead (#26316) (leaysgur)
  • 2028896 formatter_css: Preserve comments around SCSS/Less variable values (#26276) (leaysgur)
  • 6752abc formatter_css: Keep leading comments before (#26272) (leaysgur)
  • 3b054de formatter_graphql: Align comment printing after open { (#26271) (leaysgur)
  • b3c287a formatter_css: Fix SCSS bracket list printing (#26270) (leaysgur)
  • bac770a formatter_css: Preserve comment in SCSS paren comma list (#26269) (leaysgur)
  • c7b57ef formatter_css: Print SCSS map consisntent with and without comment (#26268) (leaysgur)
  • 063e2b6 formatter_css: Preserve trailing comma in single-item scss lists (#26245) (leaysgur)

📚 Documentation

  • 4fabdcc formatter,formatter_css,formatter_graphql,formatter_yaml: Update DIVERGENCES.md (#26267) (leaysgur)

[0.66.0] - 2026-08-31

🚀 Features

  • 1fb37b6 formatter/css: Format declaration-shaped raw-prelude rules (postcss nested config blocks) (#26194) (leaysgur)

🐛 Bug Fixes

  • 57e8e22 formatter_css: Space a folded sign after a call in Less operations (#26134) (leaysgur)

📚 Documentation

  • 181953b oxfmt,formatter_core,formatter,formatter_yaml,formatter_css,formatter_graphql: Extract DIVERGENCES.md out from AGENTS.md (#26121) (leaysgur)

[0.64.0] - 2026-08-18

🐛 Bug Fixes

  • 5c0a5ff formatter_css: Fill own-line block comments inside space-separated values (#25578) (leaysgur)
  • 53debfa formatter_css: Keep trailing comma and indent after comment-preceded last map value (#25577) (leaysgur)
  • 40d38a0 formatter_css: Keep multi value function args intact after leading comment (#25518) (leaysgur)

[0.63.0] - 2026-08-10

🚀 Features

  • fd02a89 oxfmt: Dispatch yaml-in-css(frontmatter) to oxc_formatter_yaml (#25336) (leaysgur)

🐛 Bug Fixes

  • 2eaede9 formatter_core: Unify leading-BOM handlings (#25340) (leaysgur)
  • e23dccf formatter_css: Bump oxc-css-parser to accept unknown at-rule with interpolated (#25277) (leaysgur)

[0.62.0] - 2026-08-03

🐛 Bug Fixes

  • 68146bd formatter_css: Preserve glued plugin words in grid values (#25225) (leaysgur)
  • dd28596 formatter_css: Bump oxc-css-parser for substituted at-rule preludes (#25104) (leaysgur)
  • f56009a oxfmt: Correct prose about comment width in fits measurement (#25054) (leaysgur)

⚡ Performance

  • b91d5a8 formatter_css,formatter_graphql,formatter_yaml,formatter_json: Pre alloc IR buffers (#25234) (leaysgur)

📚 Documentation

  • eaa7c69 formatter_core: Extract FORMATTER_POLICY (#25233) (leaysgur)

[0.61.0] - 2026-07-27

🐛 Bug Fixes

  • 761a882 formatter_css: Keep leading + in An+B to enable idempotency check (#24973) (leaysgur)
  • ae1a39b formatter_css: Align wrapped selector-arg indent (#24971) (leaysgur)
  • fb34196 formatter_css: Keep non-ASCII strings with quotes (#24870) (leaysgur)
  • 31783e9 formatter_css: Print nested SCSS map with consistent indent (#24789) (leaysgur)

📚 Documentation

  • 69126a0 formatter_css,fomatter_graphql,formatter_yaml: Update AGENTS.md (#24821) (leaysgur)

[0.60.0] - 2026-07-20

🐛 Bug Fixes

  • 33e32d8 formatter_css: Use line_suffix for EOL line comment (#24580) (leaysgur)

[0.59.0] - 2026-07-13

🚀 Features

  • 3a7fe74 formatter_css: Update oxc-css-parser to 0.0.7 (#24434) (leaysgur)
  • 0173cd3 formatter_css: Format Less :extend and merge props (#24358) (leaysgur)

🐛 Bug Fixes

  • fcc28df formatter_css: Keep glued-braket-value tight (#24352) (leaysgur)
  • eeabc4a formatter_css: Bail on EOF-recovered parse errors (#24282) (leaysgur)

[0.58.0] - 2026-07-06

🚀 Features

  • 4f4313e formatter_css: Update oxc-css-parser 0.0.5 (#24120) (leaysgur)
  • e0b35a1 formatter_css: Update oxc-css-parser@0.0.3 (#23974) (leaysgur)

🐛 Bug Fixes

  • 9af3833 formatter_css: Make scss formatter consistent (#24207) (leaysgur)
  • 46d7194 formatter_css: Use fill IR for @forward members (#24206) (leaysgur)
  • e31038f formatter_css: Keep comment inside sass config list (#24205) (leaysgur)
  • 9bf4b4a formatter_css: Align CSS output to Prettier 3.9.1 (#24100) (leaysgur)
  • cd2452e formatter_css: Align SCSS output to Prettier 3.9.1 (#24097) (leaysgur)
  • 4ee8745 formatter_css: Keep selector value contain line-break without breaking line (#24055) (leaysgur)
  • 903ab6e formatter_css: Preserve newlines in css-in-js selector list (#23992) (leaysgur)

[0.57.0] - 2026-06-29

💥 BREAKING CHANGES

  • accbc49 oxfmt: [BREAKING] Format parser:css,less,scss files + css-in-js by oxc_formatter_css (#23321) (leaysgur)

🚀 Features

  • dffa4b3 formatter_css: Implement oxc_formatter_css (#23320) (leaysgur)

🐛 Bug Fixes

  • 67325ae formatter_css: Handle frontmatter language (#23819) (leaysgur)
  • 48e2d78 formatter_css: Improve major prettier diffs (#23327) (leaysgur)

📚 Documentation

  • b4d0dc9 oxfmt,formatter,formatter_css,formatter_core: Update AGENTS.md (#23814) (leaysgur)