eslint-plugin-angular
eslint-plugin-angular copied to clipboard
Update dependencies (ESLint v9 and test libraries)
Big PR, lots of changes, but I hope that you don't mind because the repo is not actively maintained anyway 💦
- Replace Travis with GitHub actions/workflows
- Update test libraries (mocha, chai, istanbul ➡️ nyl)
- Update tooling (replace Gulp with npm commands)
- Gulp on its own is quite heavy
- Wrapper plugins like gulp-eslint and gulp-istanbul are not really maintained and locked on older versions. I am a fan of Gulp, but in this case, using the CLI without extra dependencies is necessary to lower the maintenance cost for this kind of project.
- Remove the yarn lockfile, package-lock.json is more than enough
- Remove unused dependencies
- Update ESLint configuration and support v9 (https://eslint.org/docs/latest/use/migrate-to-9.0.0)
- I haven't tested in a real project though, I just fixed the unit tests for now
- I switched to the "recommended" configuration (I am a bit lazy to migrate the YAML version to be honest)
- I had to remove some test cases (https://eslint.org/docs/latest/use/migrate-to-9.0.0#stricter-rule-tester) because of this:
Test cases must be unique. Identical test cases can cause confusion and be hard to detect manually in a long test file. Duplicates are now automatically detected and can be safely removed.
I use this plugin at BandLab, so I don't mind spending some time on it if necessary. If you're looking for a maintainer, I volunteer! Last resort for me would be publishing my fork. I can break down the PR if you prefer, but I'm not sure if it's time-savvy.