ESLint v8.x reached end-of-life on 2024-10-05 and is no longer maintained. Upgrade or consider long-term support options

ESLint v9.17.0 released

We just pushed ESLint v9.17.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

no-unused-vars Suggestions

The no-unused-vars rule provides suggestions now! When the rule sees code with an unused variable like this:

const a = "Hello";
const b = "World!";
console.log(a);

It will now suggest removing the unused variable declaration:

const a = "Hello";

console.log(a);

Suggestions also work for more complex cases like unused function arguments, destructuring syntax, etc.

function avg(a, b, c) {
return (a + b) / 2;
}

console.log(avg(12, 13, 25));

after the suggestion is applied becomes:

function avg(a, b) {
return (a + b) / 2;
}

console.log(avg(12, 13, 25));

and

const [{ status, value, reason }] = await Promise.allSettled([promise1, promise2]);

if (status === "rejected") {
throw reason;
}

after the suggestion becomes:

const [{ status, reason }] = await Promise.allSettled([promise1, promise2]);

if (status === "rejected") {
throw reason;
}

no-unused-vars suggestions mark the completion of months of work. We will likely further improve and fine-tune this feature in future updates.

Nullish message.fix Allowed

Previously, if a processor returned a LintMessage with a fix property set to undefined or null, ESLint would crash with an unhelpful error message when trying to apply the autofix. This problem has been fixed in the current release.

Features

Bug Fixes

Documentation

Chores

  • cc243c9 chore: upgrade to @eslint/js@9.17.0 (#19242) (Francesco Trotta)
  • 84c5787 chore: package.json update for @eslint/js release (Jenkins)
  • 4c4f53b chore: add missing backticks to flags.js (#19226) (루밀LuMir)
  • 4b3132c chore: update dependency eslint-plugin-expect-type to ^0.6.0 (#19221) (renovate[bot])
  • 9bf2204 chore: add type definitions for the eslint-config-eslint package (#19050) (Arya Emami)
  • ee8c220 chore: fix incorrect name property in integration-tutorial-code (#19218) (루밀LuMir)
  • cca801d chore: Upgrade cross-spawn to 7.0.6 (#19185) (folortin)

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

ESLint v9.16.0 released
2 min read

ESLint v9.16.0 released

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

ESLint v9.15.0 released
2 min read

ESLint v9.15.0 released

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

ESLint v9.14.0 released
2 min read

ESLint v9.14.0 released

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