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

ESLint v2.9.0 released

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

Highlights

This is a summary of the major changes you need to know about for this version of ESLint.

Improved Autofix

This release features a new version of autofix. Now, when you use the --fix option, ESLint will make multiple passes over your code in an attempt to fix as many issues as possible. As a result, autofix will take more time now than it did previously, but we believe that this change will ultimately result in less developer time spent fixing things that can be automatically fixed by ESLint.

Additionally, due to implementing multipass autofix, we were able to extend autofix to more rules. The following rules now will be autofixed:

New Rules

This version introduces some new rules:

Features

  • e606523 New: Rule no-unsafe-finally (fixes #5808) (#5932) (Onur Temizkan)
  • a01b412 New: Add no-useless-computed-key rule (fixes #5402) (Burak Yigit Kaya)

Enhancements

  • e2ad1ec Update: object-shorthand lints computed methods (fixes #5871) (#5963) (Chris Sauvé)
  • 51ddd4b Update: Use process @abstract when processing @return (fixes #5941) (#5945) (Simon Schick)
  • 52a4bea Update: Add autofix for no-whitespace-before-property (fixes #5927) (#5951) (alberto)
  • 586478e Update: Add autofix for comma-dangle (fixes #3805) (#5925) (alberto)
  • cb78585 Update: Add allowUnboundThis to prefer-arrow-callback (fixes #4668) (Burak Yigit Kaya)
  • 19f6fff Update: Autofixing does multiple passes (refs #5329) (Nicholas C. Zakas)
  • 2b39461 Update: commentPattern option for default-case rule (fixes #5803) (Artyom Lvov)

Bug Fixes

  • a8a2cd8 Fix: Avoid autoconfig crashes from inline comments (fixes #5992) (#5999) (Ian VanSchooten)
  • 141b778 Fix: no-control-regex literal handling fixed. (fixes #5737) (#5943) (Efe Gürkan YALAMAN)
  • 577757d Fix: Clarify color option (fixes #5928) (#5974) (Grant Snodgrass)
  • 1e7a3ef Fix: id-match false positive in property values (fixes #5885) (#5960) (Mike Sherov)
  • f842d18 Fix: no-this-before-super crash on unreachable paths (fixes #5894) (Toru Nagashima)
  • f1b2992 Fix: no-useless-escape false positive in JSXAttribute (fixes #5882) (Toru Nagashima)
  • a9c5323 Fix: Install ESLint on init if not installed (fixes #5833) (Kai Cataldo)

Documentation

  • e7e6581 Docs: Update CLA link (#5980) (Gustav Nikolaj)
  • 46e058d Docs: Correct typo in configuring.md (#5957) (Nick S. Plekhanov)
  • 43f6d05 Docs: Update docs to refer to column (#5937) (Sashko Stubailo)
  • a4f9c5a Docs: Distinguish examples in rules under Stylistic Issues part 3 (Kenneth Williams)
  • 249eb40 Docs: Clarify init sets up local installation (fixes #5874) (Kai Cataldo)
  • 6cd8c86 Docs: Describe options in rules under Possible Errors part 1 (Mark Pedrotti)
  • a02960b Docs: Fix missing delimiter in README links (Kevin Partington)
  • 3a9e72c Docs: Update developer guide with new standards (Nicholas C. Zakas)
  • 74674ad Docs: Move sort-imports to ‘ECMAScript 6’ (Kenneth Williams)
  • ae69ddb Docs: Fix severity type in example (Kenneth Williams)
  • 1e4b0ca Docs: Reduce length of paragraphs in rules index (Mark Pedrotti)
  • 8cfe1eb Docs: Fix a wrong option (Zach Orlovsky)
  • 8f6739f Docs: Add alberto as reviewer (alberto)
  • 2ae4938 Docs: Fix message for inline-config option (alberto)
  • 089900b Docs: Fix a wrong rule name in an example (Toru Nagashima)
  • c032b41 Docs: Fix emphasis (Toru Nagashima)
  • ae606f0 Docs: Update JSCS info in README (alberto)
  • ed38358 Docs: Removed incorrect example (James M. Greene)
  • af3113c Docs: Fix config comments in indent docs (Brandon Mills)

Dependency Upgrades

Chores

  • 42d1ecc Chore: Add metadata to existing rules - Batch 7 (refs #5417) (#5969) (Vitor Balocco)
  • d24516a Chore: Add metadata to existing rules - Batch 6 (refs #5417) (#5966) (Vitor Balocco)
  • 5f8abab Chore: Add metadata to existing rules - Batch 5 (refs #5417) (#5944) (Vitor Balocco)
  • 0562f77 Chore: Add missing newlines to test cases (fixes #5947) (Rich Trott)
  • fc78e78 Chore: Enable quote-props rule in eslint-config-eslint (refs #5188) (#5938) (Gyandeep Singh)
  • e7c0737 Chore: Enable no-console rule in eslint-config-eslint (refs #5188) (Kevin Partington)
  • 9afb9cb Chore: Remove workaround for espree and escope bugs (fixes #5852) (alberto)
  • 3ffc582 Chore: Update copyright and license info (alberto)
  • 02be29f Chore: Remove CLA check from bot (Nicholas C. Zakas)
  • 220713e Chore: Add metadata to existing rules - Batch 4 (refs #5417) (Vitor Balocco)
  • df53414 Chore: Include jQuery Foundation info (Nicholas C. Zakas)

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

ESLint v9.17.0 released
2 min read

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.

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.