2.5.1
Patch Changes
-
#10722
f8a303dThanks @denbezrukov! - Fixed CSS formatter output for comments between import media queries.-@import url("print.css") print, -/* comment */ -screen; +@import url("print.css") print, /* comment */ screen;
-
#10738
9fdc560Thanks @JamBalaya56562! - Fixed #9899: thejsonandjson-prettyreporters now escape backslashes in a diagnostic'slocation.path. Previously, paths containing backslashes (such as Windows-style paths) were emitted unescaped, producing invalid JSON.- "path": "src\account\setup-passkey.tsx", + "path": "src\\account\\setup-passkey.tsx",
-
#10626
5f837dfThanks @tom-groves! - Fixed #10625:biome migrateno longer emits an invalid trailing comma when a renamed rule (such asnoConsoleLog→noConsole) is the last member of its rule group. Previously this produced malformed output that aborted the migration of a strict-JSONbiome.jsonwith a parsing error. -
#10535
c245f9dThanks @Mokto! - Fixed a false positive innoUnusedVariablesfor Svelte files where variables referenced inside{@html expr}blocks were incorrectly reported as unused. -
#10668
a0f197eThanks @Netail! - Thebiome initcommand has been updated to include a more up-to-date URL to the first-party extensions page. -
#10667
d8c3e87Thanks @Netail! - Fixed #10664: useErrorCause now correctly detects a shorthand property. -
#10696
ef2373fThanks @ematipico! - Fixed #9566. Improved how the Biome Language Server loads multiple configuration files inside a workspace. -
#10705
4ccb410Thanks @ematipico! - Fixed #10652. Biome plugins are now properly filtered when using--onlyand--skipflags. -
#10669
aa0a6ebThanks @Netail! - Fixed #10651: useInlineScriptId now correctly trims trivia to detect if an id attribute has been set. -
#10689
844b1beThanks @ematipico! - Fixed #10658. The issue was caused by the "Go-to definition" editor feature, which was enabled by default. The feature is now disabled by default. To work, the feature triggers the scanner to build the module graph. This caused memory leak issues in cases where Biome starts in the home directory to modify files.If you relied on this new feature, you must now turn on using the [editor settings] of the extension e.g. Zed and VSCode.
-
#10695
043fbb5Thanks @ematipico! - Fixed #10674. Biome now throws an error when the fieldlevelis missing from a rule option. -
#10712
5941df2Thanks @Conaclos! - Improved the diagnostic and the documentation ofuseFlatMap. -
#10615
23814f1Thanks @qwertycxz! - Improved the DX the JSON schema when it's used by certain code editors like VSCode. -
#10688
ec69489Thanks @ematipico! - Fixed a bug where the Biome Daemon did not correctly shut down when the editor was closed during an in-progress operation, especially while scanning. -
#10701
6c2e0d7Thanks @ematipico! - Fixed #10694. The Biome Language Server no longer prints an error when the user hovers a variable imported from node_modules. -
#10681
888515bThanks @Conaclos! - FixeduseExportTypethat reported useless details in some diagnostics. -
#10220
3694a13Thanks @theBGuy! - FixeduseAnchorContentfalse positive for<a>elements used as render prop values (e.g.render={<a href="..." />}), a pattern where the receiving component renders its children inside the anchor element. -
#10702
98823fbThanks @ematipico! - Fixed #10612. The Biome parser now correctly parses processing instructions. The following SVG doesn't throw errors anymore:<?xml version="1.0" encoding="UTF-8" ?> <svg></svg>
What's Changed
- ci: use tombi from installed from toolchain by @ematipico in #10613
- docs: fix duplicate "being" in symlink test comments by @dfedoryshchev in #10611
- refactor(core): add
biome_languagescrate by @ematipico in #10590 - fix(migrate): avoid trailing comma when a renamed rule is last in its group by @tom-groves in #10626
- chore(deps): update rust:1.96.0-bullseye docker digest to e12c121 by @renovate[bot] in #10641
- chore(deps): update dependency @types/node to v24.13.2 by @renovate[bot] in #10642
- chore(deps): update github-actions by @renovate[bot] in #10643
- chore(deps): update rust crate regex to 1.12.4 by @renovate[bot] in #10644
- fix(deps): update dependency prettier to v3.8.4 by @renovate[bot] in #10646
- chore(deps): update pnpm to v11.6.0 by @renovate[bot] in #10647
- chore(deps): update rust crate insta to 1.48.0 by @renovate[bot] in #10648
- chore(deps): update rust crate smallvec to 1.15.2 by @renovate[bot] in #10645
- fix(js_analyze): useErrorCause shorthand property by @Netail in #10667
- fix(js_analyze): trim useInlineScriptId trivia by @Netail in #10669
- chore: dead and old links by @Netail in #10668
- docs(useValidAnchor): enhance lint rule explainer by @Th3S4mur41 in #10679
- chore(biome_configuration): add allowTrailingCommas to json-schema to make VSCode happy by @qwertycxz in #10615
- chore: fixes an internal CVE by @ematipico in #10690
- chore(deps): update dependency vite to v7.3.5 [security] by @renovate[bot] in #10691
- fix(lsp): shutdown the daemon on disconnect by @ematipico in #10688
- fix(lsp): disable go-to definition by default by @ematipico in #10689
- refactor(module_graph): preserve same-name function overloads as a set by @IxxyDev in #10585
- fix(a11y/useAnchorContent): don't flag elements used as render props by @theBGuy in #10220
- docs: fix rustdoc for
noImplicitCoercionsby @Bertie690 in #10614 - fix: level is now mandatory by @ematipico in #10695
- fix(html): register {@html} expression as a template reference in Svelte by @Mokto in #10535
- fix(lsp): improved configuration loading by @ematipico in #10696
- fix: update member creation by @ematipico in #10700
- docs(js-api): correct "If" to "It" in BiomeCommon method JSDoc by @dfedoryshchev in #10706
- chore(xtask): scaffold global-types codegen and resolver builder by @minseong0324 in #10249
- refactor(useExportType): dedup code by @Conaclos in #10681
- refactor(useFlatMap): improve docs and diagnostics by @Conaclos in #10712
- chore: refactor html a11y test cases by @Netail in #10713
- refactor(migrate): remove dead code by @Conaclos in #10717
- chore(deps): update github-actions by @renovate[bot] in #10723
- fix(lsp): handle navigation result errors by @ematipico in #10701
- feat(css_formatter): format import media comments inline by @denbezrukov in #10722
- refactor: expose more utilities by @ematipico in #10728
- perf(core): save Settings via Arc by @ematipico in #10720
- fix(parser): html processing instructions by @ematipico in #10702
- refactor(tools): provide diagnostics printer by @ematipico in #10732
- refactor: abstract vue directive detection by @Netail in #10736
- fix(cli): escape backslashes in JSON reporter file paths by @JamBalaya56562 in #10738
- fix(analyzer): exclude plugins via filters by @ematipico in #10705
- ci: release by @github-actions[bot] in #10627
New Contributors
- @tom-groves made their first contribution in #10626
- @qwertycxz made their first contribution in #10615
- @theBGuy made their first contribution in #10220
Full Changelog: https://github.com/biomejs/biome/compare/@biomejs/biome@2.5.0...@biomejs/biome@2.5.1