Highlights
Here are some of the important changes in this release.
Exporting of new LegacyESLint
class
As we continue our transition to the flat config system, we’ve been working with integrators to understand how best to help them transition as well. While we provided the FlatESLint
class to allow integrations to start using the flat config system before it’s set to default, we discovered that our original plan (replace ESLint
with FlatESLint
in v9.0.0) would have left integrations unable to support eslintrc during the transition.
To fix this, we added the LegacyESLint
class as an export from /use-at-your-own-risk
. Both FlatESLint
and LegacyESLint
will be available through the v9.0.0 lifecycle, allowing integrators to continue to support both config formats. You can use these classes like this:
const { FlatESLint, LegacyESLint } = require("eslint/use-at-your-own-risk");
If you are using the ESLint
class in your integration, it’s a good idea to switch that to LegacyESLint
to make the upgrade to v9.0.0 as smooth as possible when it is released later this year.
The plan is to remove both FlatESLint
and LegacyESLint
classes in v10.0.0.
New configuration migration guide
We’ve published a new Configuration Migration Guide to help you make the switch from eslintrc to flat config formats. Flat config is now considered feature complete and it’s a good time to start switching over before flat config becomes the default in v9.0.0. This guide walks you through the various sections of your eslintrc file and shows how to convert them to flat config.
We’re grateful for the early adopters of the new config system who provided the feedback that makes up the core of this new guide.
Features
cdd063c
feat: Expose LegacyESLint in unsupported API (#17341) (Nicholas C. Zakas)d34abe5
feat: fix indent rule for else-if (#17318) (Milos Djermanovic)
Bug Fixes
b79b6fb
fix: Fix suggestion message inno-useless-escape
(#17339) (Francesco Trotta)c667055
fix: provide uniquefix
andfix.range
objects in lint messages (#17332) (Milos Djermanovic)
Documentation
89f3225
docs: add playground links to correct and incorrect code blocks (#17306) (Josh Goldberg ✨)f8892b5
docs: Expand rule option schema docs (#17198) (Matt Wilkinson)8bcbf11
docs: Config Migration Guide (#17230) (Ben Perlmutter)bb30908
docs: Update README (GitHub Actions Bot)84d243b
docs: Update README (GitHub Actions Bot)b762632
docs: Update README (GitHub Actions Bot)138c096
docs: add more prefer-destructuring examples with array destructuring (#17330) (Milos Djermanovic)1fc50a8
docs:max-len
rulecode
andtabWidth
as positional arguments (#17331) (Jesús Leganés-Combarro)
Chores
68f63d7
chore: package.json update for @eslint/js release (ESLint Jenkins)5ca9b4d
chore: update eslint-config-eslint exports (#17336) (Milos Djermanovic)7bf2e86
chore: remove unused dependencies (#17352) (Percy Ma)c6f8cd0
chore: RemovedefaultIgnores
from FlatESLint private members (#17349) (Francesco Trotta)0052374
chore: move jsdoc settings to eslint-config-eslint (#17338) (唯然)