- Re-write LibUp to support flat file format config
- Convert .eslintrc.json files to flat file format, eslint.config.js
- Move .eslintignore files into ignores property of .eslintrc.json
- ???
Description
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Open | None | T364065 Migrate all Wikimedia repos to use ESLint 9 | |||
| Stalled | None | T267941 LibUp should automatically re-write .eslintrc.json files into the new .eslint.config.js format when using an appropriate (forthcoming) version of eslint |
Event Timeline
I wonder if, instead of being blocked on a re-write of LibUp to support js config files (maybe with inspiration from https://github.com/eslint/rewrite?), we could modify LibUp to open a Phabricator task with the team if it can't finish a run due to an eslint problem?
The rewrite could still happen later.
Current blockers are at the eslint-config-wikimedia level – eslint-plugin-jest, eslint-plugin-mocha, eslint-plugin-n, and eslint-plugin-vue all still have dependencies on eslint 8 not 9 in their latest versions, and at least eslint-plugin-security doesn't seem compatible with eslint 9 and there isn't even an open Issue upstream to fix that.
At this point the migration cost is so steep we might want to just switch away from eslint. :-(
<s>Can we use https://prettier.io/ (https://github.com/prettier/eslint-config-prettier) instead of deprecated eslint formatting rules? :)</s>
https://eslint.org/blog/2023/10/deprecating-formatting-rules/