Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
"zod": ">=3.25.76 <5.0.0"
},
"devDependencies": {
"@biomejs/biome": "^1.9.4",
"@biomejs/biome": "^2.4.4",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check for biome configuration files and how biome is used in the project

echo "=== Biome configuration files ==="
find . -type f \( -name "biome.json" -o -name "biome.jsonc" \) 2>/dev/null | head -20

echo -e "\n=== Biome scripts in package.json ==="
rg -A 1 -B 1 'biome' package.json

echo -e "\n=== Dependencies related to biome ==="
rg '@biomejs|@lokalise' package.json

Repository: lokalise/node-core

Length of output: 738


🌐 Web query:

breaking changes @biomejs/biome 2.0 from 1.9

💡 Result:

Key breaking changes when upgrading @biomejs/biome 1.9 → 2.0:

  • Config file paths/globs semantics changed

    • Globs/paths in config are now resolved relative to the configuration file, not the current working directory. [1]
    • files.include / files.ignore (and similar include/ignore usage) are removed and replaced by a single includes array with different glob semantics (notably * vs **/*, and negation via !). [1][2]
  • Rome-legacy features removed

    • No more rome.json, rome-ignore comments, ROME_BINARY, and legacy suppression formats. [1][2]
  • LSP/daemon CLI change

    • --config-path was removed from biome lsp-proxy and biome start (plugins/editors must use workspace configuration instead). [1][2]
  • Linter behavior/severity changes

    • Default severities were reworked (more nuance than “recommended=error”). [1]
    • Some previously “recommended and CI-blocking” rules were made less strict (can be breaking if you relied on them to fail CI). [1][2]
    • linter.rules.all and linter.rules.<group>.all were removed. [1][2]
  • Rule/config option breaking changes

    • noRestrictedGlobals: deniedGlobals changed from array → record/map (supports per-global custom messages). [1]
    • noUnusedVariables no longer reports unused function parameters (use noUnusedFunctionParameters). [1]
    • Deprecated rules were deleted (e.g. noConsoleLog, noInvalidNewBuiltin, etc.). [1]
    • useNamingConvention: removed enumMemberCase option (use conventions). [1]
  • Formatter / CLI option breaking changes

    • .json formatter no longer adds trailing commas even if json.formatter.trailingCommas=true. [1]
    • Formatting aligns with Prettier’s newer string-escape normalization behavior (can change output). [1]
    • Several formatter CLI options accept fewer enum values (e.g. --trailing-commas no longer accepts ES5/All/None, etc.). [1]
    • indentSize option (and related CLI flags) removed; use indentWidth. [1]
    • trailingComma option removed; use trailingCommas. [1]
    • biome check --apply/--apply-unsafe removed; use --write / --write --unsafe. [1]
  • JS syntax support

    • Import assertions assert { ... } are no longer supported; use with { ... }. [1][2]

Practical tip: run biome migrate --write after upgrading; it auto-updates many config-breaking changes (e.g., includes, deniedGlobals, removed/deprecated options/rules). [1][2]

Sources: Biome v2.0.0 changelog/version history [1], “Upgrade to Biome v2” guide [2].


Verify biome.json compatibility with v2.x configuration changes and run migration.

This major version upgrade (1.x → 2.x) includes breaking changes to configuration syntax. The CLI commands used (biome check and biome check --write) are compatible, but the biome.json configuration file requires updates:

  • Glob semantics changed (now resolved relative to config file, not working directory)
  • files.include/files.ignore replaced with includes array syntax
  • Various rule and severity adjustments

Since @lokalise/biome-config is already at v2.0.0, compatibility is maintained. After upgrading, run biome migrate --write to automatically update config-breaking changes.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@package.json` at line 48, The project bumped `@biomejs/biome` to v2.x which
introduces breaking config changes; update biome.json to the new v2 schema
(replace files.include/files.ignore with includes array, adjust rule/severity
keys, and verify glob patterns are relative to the config file), then run the
CLI migration and checks: execute biome migrate --write to apply automatic
changes and then run biome check and biome check --write to validate/fix
remaining issues; locate and update the biome.json config and re-run the
commands until no migration warnings remain.

"@lokalise/biome-config": "^2.0.0",
"@types/node": "^25.0.2",
"@types/tmp": "^0.2.6",
Expand Down
Loading