ESLint v8.x end-of-life is 2024-10-05 and will not be maintained after that. Upgrade or consider long-term support options

ESLint v8.37.0 released

We just pushed ESLint v8.37.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

  • Rules can now use SourceCode#getScope(node) to get the scope of the given node. The node argument is mandatory. This method works the same as context.getScope() but isn’t limited to the currently traversed node. The context.getScope() method is now considered deprecated in favor of SourceCode#getScope(node). This change is part of the implementation of language plugins.
  • Parsers and plugins can now export a meta object with name and version properties to allow for easier debugging and more effective caching. In the new config system, ESLint uses these values when serializing configuration objects (for example, the –print-config CLI option) and when determining whether cached lint results (the --cache CLI option) are still valid. If a parser/plugin provides meta, ESLint can now invalidate caches when a new version of the parser/plugin is installed.
  • In the new config system, languageOptions.parser must now be a parser object. Referencing parsers by "pluginName/parserName" is no longer supported.
  • The require-unicode-regexp rule now provides suggestions for some of the problems it reports.

Features

Bug Fixes

Documentation

Chores

  • c67f299 chore: upgrade @eslint/js@8.37.0 (#17033) (Milos Djermanovic)
  • ee9ddbd chore: package.json update for @eslint/js release (ESLint Jenkins)
  • dddb475 chore: upgrade @eslint/eslintrc@2.0.2 (#17032) (Milos Djermanovic)
  • 522431e chore: upgrade espree@9.5.1 (#17031) (Milos Djermanovic)
  • f5f9a88 chore: upgrade eslint-visitor-keys@3.4.0 (#17030) (Milos Djermanovic)
  • 4dd8d52 ci: bump actions/stale from 7 to 8 (#17026) (dependabot[bot])
  • ad9dd6a chore: remove duplicate scss, (#17005) (Strek)
  • ada6a3e ci: unpin Node 19 (#16993) (Milos Djermanovic)
  • c3da975 chore: Remove triage label from template (#16990) (Nicholas C. Zakas)
  • 69bc0e2 ci: pin Node 19 to 19.7.0 (#16987) (Milos Djermanovic)

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

Trunk becomes ESLint gold sponsor
1 min read

Trunk becomes ESLint gold sponsor

We are happy to announce that Trunk is a gold sponsor of ESLint. We are grateful to founders Eli Schleifer and David Apirian, as well as the whole Trunk team.

ESLint v9.9.1 released
1 min read

ESLint v9.9.1 released

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

ESLint v9.9.0 released
1 min read

ESLint v9.9.0 released

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