Key Changes

Oxlint apps_v1.62.0 introduces significant updates, primarily focusing on linter rule expansion and stability. A major theme is the enhanced support for Vitest, with numerous Jest-specific rules now split into their Vitest counterparts (e.g., vitest/prefer-to-contain, vitest/no-mocks-import). This provides more granular and accurate linting for Vitest test suites.

New linter rules have been added across various ecosystems:

  • Vue: Rules like no-deprecated-delete-set and no-deprecated-events-api help identify and prevent the use of deprecated APIs.
  • React: New rules include react/no-did-update-set-state and forbid-component-props.
  • ESLint: func-name-matching and no-underscore-dangle are now implemented.

Internal AST breaking changes were introduced to reduce size, which may benefit performance. Several rules have been promoted from nursery to more stable categories (pedantic, correctness), indicating their maturity.

Bug Fixes

The update resolves several issues, including allowing string messages in Vitest’s valid-expect rule and correctly detecting Svelte TS and module scripts. False positives in accessibility rules like role-supports-aria-props and iframe-has-title have been corrected, improving linting accuracy. Fixers were added for no-non-null-asserted-nullish-coalescing and no-extra-non-null-assertions.

Impact for QA Teams

QA teams will benefit from more precise and reliable code quality checks, especially in projects utilizing Vitest, Vue, or React. The new rules help catch potential issues earlier in the development cycle, reducing the likelihood of bugs reaching testing phases. Improved accuracy of existing rules means fewer false positives, streamlining code reviews and focusing efforts on genuine issues.