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

ESLint v3.18.0 released

We just pushed ESLint v3.18.0, which is a minor release upgrade of ESLint. This release adds a new feature and fixes several bugs found in the previous release.

Highlights

This release adds support for AST selectors. AST selectors can describe syntax patterns very precisely, using a similar syntax to CSS selectors. Selectors can be used to:

  • simplify the implementation of custom rules.
  • disallow particular syntax patterns in a codebase using the no-restricted-syntax rule.

For example, suppose you want to disallow calls to Mocha’s xdescribe function in your codebase. Previously, it was not possible to do this without writing a custom rule. However, now you can configure the no-restricted-syntax rule with a selector:

{
"rules": {
"no-restricted-syntax": [
"error",
"CallExpression[callee.name='xdescribe']"
]
}
}

Selectors can give you a lot of control over specific patterns in your code, without needing to write a custom rule for each pattern.

For more details, see the selector documentation.

Features

  • 1b678a6 New: allow rules to listen for AST selectors (fixes #5407) (#7833) (Teddy Katz)

Enhancements

Bug Fixes

Documentation

Dependency Upgrades

Chores

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

Differences between ESLint and TypeScript
7 min read

Differences between ESLint and TypeScript

Linters such as ESLint and type checkers such as TypeScript catch different areas of code defects and are best used in conjunction with each other.

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.