@biomejs/biome@2.3.13
biomejs/biome@biomejs/biome@2.3.13Jan 26, 2026by github-actions[bot]
AI Summary
A patch release improving Vue directive validation, Tailwind parsing capabilities, and fixing the `biome migrate eslint` command to detect rules across all languages.
Key Highlights
- Improved `useVueValidVOn` to support more keyboard event modifiers.
- Fixed parsing of Vue dynamic slot shorthand arguments and Tailwind `@utility` directives.
- Fixed `biome migrate eslint` to correctly detect rules for CSS, GraphQL, and HTML.
- Fixed summary reporter incorrectly merging issue counts.
- Added new nursery rule `use-consistent-enum-value-type` to disallow mixed number/string enum members.
New Features
- Enhanced Vue and Tailwind language support.
- Improved migration tooling for ESLint users.
- New rule to enforce consistent enum value types.
Full Release Notes
## 2.3.13 ### Patch Changes - [#8815](https://github.com/biomejs/biome/pull/8815) [`f924f23`](https://github.com/biomejs/biome/commit/f924f234607ae62db1511158b36124ec0d5ce074) Thanks [@dyc3](https://github.com/dyc3)! - Improved [`useVueValidVOn`](https://biomejs.dev/linter/rules/use-vue-valid-v-on/) to be more closely aligned with the source rule. It will now properly allow modifiers for all possible keyboard events. It should have better performance when there are no violations of the rule as well. Now treated valid: ```vue <div @keydown.arrow-down="handler"></div> <div @keydown.a="handler"></div> <div @keydown.b="handler"></div> <div @keydown.27="foo"></div> ``` - [#8856](https://github.com/biomejs/biome/pull/8856) [`85f81f9`](https://github.com/biomejs/biome/commit/85f81f98923770469d09c5d003cfb76c0f3c971f) Thanks [@dyc3](https://github.com/dyc3)! - Fixed [#8710](https://github.com/biomejs/biome/issues/8710): Biome now parses Vue dynamic slot shorthand arguments that use template literals in `[]`. - [#8850](https://github.com/biomejs/biome/pull/8850) [`2a190e0`](https://github.com/biomejs/biome/commit/2a190e0719ac447236afae0df8c915033c08e059) Thanks [@dyc3](https://github.com/dyc3)! - Fixed [#8708](https://github.com/biomejs/biome/issues/8708): Tailwind `@utility` directives now parse functional utility names like `px-*` when Tailwind directives are enabled. - [#8863](https://github.com/biomejs/biome/pull/8863) [`79386e0`](https://github.com/biomejs/biome/commit/79386e08050d498c2cea6cdcaba4b0fa31245209) Thanks [@dyc3](https://github.com/dyc3)! - Fixed an issue with `biome migrate eslint` where it couldn't detect rules for CSS, GraphQL, and HTML. - [#8771](https://github.com/biomejs/biome/pull/8771) [`6f56b6e`](https://github.com/biomejs/biome/commit/6f56b6eeb961ca63fad601fc35b3b28df08cc247) Thanks [@lghuahua](https://github.com/lghuahua)! - Fix the `--reporter=summary` output incorrectly merging and displaying wrong issue counts for different rules. Fixes [#8730](https://github.com/biomejs/biome/issues/8730) - [#8714](https://github.com/biomejs/biome/pull/8714) [`ac3a71f`](https://github.com/biomejs/biome/commit/ac3a71f8f856d267159e24ccc75e1913776d92f5) Thanks [@Netail](https://github.com/Netail)! - Added new nursery rule [`use-consistent-enum-value-type`](https://biomejs.dev/linter/rules/use-consistent-enum-value-type). This rule disallows enums from having both number and string members. ## What's Changed * fix(dx/codegen): don't insert module into `biome_rule_options/src/lib.rs` if it already exists by @dyc3 in https://github.com/biomejs/biome/pull/8847 * feat(js_analyze): implement useConsistentEnumValueType by @Netail in https://github.com/biomejs/biome/pull/8714 * fix(parse/html/vue): parse dynamic slot directives that contain quotes by @dyc3 in https://github.com/biomejs/biome/pull/8856 * fix(parse/css): improve parsing of `@utility` names by @dyc3 in https://github.com/biomejs/biome/pull/8850 * fix(cli): improve RuleName ordering and update summary snapshots close #8730 by @lghuahua in https://github.com/biomejs/biome/pull/8771 * fix(useVueValidVOn): align more with source rule, also use phf hash sets for perf by @dyc3 in https://github.com/biomejs/biome/pull/8815 * fix(migrate): fix migrate command not picking up rules for css, graphql, html by @dyc3 in https://github.com/biomejs/biome/pull/8863 * chore(deps): update dependency tombi to v0.7.23 by @renovate[bot] in https://github.com/biomejs/biome/pull/8865 * chore(deps): update pnpm to v10.28.1 by @renovate[bot] in https://github.com/biomejs/biome/pull/8866 * chore(deps): update rust crate proc-macro2 to 1.0.106 by @renovate[bot] in https://github.com/biomejs/biome/pull/8867 * chore(deps): update rust crate quote to 1.0.44 by @renovate[bot] in https://github.com/biomejs/biome/pull/8868 * fix(deps): update @biomejs packages by @renovate[bot] in https://github.com/biomejs/biome/pull/8869 * chore(deps): update rust crate schemars to 1.2.0 by @renovate[bot] in https://github.com/biomejs/biome/pull/8875 * chore(deps): update @biomejs packages by @renovate[bot] in https://github.com/biomejs/biome/pull/8872 * chore(deps): update github-actions by @renovate[bot] in https://github.com/biomejs/biome/pull/8873 * chore(deps): update typescript-eslint monorepo to v8.53.1 by @renovate[bot] in https://github.com/biomejs/biome/pull/8877 * fix(deps): update dependency prettier to v3.8.1 by @renovate[bot] in https://github.com/biomejs/biome/pull/8878 * chore(deps): update rust crate tokio to 1.49.0 by @renovate[bot] in https://github.com/biomejs/biome/pull/8876 * ci: release by @github-actions[bot] in https://github.com/biomejs/biome/pull/8853 ## New Contributors * @lghuahua made their first contribution in https://github.com/biomejs/biome/pull/8771 **Full Changelog**: https://github.com/biomejs/biome/compare/@biomejs/biome@2.3.12...@biomejs/biome@2.3.13