[x] Tests for the changes have been added (for bug fixes / features)
[x] Documentation has been added / updated (for bug fixes / features)
PR Type
What kind of change does this PR introduce?
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[x] Documentation content changes
[ ] Other... Please describe:
What is the current behavior?
Closes #4365
What is the new behavior?
Does this PR introduce a breaking change?
[x] Yes
[ ] No
BREAKING CHANGE:
The configuration of several rules are changed, making the rules more strict (warnings became errors).
Configuration names are renamed to be more clear and follow the naming convention of other plugins.
For an overview of the configuration rules and available configurations see https://ngrx.io/guide/eslint-plugin.
Other information
After this PR, #4299 can be picked up.
The docs still need to be updated, which is something I plan to do in the next days/weeks.
Some highlights:
Public:
Supports ESLint v9 flat config as opt-in (available through @ngrx/eslint-plugin/v9)
Remove requiring-type-checking configurations, instead these are replaced with recommended (without type checking and thus faster) and all (including a few type requiring rules) configurations. This makes the configuration simpler.
Internal:
migrate @typescript-eslint/experimental-utils to @typescript-eslint/utils
remove eslint-etc: this library has become outdated (and some types were conflicting due to this)
update @typescript-eslint
reflect changes to types/config in generation scripts (for docs)
PR Checklist
Please check if your PR fulfills the following requirements:
PR Type
What kind of change does this PR introduce?
What is the current behavior?
Closes #4365
What is the new behavior?
Does this PR introduce a breaking change?
Other information
After this PR, #4299 can be picked up. The docs still need to be updated, which is something I plan to do in the next days/weeks.
Some highlights:
Public:
@ngrx/eslint-plugin/v9
)requiring-type-checking
configurations, instead these are replaced withrecommended
(without type checking and thus faster) andall
(including a few type requiring rules) configurations. This makes the configuration simpler.Internal:
@typescript-eslint/experimental-utils
to@typescript-eslint/utils
eslint-etc
: this library has become outdated (and some types were conflicting due to this)@typescript-eslint
It works π Left: ESLint v9 Right: ESLint v8