unstale

npm / oxlint

oxlint

What changed in oxlint 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.

4 breaking70 new APIs and options3 performance2 behavior and defaults108 tooling28 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

oxlint 1215 changes

Breaking changes 4

  • Comments are checked by default.

    1.79.0release notes

  • The rule is split into per-category rules, changing how React Compiler rules are configured.

    1.79.0release notes

  • Rejects invalid regex configuration for refactor/node/handle-callback-err.

    1.72.0release notes

  • The oxc_language_server binary was removed, so developers can no longer run it.

    1.37.0release notes

New APIs and options 70

  • Adds the allowWithVariables option to control the rule's behavior when variables are present.

    1.88.0release notes

  • Adds support for the allowCompoundComponents option to the react/only-export-components rule.

    1.86.0release notes

  • The rule supports the checkConditionalExpressions option.

    1.82.0release notes

  • Adds the one-var lint rule.

    1.78.0release notes

  • Adds options to the rule to match eslint.

    1.78.0release notes

  • Implements the id-denylist rule.

    1.76.0release notes

  • Adds the function-component-definition rule.

    1.75.0release notes

  • Adds the prefer-top-level-if-only-type-imports option to configure type-import specifier style.

    1.75.0release notes

  • Adds the no-top-level-await rule to detect top-level await.

    1.75.0release notes

  • Adds the namespaces option to eslint/no-inner-declarations.

    1.74.0release notes

  • Adds the disallowedValues option to the React forbid-dom-props rule.

    1.73.0release notes

  • Adds the allowAfterSpread option to the Unicorn no-array-sort rule.

    1.73.0release notes

  • Adds the ESLint rule no-unreachable-loop.

    1.73.0release notes

  • A schema was added for eslint/no-restricted-properties, enabling schema-based validation of its configuration.

    1.71.0release notes

  • Missing options were added to require-param-description.

    1.71.0release notes

  • Missing options were added to require-param-type.

    1.71.0release notes

  • The node/no-sync rule was implemented and is available to configure.

    1.71.0release notes

  • A schema was added for react/jsx-no-script-url, enabling schema-based validation of its configuration.

    1.71.0release notes

  • The unicorn/max-nested-calls rule was implemented and is available to configure.

    1.71.0release notes

  • The unicorn/prefer-number-coercion rule was implemented and is available to configure.

    1.71.0release notes

  • The vue/no-async-in-computed-properties rule was implemented and is available to configure.

    1.71.0release notes

  • Adds the allowedRedundantRoles option.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • The ignoreDirectives option is now supported.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • A schema is now available for configuring this rule.

    1.69.0release notes

  • Schemas were added for simple rule configurations and filled with rule configurations.

    1.69.0release notes

  • The checkArguments option is now supported.

    1.69.0release notes

  • The no-reserved-keys rule is now implemented.

    1.69.0release notes

  • The no-reserved-props rule is now implemented.

    1.69.0release notes

  • Adds the component-definition-name-casing Vue lint rule.

    1.68.0release notes

  • Adds the Unicorn import-style lint rule.

    1.67.0release notes

  • Adds the Vue lint rule valid-define-options.

    1.67.0release notes

  • The linter implements the react no-object-type-as-default-prop rule.

    1.66.0release notes

  • Adds the require-throws-description rule to require descriptions for thrown errors.

    1.65.0release notes

  • Overrides now support ignores, allowing ignore patterns to be specified within overrides.

    1.64.0release notes

  • Adds the respectEslintDisableDirectives option.

    1.62.0release notes

  • Jest version settings can now be configured in the config file.

    1.61.0release notes

  • Introduces denyWarnings config options.

    1.52.0release notes

  • Introduces the maxWarnings config option.

    1.52.0release notes

  • Adds options.reportUnusedDisableDirectives as a config-file option.

    1.52.0release notes

  • Adds preferUnplugged for Yarn PnP compatibility.

    1.51.0release notes

  • typeAware is introduced as a config option.

    1.51.0release notes

  • A typeCheck config option is introduced.

    1.51.0release notes

  • Adds a version setting to ReactPluginSettings.

    1.35.0release notes

  • Plugin names can be aliased, allowing names that match builtin plugins.

    1.34.0release notes

Performance 3

Behavior and default changes 2

  • JavaScript plugins are promoted to alpha status.

    1.55.0release notes

  • Comments are now permitted in .oxlintrc.json via the JSON schema file.

    1.26.0release notes

Tooling 108

  • Adds the typescript/no-generated-empty-object-type lint rule.

    1.86.0release notes

  • Adds the no-blank-blocks lint rule.

    1.78.0release notes

  • Adds the bad-match-all-arg rule.

    1.76.0release notes

  • Verifies the config schema for eslint/no-restricted-globals.

    1.76.0release notes

  • Implements the exports-style rule.

    1.76.0release notes

  • Verifies the config schema for jest/vitest prefer-lowercase-title.

    1.76.0release notes

  • Adds the Vitest padding rule by reusing the Jest rule implementation.

    1.75.0release notes

  • Adds the Unicorn rule explicit-timer-delay.

    1.73.0release notes

  • Adds the Unicorn rule no-confusing-array-with.

    1.73.0release notes

  • The rule now checks relational comparisons.

    1.73.0release notes

  • Adds per-rule timings for type-aware linting.

    1.73.0release notes

  • Adds a schema for eslint/no-restricted-import, enabling validation of its configuration.

    1.72.0release notes

  • A schema was added for eslint/prefer-destructuring, enabling schema-based validation of its configuration.

    1.71.0release notes

  • A schema was added for import/extensions, enabling schema-based validation of its configuration.

    1.71.0release notes

  • The node/no-mixed-requires rule was implemented and is available to configure.

    1.71.0release notes

  • A schema was added for unicorn/numeric-separators-style, enabling schema-based validation of its configuration.

    1.71.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for restricted-method rules.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds the React jsx-no-literals lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds the React Compiler lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a rule that flags array fill with a reference type.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds the Unicorn prefer-export-from lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds the Unicorn prefer-single-call lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • Adds the Vue no-dupe-keys lint rule.

    1.70.0release notes

  • Adds the Vue no-side-effects-in-computed-properties lint rule.

    1.70.0release notes

  • Adds the Vue require-default-prop lint rule.

    1.70.0release notes

  • The next-tick-style rule is now implemented.

    1.69.0release notes

  • The prop-name-casing rule is now implemented.

    1.69.0release notes

  • The require-direct-export rule is now implemented.

    1.69.0release notes

  • The require-prop-types rule is now implemented.

    1.69.0release notes

  • Adds the method-signature-style TypeScript lint rule.

    1.68.0release notes

  • Adds the no-reserved-component-names Vue lint rule.

    1.68.0release notes

  • Adds the prefer-named-capture-group ESLint rule.

    1.68.0release notes

  • Adds the require-prop-type-constructor Vue lint rule.

    1.68.0release notes

  • Adds the require-yields-description JSDoc lint rule.

    1.68.0release notes

  • Adds the n callback-return lint rule.

    1.67.0release notes

  • Supports vite-plus/resolveConfig for vite.config.ts.

    1.67.0release notes

  • Adds the Vue lint rule no-computed-properties-in-data.

    1.67.0release notes

  • Adds the Vue lint rule no-deprecated-props-default-this.

    1.67.0release notes

  • Adds the Vue lint rule no-expose-after-await.

    1.67.0release notes

  • Adds the Vue lint rule no-shared-component-data.

    1.67.0release notes

  • Adds the Vue lint rule no-watch-after-await.

    1.67.0release notes

  • Adds the Vue lint rule require-render-return.

    1.67.0release notes

  • Adds the Vue lint rule require-slots-as-functions.

    1.67.0release notes

  • Adds the Vue lint rule return-in-emits-validator.

    1.67.0release notes

  • Adds the Vue lint rule valid-next-tick.

    1.67.0release notes

  • The linter implements the id-match rule.

    1.66.0release notes

  • The linter implements the newline-after-import rule for imports.

    1.66.0release notes

  • The linter implements the no-implied-eval rule.

    1.66.0release notes

  • The linter implements the react no-unstable-nested-components rule.

    1.66.0release notes

  • The linter implements the padding-around-after-all-blocks rule for Vitest.

    1.66.0release notes

  • Adds support for eslint-plugin-jsx-a11y-x.

    1.65.0release notes

  • Adds the prefer-arrow-callback rule.

    1.65.0release notes

  • Types for DummyRule are enhanced, affecting developers who use it in typed code.

    1.58.0release notes

  • Adds the react/display-name rule for linting React display names.

    1.42.0release notes

  • The oxlint JSON schema now includes markdownDescription fields, providing Markdown descriptions for schema consumers.

    1.30.0release notes

  • oxlint and oxfmt allow comments and commas for vscode-json-ls.

    1.29.0release notes

  • Adds support for the vitest/valid-title rule.

    1.25.0release notes

Fixes and other changes 28

  • Capitalized built-in calls are now allowed.

    1.79.0release notes

  • The indirect default is aligned with ESLint.

    1.79.0release notes

  • Allowed snapshot matchers are precompiled.

    1.79.0release notes

  • Bare underscore parameters are now reported.

    1.79.0release notes

  • Inactive React compiler rules are resolved.

    1.79.0release notes

  • Configuration types now allow spread rule options.

    1.79.0release notes

  • Validates the description_format option.

    1.78.0release notes

  • Handles typed declarations when applying the prefer-destructuring rule.

    1.75.0release notes

  • Errors on ignorePatterns that cannot match files outside the config directory.

    1.74.0release notes

  • Resolves ignorePatterns relative to the config directory.

    1.74.0release notes

  • The allow and disallow lists are now optional in the rule schema.

    1.73.0release notes

  • The rule now validates config patterns.

    1.73.0release notes

  • The anchor-is-valid configuration was aligned with upstream.

    1.71.0release notes

  • A schema was added for node/callback-return, enabling schema-based validation of its configuration.

    1.71.0release notes

  • Allows options for this lint rule.

    1.70.0release notes

  • Avoids generating a config schema for this rule, then exposes its schema in a separate fix.

    1.70.0release notes

  • Verifies the configuration schema for this rule.

    1.70.0release notes

  • Adds a configuration schema for this lint rule.

    1.70.0release notes

  • The eslint/max-* rules now have the right schema.

    1.69.0release notes

  • The schema issue for rules without a config was fixed.

    1.69.0release notes

  • The config schema now allows a string for the Jest version.

    1.62.0release notes

  • The npm packages oxlint and oxfmt now export package.json, allowing consumers to access their package metadata.

    1.59.0release notes

  • Schema output no longer includes a useless | null for Option<T> fields.

    1.55.0release notes

  • Extra fields are prevented from being present in the oxlint config file.

    1.34.0release notes

  • The $schema field is now permitted in the .oxlintrc.json struct.

    1.34.0release notes

  • The JSON schema now denies additional properties for the categories enum.

    1.26.0release notes

  • The JSON schema now denies additional properties for the plugins enum.

    1.26.0release notes

  • Fixes JS plugins failing when extends is used.

    1.24.0release notes