255 文字
1 分

Q. 社内用eslint-configを入れ、ESLintをv8に上げたら、特定のルールでhasSuggestionを設定していないと言われる

2023-04-16

Q. ESLint を v8 に上げたら、特定のルールで hasSuggestion を設定していないと言われる#

状況#

まず ESLint は v8 からルールが変更を提案する際に hasSuggestion が必須になり、設定されていないとエラーが出るようになった。

https://eslint.org/docs/latest/use/migrate-to-8.0.0#-rules-require-metahassuggestions-to-provide-suggestions

しかし、今回は ESlint の記述やパッケージの管理を省くために導入された社用 eslint-config を利用しており、当然エラーが発生していた react-hooks/exhaustive-deps の eslint-plugin-react-hooks も hasSuggestion が設定されているバージョンをインストールするようになっていた。

https://github.com/facebook/react/blob/6b3083266686f62b29462d32de75c6e71f7ba3e3/packages/eslint-plugin-react-hooks/src/ExhaustiveDeps.js#L22

原因#

npm ls -aの実行をお願いしたところ、eslint-plugin-react-hooks の古いバージョンが明示的にインストールされていることが分かった。

社用 eslint-config は移行の際に、既存の plugin や config の依存関係を削除するように README に記載があったが、移行の際に対応が漏れてしまい、この問題が発生してしまったようだ。

Q. 社内用eslint-configを入れ、ESLintをv8に上げたら、特定のルールでhasSuggestionを設定していないと言われる
https://blog.ohirunewani.com/posts/eslint-config-hasSuggestion/
作者
hrdtbs
公開日
2023-04-16
ライセンス
CC BY-NC-SA 4.0