ESLintのキャッシュはファイルの依存関係を見ない
ので、typescript-eslintやeslint-plugin-importを使う場合は使ってはいけない!
ESLintにはeslint --cacheでLint結果をキャッシュできる
https://eslint.org/docs/latest/use/command-line-interface#caching
ファイルに変更があったかどうかでしか、そのファイルのLint結果としてキャッシュを使うかどうかを判断していない
しかし、プラグインのルールには他のファイルへの変更がLint結果に影響するものがある
型情報を使うtypescript-eslintのルールや、import先や元を見るeslint-plugin-importのルールとか
そういったルールに対して、ファイル単位のキャッシュを使うと正しいLint結果がでない
あるべき姿としては、モジュールの依存関係を見て、依存先のファイルの変更でもキャッシュミスべきである
のだが、ESLintにはそのためのAPIが無い
https://github.com/eslint/eslint/issues/19869
typescript-eslintのメンテナが提案しているが、特に反応が無いっぽい
Biomeはその辺ちゃん考慮しているっぽい
https://biomejs.dev/ja/blog/biome-v2/#multi-file-analysis-and-type-inference
#2025Aug