Changelog

biomejs/biome · · 13 commits

Biome adds a wave of Vue lint rules

A feature-heavy day: 9 new Vue/HTML lint rules landed, plus config, migration, and docs plumbing across the stack.

Nine new Vue/HTML lint rules land across Biome

Biome added a large batch of nursery lint rules covering Vue correctness and deprecation cases, including noVueRestrictedCallAfterAwait (dyc35044c56), noVueUndeclaredEmits (dyc31d4ed92), noVueDeprecatedPropsDefaultThis (dyc3e998921), noVueDeprecatedSlotScope (dyc34347302), noVueLoneTemplate (dyc3c3dc557), noVueVForTemplateKeyOnChild (dyc359838bb), noVueMixin (dyc34b1089d), useVueSlotNameCasing (dyc33d92356), and useVueValidDefineOptions (dyc3071324d). These rules expand Biome’s Vue support in a meaningful way, catching deprecated APIs, invalid macro usage, and template patterns that can produce broken or misleading Vue behavior.

useVueRenderReturn enforces render paths

The new useVueRenderReturn rule (dyc3e69572b) checks that Vue component render() functions return a value on every path. The implementation also adjusts control-flow handling to support the rule, making it a deeper semantic lint addition than a simple pattern check.

rules_check gains Vue semantic model support

Biome refactored rule documentation/model generation so rules_check builds and uses Vue semantic models (dyc3e2a5cdb). That change updates the ruledoc pipeline and service database plumbing, which should improve how Vue rules are analyzed and documented going forward.

Other misc changes

  • Rule migration mappings added for the new Vue rules.
  • Configuration/schema and diagnostics category updates for new rule names.
  • Small rule-option and test-only follow-ups.
  • A minor naming-convention bug fix for typeMember matching type parameters (Bsibz37440f9).