Highlights
This release backports from v9.x to v8.x two new features and several bug fixes related to the flat config system to help plugins, integrations and users migrate to flat config ahead of the final v9.0.0 release.
Support for eslint.config.mjs
and eslint.config.cjs
This release introduces support for eslint.config.mjs
and eslint.config.cjs
configuration files to v8.x in addition to eslint.config.js
, making it easier to use the module format you’d prefer regardless of the module format of the containing package.
New API loadESLint()
ESLint now exports a new function loadESLint()
from its main entry point. Integrations can use this function to get either the FlatESLint
class (ESLint
class in v9.x) or the ESLint
class (LegacyESLint
class in v9.x) and thus easily swap between flat config and eslintrc APIs.
Features
1120b9b
feat: Add loadESLint() API method for v8 (#18098) (Nicholas C. Zakas)dca7d0f
feat: Enableeslint.config.mjs
andeslint.config.cjs
(#18066) (Nitin Kumar)
Bug Fixes
2196d97
fix: handle absolute file paths inFlatRuleTester
(#18064) (Nitin Kumar)69dd1d1
fix: Ensure config keys are printed for config errors (#18067) (Nitin Kumar)9852a31
fix: deep merge behavior in flat config (#18065) (Nitin Kumar)4c7e9b0
fix: allow circular references in config (#18056) (Milos Djermanovic)
Documentation
84922d0
docs: Show prerelease version in dropdown (#18139) (Nicholas C. Zakas)5b8c363
docs: Switch to Ethical Ads (#18117) (Milos Djermanovic)77dbfd9
docs: show NEXT in version selectors (#18052) (Milos Djermanovic)