ESLint v10.2.0 released

We just pushed ESLint v10.2.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

Language-aware rules

ESLint v10.2.0 adds support for language-aware rules through the new meta.languages property. Rule authors can now explicitly declare which languages a rule supports, and ESLint will throw a runtime error if that rule is enabled for an unsupported language, as specified by the language configuration option.

Here is an example of a rule that only supports the JavaScript language:

const rule = {
    meta: {
        type: "problem",
        docs: {
            description: "Example JavaScript rule",
        },
        languages: ["js/js"],
    },
    create(context) {
        return {};
    },
};

Currently, none of the ESLint built-in rules restrict the languages they are designed to work with, but this may change in the future.

More information about the meta.languages property can be found in the custom rules documentation.

Temporal support

With the Temporal proposal now at TC39 stage 4, ESLint v10.2.0 recognizes Temporal as a built-in global. As a result, the no-undef rule no longer flags Temporal under the default configuration:

/* eslint no-undef: "error" */

const now = Temporal.Now.instant(); // OK

In addition, the no-obj-calls rule now reports direct calls to the global Temporal object:

/* eslint no-obj-calls: "error" */

Temporal(); // Error: 'Temporal' is not a function.

Features

Bug Fixes

  • 542cb3e fix: update first-party dependencies (#20714) (Francesco Trotta)

Documentation

  • a2af743 docs: add language to configuration objects (#20712) (Francesco Trotta)
  • 845f23f docs: Update README (GitHub Actions Bot)
  • 5fbcf59 docs: remove sourceType from ts playground link (#20477) (Tanuj Kanti)
  • 8702a47 docs: Update README (GitHub Actions Bot)
  • ddeaded docs: Update README (GitHub Actions Bot)
  • 2b44966 docs: add Major Releases section to Manage Releases (#20269) (Milos Djermanovic)
  • eab65c7 docs: update eslint versions in examples (#20664) (루밀LuMir)
  • 3e4a299 docs: update ESM Dependencies policies with note for own-usage packages (#20660) (Milos Djermanovic)

Chores

  • 8120e30 refactor: extract no unmodified loop condition (#20679) (kuldeep kumar)
  • 46e8469 chore: update dependency markdownlint-cli2 to ^0.22.0 (#20697) (renovate[bot])
  • 01ed3aa test: add unit tests for unicode utilities (#20622) (Manish chaudhary)
  • 811f493 ci: remove --legacy-peer-deps from types integration tests (#20667) (Milos Djermanovic)
  • 6b86fcf chore: update dependency npm-run-all2 to v8 (#20663) (renovate[bot])
  • 632c4f8 chore: add prettier update commit to .git-blame-ignore-revs (#20662) (루밀LuMir)
  • b0b0f21 chore: update dependency eslint-plugin-regexp to ^3.1.0 (#20659) (Milos Djermanovic)
  • 228a2dd chore: update dependency eslint-plugin-eslint-plugin to ^7.3.2 (#20661) (Milos Djermanovic)
  • 3ab4d7e test: Add tests for eslintrc-style keys (#20645) (kuldeep kumar)

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

ESLint v10.1.0 released
2 min read

ESLint v10.1.0 released

We just pushed ESLint v10.1.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.39.4 released
1 min read

ESLint v9.39.4 released

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

ESLint v10.0.3 released
1 min read

ESLint v10.0.3 released

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