Biome
Fast formatter and linter for JavaScript, TypeScript and web languages
Biome's patch train is really a type-aware linting project in disguise
◆Recent moves
- 6d ago
Type-inference perf regression fixed in noMisusedPromises
The headline fix stops type inference from running repeatedly while linting a single file, a regression that directly taxes the type-aware rules Biome is betting on. Alongside it, useHookAtTopLevel stops flagging forwardRef components taking a ref, and the parser handles curried arrows in ternary consequents.
View source ↗ - 13d ago
Rules go quiet when type inference can't complete
useExhaustiveSwitchCases learns bigint literals across all spellings, and more importantly noBaseToString and useNullishCoalescing now suppress diagnostics instead of reporting from partial type information. That policy choice is the clearest statement in this window of how Biome wants type-aware rules to behave under uncertainty.
View source ↗ - 19d ago
Accessibility rules learn Astro, Svelte and Vue interpolation
noLabelWithoutControl now recognises text interpolation in Astro, Svelte and Vue as valid accessible content, removing a whole class of false positive for component-framework users. A hang in biome check --write --unsafe and an HTML parser speedup round it out.
View source ↗ - 26d ago
Svelte store and bindable props stop being flagged as unused
noUnusedVariables learns two Svelte idioms it was misreading — store subscriptions referenced only in templates, and write-only bindable props. Combined with parser recovery for unterminated CSS Modules rules, this is the framework-coverage half of Biome's current work.
View source ↗ - 1mo ago
useNullishCoalescing gains opt-out options; new Svelte nursery rule
Two new options let teams silence useNullishCoalescing where falsy coalescing is intentional, and a nursery rule catches unnecessary $state() wrapping of already-reactive Svelte classes. Configurability and Svelte specifics arriving together is the shape of most Biome patches right now.
View source ↗ - 1mo ago
CSS comment formatting and JSON reporter path escaping
Housekeeping: comments between import media queries format correctly, the JSON reporters escape backslashes in Windows-style paths, and biome migrate stops emitting a trailing comma on renamed rules. Narrow correctness work with no change to lint behaviour.
View source ↗