coc-eslintとeslint@8.xの組み合わせが動かなかった話
本格的にTypeScriptの開発環境を整えようと色々していたのだが、coc-eslintが動いていないようだった。
JS界隈に詳しくないので、eslintをグローバルで入れてみたりWindows機とLinux機で試したりと色々していたが、:CocCommand eslint.showOutputChannel
してみると何やら不穏なエラーが出ている。
[Error - 2:20:01 AM] The eslint library loaded from (リポジトリルート)/node_modules/eslint/lib/api.js doesn't export a CLIEngine. You need at least eslint@1.0.0
原因はcoc-eslintとeslint@8.xの相性問題のようだった。
coc-eslintのissueによると、eslint@8.xのメジャーバージョンアップでcoc-eslintが依存していたAPIが削除されたことによる影響らしい。
Gitpodのissueでも言及されていた。
yarn remove eslint
した後、yarn add eslint@7.32.0
で無事lintが効くようになった。