Biome 2.3: chytrější, rychlejší a kompatibilnější než kdy dřív
Biome – nástroj pro formátování, lintování a analýzu kódu vydal verzi 2.3, která přináší velký krok vpřed směrem k plné podpoře moderního webového ekosystému. Aktualizace přináší podporu pro Vue, Svelte i Astro, lepší práci s Tailwind CSS 4 a nový systém pro ignorování souborů.
Po aktualizaci na verzi 2.3 stačí spustit:
biome migrate --writeCode language: Bash (bash)
Plná podpora pro Vue, Svelte a Astro
Nová verze umožňuje Biome pracovat s frameworky Vue, Svelte a Astro na stejné úrovni jako s běžným JavaScriptem. Biome dokáže formátovat <script> i <style> bloky, a dokonce zpracovávat i šablony uvnitř těchto souborů.
Podpora je zatím experimentální, protože zmíněné frameworky mají vlastní syntaxi. Aktivuje se přidáním do konfigurace:
{
"html": {
"experimentalFullSupportEnabled": true
}
}
Code language: JSON / JSON with Comments (json)
Současně lze konfigurovat i odsazení kódu uvnitř <script> a <style>:
{
"html": {
"formatter": {
"indentScriptAndStyle": true
}
}
}
Code language: JSON / JSON with Comments (json)

Nový systém ignorování souborů
Biome 2.3 zavádí nový způsob, jak přesně řídit, které soubory se mají indexovat a analyzovat.
!– soubor se nelintuje ani neformátuje, ale zůstává indexován pro typovou analýzu!!– Biome soubor zcela ignoruje
{
"files": {
"includes": [
"**",
"!**/generated",
"!!**/dist"
]
}
}
Code language: JSON / JSON with Comments (json)
V tomto nastavení složka generated/ je ignorována pro formátování/lintování, ale zůstává indexována pro typy. Složka dist/ je úplně vyjmuta ze všech operací Biome.
V důsledku toho byla možnost files.experimentalScannerIgnores vyřazena a plánuje se ji odstranit v budoucích vydáních.
Tento přístup řeší problémy s pamětí, symbolickými odkazy i pomalou analýzou velkých projektů.
Podpora Tailwind CSS 4
Nově lze zapnout parser s podporou Tailwind direktiv:
{
"css": {
"parser": {
"tailwindDirectives": true
}
}
}
Code language: JSON / JSON with Comments (json)
V souboru tailwind.css by pak mohly být direktivy jako:
@utility container {
margin-inline: auto;
padding-inline: 2rem;
}
@theme {
--color-*: initial;
}Code language: CSS (css)
Lintovací pravidla
Povýšená pravidla
noNonNullAssertedOptionalChainbylo přesunuto do skupiny „suspicious“useReactFunctionComponentsdo skupiny „style“useImageSizedo skupiny „correctness“useConsistentTypeDefinitionsdo skupiny „style“useQwikClasslistdo skupiny „correctness“noSecretsdo skupiny „security“
Odebraná pravidla
useAnchorHref, protože jeho případ použití pokrývá již pravidlouseValidAnchor
Aktualizována doména „react“
Následující pravidla nyní patří do domény react, a nebudou automaticky aktivována, pokud doména není zapnuta, nebo Biome detekuje react jako závislost v nejbližším package.json:
lint/correctness/noChildrenProp(doporučeno)lint/correctness/noReactPropAssignmentslint/security/noDangerouslySetInnerHtml(doporučeno)lint/security/noDangerouslySetInnerHtmlWithChildren(doporučeno)lint/style/useComponentExportOnlyModuleslint/suspicious/noArrayIndexKey(doporučeno)
Vylepšené flagy --skip a --only
Flagy byly rozšířeny, aby akceptovaly také lintovací domény.
Například:
biome lint --only=projectCode language: Bash (bash)
Tím se spustí pouze pravidla, která patří do domény „project“. Nebo:
biome lint --skip=testCode language: Bash (bash)
Tím se spustí všechna nastavená pravidla, kromě těch která patří do domény „test“.
Vylepšený příkaz init
Příkaz init nyní kontroluje, zda projekt obsahuje soubory ignore nebo složky dist/. Pokud najde podporované soubory ignore, Biome automaticky povolí integraci s verzovacím systémem (VCS). Pokud najde složku dist/, automaticky ji vyloučí pomocí nové syntaxe ignorování.
Konfigurace může vypadat takto:
{
"vcs": {
"enabled": true,
"clientKind": "git",
"useIgnoreFile": true
}
}Code language: JSON / JSON with Comments (json)
Noví reportéři
Byli přidáni dva noví CLI reportéři:
- checkstyle reporter
--reporter=checkstyle - RDJSON reporter
--reporter=rdjson
Nové CLI flagy
Přidaly se nové flagy, které umožňují lepší kontrolu nad Biome bez nutnosti upravovat konfigurační soubor. Zde je seznam novinek:
--format-with-errors: formátuje kód, který obsahuje chyby při parsování--css-parse-css-modules: ovlivňuje, zda je povolena syntaxe CSS Modules--css-parse-tailwind-directives: ovlivňuje, zda jsou povoleny direktivy a funkce Tailwind CSS 4.0--json-parse-allow-comments: ovlivňuje, zda jsou v JSON souborech povoleny komentáře--json-parse-allow-trailing-commas: ovlivňuje, zda jsou povoleny závěrečné čárky v JSON souborech
Volba formátu koncovek řádků (lineEnding)
Možnost lineEnding nyní obsahuje variantu auto, která odpovídá stylu koncovek řádků očekávanému operačním systémem: na Windows bude CRLF (\r\n), na macOS/Linux LF (\n).
Příklad nastavení:
{
"formatter": {
"lineEnding": "auto"
}
}Code language: JSON / JSON with Comments (json)
A spuštění:
biome format --line-ending autoCode language: Bash (bash)
A více!
Další funkce a opravy byly také vydány – například podpora React v19, podpora baseUrl v tsconfig.json a mnoho dalšího. Podrobné rozpisy najdete v changelogu.