ESLint v9.x end-of-life is 2026-08-06 and will not be maintained after that. Upgrade or consider long-term support options

ESLint v10.7.0 released

We just pushed ESLint v10.7.0, which is a minor release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release.

Highlights

New option checkConstructorCallCallbacks in max-nested-callbacks

The max-nested-callbacks rule now supports a checkConstructorCallCallbacks option. When enabled, the rule also counts callback functions passed to constructor calls with new, such as new Promise((resolve) => {}), when calculating nesting depth.

For example, with { "max": 1, "checkConstructorCallCallbacks": true }, the rule reports the following code as exceeding the allowed callback nesting depth:

run(() => {
    new Promise(resolve => resolve());
});

New option errorClassNames in preserve-caught-error

The preserve-caught-error rule now supports an errorClassNames option. This option lets you specify additional custom error class names that must preserve the original caught error by passing it as a cause.

For example, with { "errorClassNames": ["MyError"] }, the following code is reported because the thrown MyError does not include the original error as a cause, just like built-in error types must:

try {
    doSomething();
} catch (error) {
    throw new MyError("something went wrong");
}

Suggestions for no-compare-neg-zero

The no-compare-neg-zero rule now supports suggestions. Where appropriate, it suggests replacing -0 with 0 or using Object.is() instead of operators such as === or !==. For example, for an expression such as x === -0, the rule suggests x === 0 to preserve the existing comparison behavior, and Object.is(x, -0) to distinguish -0 from +0.

Features

Bug Fixes

Documentation

  • c30d808 docs: Update README (GitHub Actions Bot)
  • 5139800 docs: document ESLint migration codemods in v9 and v10 guides (#20980) (Alex Bit)
  • 04174cb docs: Update README (GitHub Actions Bot)
  • 026e130 docs: update semver policy for bug fixes (#21048) (Milos Djermanovic)
  • 9d42fef docs: Update README (GitHub Actions Bot)
  • b230159 docs: Update README (GitHub Actions Bot)
  • 0129972 docs: correct **/.js glob to **/*.js in config files guide (#21036) (EduardF1)

Chores

The latest ESLint news, case studies, tutorials, and resources.

ESLint v9.39.5 released
1 min read

ESLint v9.39.5 released

We just pushed ESLint v9.39.5, which is a patch release upgrade of ESLint. This release fixes several bugs found in the previous release.

CodeRabbit becomes ESLint gold sponsor
1 min read

CodeRabbit becomes ESLint gold sponsor

We are happy to announce that CodeRabbit is a gold sponsor of ESLint. We are grateful to Santosh Yadav, Principal Developer Advocate, and the whole CodeRabbit team.

ESLint v10.6.0 released
2 min read

ESLint v10.6.0 released

We just pushed ESLint v10.6.0, which is a minor release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release.