ESLint
Dev ToolsFind and fix problems in your JavaScript code.
Release History
v10.0.0-rc.0v9.39.21 fixThis release introduces warnings for deprecated eslint-env configuration comments and updates internal dependencies to @eslint/js@9.39.2.
v10.0.0-beta.0Breaking4 fixes1 featureThis release introduces breaking changes to terminal styling and JSX reference tracking, alongside several TypeScript typing fixes and a new error assertion feature.
v10.0.0-alpha.1Breaking2 fixes2 featuresThis release introduces breaking changes including the removal of deprecated SourceCode methods, stricter RuleTester assertions, and a major update to the minimatch dependency, alongside improved error locations for specific rules.
v10.0.0-alpha.0Breaking3 fixes5 featuresESLint v10 introduces significant breaking changes including the removal of .eslintrc support, updated Node.js requirements, and the removal of deprecated rule context methods. It also updates the recommended configuration and tightens several rule schemas.
v9.39.11 fixThis release focuses on a bug fix for JavaScript language visitor methods and updates internal dependencies, specifically @eslint/js to version 9.39.1.
v9.39.08 fixes3 featuresThis release focuses on refining error locations for several rules, improving TypeScript typings, and fixing bugs related to concurrent linting and JSDoc handling.
v9.38.02 fixes2 featuresThis release improves the complexity rule's reporting, fixes false positives in no-loss-of-precision, and enhances TypeScript support for SourceCode and pnpm environments.
v9.37.03 fixes2 featuresThis release introduces TypeScript support for import restrictions and improves error-cause recognition, alongside bug fixes for precision loss detection and ESLint typings.
v9.36.04 fixes1 featureThis release focuses on improving TypeScript type definitions for rules and scopes, along with a fix for the preserve-caught-error rule. It also includes internal refactoring to use meta.defaultOptions and updates documentation to favor defineConfig.
v9.35.05 fixes3 featuresThis release introduces the preserve-caught-error rule and adds suggestions to no-empty-function and no-empty-static-block. It also includes several bug fixes for rule types and false positives, alongside internal refactoring to remove deprecated context.parserOptions usage.
v9.34.03 fixes2 featuresThis release introduces multithreaded linting and adds eslint-plugin-regexp to the base config, alongside several bug fixes for rule definitions and scientific notation parsing.
v9.33.02 fixes2 featuresThis release introduces global object access detection for restricted globals and support for explicit resource management in the one-var rule, alongside bug fixes for custom rule metadata and internal file handling.
v9.32.06 fixes2 featuresThis release introduces support for explicit resource management and TypeScript types in accessor rules, alongside critical security dependency updates and internal refactoring of the reporting system.
v9.31.02 fixes5 featuresThis release introduces support for explicit resource management across several core rules and improves RuleTester output. It also includes a fix for EMFILE errors during autofixing and updates internal dependencies like Mocha and @eslint/js.
v9.30.11 fixThis release includes a bug fix for handling separate default and named type imports and updates the @eslint/js dependency to version 9.30.1.
v9.30.0Breaking4 fixes3 featuresThis release introduces the basePath config property and a new option for no-duplicate-imports, while also hardening the getIndexFromLoc method with better error handling and null checks.
v9.29.04 fixes8 featuresThis release introduces support for ECMAScript 2026 (including 'using' declarations) and ES2025 globals, alongside several rule enhancements and internal refactorings like the transition from SafeEmitter to SourceCodeVisitor.
v9.28.05 fixes8 featuresThis release introduces enhanced TypeScript syntax support across several core rules and adds a new CLI option for unpruned suppressions. It also includes internal refactoring of the event generator and updates to global variable handling.
v9.27.06 fixes6 featuresThis release introduces the no-unassigned-vars rule, adds TypeScript support to max-params, and enables ESLINT_FLAGS environment variable support. It also includes several TypeScript type definition refinements and internal refactorings.
v9.26.04 fixes4 featuresThis release introduces an MCP server, adds suggestions to the eqeqeq rule, and includes several rule enhancements and type-related bug fixes.
v9.25.11 fixThis release includes a bug fix for the no-unused-expressions rule regarding directive detection and updates the @eslint/js dependency to version 9.25.1.
v9.25.01 fix6 featuresThis release primarily expands TypeScript syntax support across several core rules and introduces the JSRuleDefinition type. It also includes a fix for NodeEventGenerator and various documentation improvements.
v9.24.02 fixes8 featuresThis release introduces support for loading TypeScript configuration files via experimental flags and expands TypeScript syntax support across several core rules. It also includes a new mechanism to suppress violations and various bug fixes for rule messaging and type definitions.
v9.23.05 fixes5 featuresESLint v9.23.0 introduces TypeScript syntax support for several core rules, adds circular autofix detection, and enhances the defineConfig utility for flat configurations.
v9.22.02 fixes1 featureThis release introduces exported configuration utilities like defineConfig and globalIgnores, alongside improvements to error messaging and dependency updates for @eslint/js and eslint-scope.
v9.21.02 fixes2 featuresThis release introduces the --ext CLI option and new deprecated rule types, while improving error handling by preventing process exits on rule crashes.
v9.20.11 fixThis release focuses on a fix for the RuleContext type and several documentation improvements, including search functionality enhancements and pnpm compatibility instructions.
v9.20.06 fixes1 featureThis release focuses on improving error messaging for configuration and plugin issues, fixing rule-specific bugs in consistent-this and arrow-body-style, and updating internal dependencies.
v9.19.02 fixes1 featureThis release introduces a new CLI flag to report unused inline configurations and includes extensive documentation updates, including clarifications for overrideConfig and global ignores.
v9.18.01 fix3 featuresThis release unflags TypeScript configuration files and enhances the 'no-console' and 'no-shadow-restricted-names' rules. It also includes a significant number of documentation updates, including a shift from 'var' to 'let/const' in examples.