-
-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat!: update to eslint v9, flat config only #8
base: main
Are you sure you want to change the base?
Conversation
BREAKING CHANGE: This package now only exports flat config. For more information see the [eslint migration guide](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) and [flat config guide](https://eslint.org/blog/2022/08/new-config-system-part-2/). The README of this package has instructions for how to use this package with the new flat config system.
…nd MJS extensions
Progress update: The TODOs are worked away, but the configs and README still need fine-tuning to actually work with ESLint v9. I started trying out the /angular config and it isn't working yet as written in the README. I will have to go through every config setup and try it in the appropriate project setup and make sure the configs in neon work. Very open to other viewers / contributes / crawl helping in this process. TODO:
|
Please describe the changes this PR makes and why it should be merged:
Closes #9
This updates this repo to ESLint v9 and drops support for the legacy config style, only including the
flat
config style which is now the only supported config style for ESLint. This PR should be considered a breaking change! (v1.0.0 or v0.2.0, whichever you prefer)Some of the plugins that this config requires are not yet updated for ESLint v9, the list can be tracked here: eslint/eslint#18093. I also marked some of them in the code withTODO [V9 UPDATE]
. I aimed to ensure that at least the source code of this config itself can be linted with the current dependency versions.Regarding the swap from
eslint-plugin-i
toeslint-plugin-import-x
see: un-ts/eslint-plugin-import-x#29 (comment)I also dropped all the
js
files in the root in favour of Node export mapping because ESLint now has a minimum Node version of18.18.0
so we can safely use export mapping and declutter the repository a LOT.Lastly I also removed all the
husky
,is-ci
andpinst
dependencies because nohusky
scripts were set up, so it was just unnecessary bloat.Breaking change blurb for when doing a squash-and-merge: