feat(eslint): migrate to ESLint v10 - #821
Conversation
|
You have run out of free Bugbot PR reviews for this billing cycle. This will reset on March 26. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |
|
@YusukeHirao linters/packages/@d-zero/eslint-plugin/package.json Lines 24 to 35 in 7086954 関連して、@typescript-eslint/utils が v8.53.1 になっていますが、その peerDependencies で eslint v10 が含まれていないようでして、ただ今の yarn.lock では(おそらく他パッケージの依存によって)@typescript-eslint/utils の v8.56.1 が eslint v10 を含んでいるようです。 |
|
@YusukeHirao の peerDependencies で eslint が v9 までしか明記されていないようです。 最新(今だと v4.7.1)の @eslint-community/eslint-plugin-eslint-comments だと v10 も明記されています。 |
|
@arktds
あわせて dev とのコンフリクト解消時に import-x / jsdoc / regexp / sort-class-members / vue-eslint-parser も Renovate の最新版に揃えて、build / lint / test 全部通ってます。 |
- Update eslint to v10.0.0 and @eslint/js to v10.0.1 - Replace eslint-plugin-eslint-comments with @eslint-community/eslint-plugin-eslint-comments - Add @eslint/compat and wrap v10-incompatible plugins with fixupPluginRules (import-x, jsdoc, comments, sort-class-members) - Remove deprecated @typescript-eslint/no-var-requires rule
…transform-properties
…for v10 support @typescript-eslint/utils, parser and rule-tester at 8.53.1 don't declare eslint v10 in their peerDependencies; bump all to the latest 8.67.0 which does. Also bump the devDependency eslint to the latest 10.8.1.
@eslint-community/eslint-plugin-eslint-comments 4.6.0 doesn't declare eslint v10 support in its peerDependencies (added in 4.7.0); bump to the latest 4.7.2. Also bump eslint to 10.8.1 and typescript-eslint to 8.67.0 to match @d-zero/eslint-plugin.
f7ac972 to
fd30858
Compare
# Conflicts: # packages/@d-zero/eslint-plugin/package.json # yarn.lock
Rename abbreviated parameter names (name-replacements) and suppress no-this-outside-of-class where the css-tree parser API binds `this` to the parser context by design, not a class instance.
Rename abbreviated variable names (name-replacements) and extract the per-command-type logic into a function to avoid ambiguous continue statements in nested loops (no-break-in-nested-loop).
…slint-plugin-unicorn eslint-plugin-jsdoc and typescript-eslint were kept below their latest published version because npm quarantines packages published within the last 24-72 hours.
…-unicorn v74 The rule now ignores calls whose value is explicitly discarded with void, so the node fixture no longer triggers on `void asyncFn();`. Drop the void operator so the fixture still demonstrates a floating top-level async call that should be flagged.
Rename abbreviated identifiers (name-replacements), replace an existence-check-then-access with a single lookup (no-computed-property-existence-check), extract a nested-loop body into a predicate function (no-break-in-nested-loop), rename a non-boolean function away from a boolean-implying prefix (consistent-boolean-name), merge adjacent if statements into if/else (prefer-else-if), and split array-in-object destructuring across two statements in tests (no-unreadable-object-destructuring).
…lock-comment-style
|
Summary
eslint-plugin-eslint-commentsを非推奨のため@eslint-community/eslint-plugin-eslint-commentsに置換@eslint/compatのfixupPluginRulesで v10 未対応プラグイン(import-x, jsdoc, comments, sort-class-members)をラップ@typescript-eslint/no-var-requiresを削除no-useless-assignmentで検出されたprefer-individual-transform-propertiesのコードを修正Test plan
yarn lint:eslintが通ることprefer-individual-transform-propertiesのユニットテスト(13件)が通ること