Flat config support / ESLint 9
Hi,
As of ESLint 8, there is now a new format for ESLint config files which requires that plugins follow a specific format. In ESLint 9, this format will be the only one available by default (and other API changes have occurred in ESLint 9 that may affect this plugin).
Info:
- https://eslint.org/docs/latest/use/configure/configuration-files-new
- https://eslint.org/blog/2022/08/new-config-system-part-1/
- https://eslint.org/blog/2022/08/new-config-system-part-2/
- https://eslint.org/docs/latest/use/configure/migration-guide
Thanks!
Thanks.
Initial rough view of changes required:
- Update https://github.com/robatwilliams/es-compat/blob/master/packages/check-es-compat/bin/cli.mjs to flat config and check impacts of migration guide
- Deal with changes from migration guide (inc. section on breaking changes for plugin developers e.g. RuleTester) and https://eslint.org/blog/category/release-notes/ (nothing looks concerning)
- Update project itself and example project to be linted by ESLint 9
Impact:
- check-es-compat CLI tool users don't care what ESLint version it uses
- Plugin can probably remain compatible with both ESLint 8 and 9
Would be good to remain under test for both v8 and v9 for a while, unless not it's too much work.
The plugin also throws an error if used with FlatConfig compatibility helpers. Even if it doesn't natively support FlatConfig, it would great to fix that in the interim.
I'm afraid I have barely any time spare for this project at the moment, and neither am I using this nor ESLint 9.
I see 9 was released 3 weeks ago although of course ideally I would have tested against the beta. But now more and more people will be upgrading.
If someone could post some detail about the problem with the compatibility helpers, it might help me judge whether it's something I could spot-fix when I have half an hour spare.
Actually I take it back. I can't reproduce the crash anymore. If I see it again, I'll come back with a reproduction. Apologies!