Changelog

biomejs/biome · · 38 commits

A wave of new lint rules lands

Biome added a large batch of nursery rules across JS, Vue, Svelte, HTML, and CSS, plus a few performance and parser fixes.

Major lint-rule expansion across the stack

Biome added a substantial set of new nursery rules covering JavaScript, Vue, Svelte, HTML, and related patterns, including checks for useless awaits, mismatched map keys, unsafe Playwright references, Vue component/export conventions, and more. These broaden the linter’s coverage significantly and introduce many new diagnostics plus configuration/schema updates for users.

Performance work for large projects and analysis timers

Several performance-oriented changes landed, including faster file view map resizing in the service layer (dyc36f8313d) and a timer path that avoids overhead when a rule is disabled (dyc3c94f694). There’s also a grit dependency bump aimed at regex performance (dyc3378798f).

Tailwind parser handles dashed arbitrary-value names correctly

The Tailwind parser was fixed to recognize long dashed base names when arbitrary values are involved (dyc3291f034). This prevents misparsing in real-world class strings and comes with updated parser and lint snapshots.

Top-level grit config is now applied

The service now respects top-level grit configuration (nhedgerc2c2590), which should make CLI and service behavior line up with user expectations. The change includes test coverage for precedence between global and grit-specific settings.

SCSS multi-value declarations now format like Prettier

The SCSS formatter was adjusted so multi-value property declarations better match Prettier’s output (vibbix31f1820). This is a focused formatting fix, but it affects a common authoring pattern.

Other misc changes

  • Dependency pinning and deny-list updates for mimalloc (dyc34ada6fc)
  • Rule metadata refreshes (dyc38a1167d)
  • Miscellaneous test/snapshot updates tied to the new rules
  • Cargo lockfile and manifest maintenance from dependency bumps