All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Please see the README for details of added rules.
- Use
eslint-plugin-cypress
version below 4, as versions from 4.0.0 onward require ESLint v9, which is not yet supported byeslint-plugin-criteo
.
- Disable the rule
no-call-expression
from@angular-eslint/eslint-plugin-template
to allow using signals
- Fix the rule
filename-match-export
: some export statements were (wrongly) ignored. Closes #31.
- Reorganize the README file to list rules in alphabetical order
- Revise the documentation for the
no-ngxs-select-decorator
rule - Include documentation links in error messages
- Mention that
isNil
is also available incriteo-angular-sdk
(private package)
- Fix the removal of deprecated configurations
- Removal of the rules
deny-constructor-di
andimport-inject-object
from@rdlabo/eslint-plugin-rules
because the auto-fix has too many issues:- It applies on irrelevant places cf rdlabo-team/eslint-plugin-rules#1 (comment)
- It gets lost with access modifiers cf rdlabo-team/eslint-plugin-rules#4
- It generates broken code cf rdlabo-team/eslint-plugin-rules#5
- Removal of deprecated configurations
- Enforce the usage of the
inject()
function for Dependency Injection in Angular with the rulesdeny-constructor-di
andimport-inject-object
from@rdlabo/eslint-plugin-rules
. - Enable the rule
no-empty-function
from@typescript-eslint
- Forbid importing
HttpInterceptor
from@angular/common/http
since functional HTTP interceptors should be preferred instead thanks to the ruleno-restricted-imports
from Typescript - Enable the rule
deprecation
fromeslint-plugin-deprecation
- Adapt the rules
filename
andngx-no-styles-in-component
to support thestyleUrl
property for Angular components
- [BREAKING] Angular 17 compatibility
- Rule
no-indexed-access-on-enums
disabled due to the bug #30 - Rule
ngx-component-display
now ignores components matching^.*(?:Dialog|Modal)Component$
(previously, only^.*DialogComponent$
were ignored)
- New rule
no-indexed-access-on-enums
- Fix rule
no-spreading-accumulators
with multiple spreads
- New rule
no-spreading-accumulators
- Define minimal Angular version (compatible with v13+)
- Removed Angular-specific rules from
recommended
to make it generic;recommended-react
now extendsrecommended
recommended-angular
extendsrecommended
and adds Angular-specific rules; this is then extended byrecommended-angular-app
andrecommended-angular-lib
- New rule
ngx-no-styles-in-component
recommended-app
: preferrecommended-angular-app
recommended-lib
: preferrecommended-angular-lib
recommended-template
: preferrecommended-angular-template
criteo/independent-folders
- Recommended rules from
eslint-plugin-eslint-comments
eslint-comments/require-description
- Override of
eslint-comments/disable-enable-pair
to allow whole-file disables
criteo/no-null-undefined-comparison
criteo/filename
now also checks the component folder name
criteo/no-ngxs-select-decorator
criteo/prefer-readonly-decorators
criteo/filename
criteo/filename-match-export
criteo/until-destroy
- React Lib rules
- Fix typo in
react-hooks
plugin
- Provide React rules
- [BREAKING] Upgrade Angular plugins to version 13 for compatibility with Angular 13
- [BREAKING] Move dependent plugins to peerDependencies so that they appear in the root node_modules (#15)
- [BREAKING] Update
engines
field in package.json to only allow npm versions >= 7
- Update
engines
field in package.json to allow node versions > 10
cypress-no-force
- Add FIXMEs to
no-todo-without-jira-ticket
no-todo-without-jira-ticket
- Upgrade @angular-eslint packages to v12.7.0
- Update project description in package.json
- Define repository and bug tracking URL in package.json
- Update README
- Update license in package.json
- Disable
rxjs/finnish
on functions and methods
@angular-eslint
: recommended rules and various other rules from this plugin@angular-eslint/template
:no-call-expression
and various accessibility rulescypress
: recommended rules andno-force
- Update README
rxjs
plugin: recommended rules andfinnish
- Enforce use of
untilDestroyed
when subscribing
recommended-template
config@angular-eslint/template
: recommended rules anduse-track-by-function
no-only-tests
rule
- Recommended rules from
eslint
andtypescript-eslint
- Upgrade
@typescript-eslint/parser
to v5.11.0
Initial version
recommended-app
andrecommended-lib
templates- Rules
ngx-component-display
andngxs-selector-array-length
- Rule
rxjs/no-unsafe-takeuntil
- Rules
simple-import-sort/exports
andsimple-import-sort/imports