😊

vscode-eslintのeslint.experimental.useFlatConfigが非推奨になっていた

2024/07/12に公開

はじめに

VS Code で実装していると.vscode/settings.jsonで以下のようなワーニングと出会いました。これはなんだ?

VS Codeで表示されたESLintのワーニング

どうやら ESLint Flat Config が登場した初期に設定していたeslint.experimental.useFlatConfigが非推奨になったようです。

本記事ではいつくらいから非推奨になったのかを調べてみます。

結果だけ欲しい人向けまとめ

  • ESLint v9 を利用している人は eslint.experimental.useFlatConfig を削除すれば良い
  • ESLint v8.57.0 and later を利用している人はeslint.useFlatConfigオプションを利用する
  • ESLint v8.57.0 以下の場合のみeslint.experimental.useFlatConfigオプションを利用する

vscode-eslint の Overview を眺める

VS Code ESLint extensionのページを眺めてみると v3.0.5 で更新されたことが分かります。以下引用です。

  • Support for the new ESLint flat config files has improved. The following changes have been implemented:
    • To use flat config files it is recommended to use ESLint version 8.57.0 or above.
    • There is a new eslint.useFlatConfig setting which is honored by ESLint version 8.57.0 and above. If one of those versions is used, the extension adheres to the ESLint Flat config rollout plan. The setting has the same meaning as the environment variable ESLINT_USE_FLAT_CONFIG. That means:
      • 8.57.0 <= ESLint version < 9.x: setting is honored and defaults to false.
      • 9.0.0 <= ESLint version < 10.x: settings is honored and defaults to true.
      • 10.0.0 <= ESLint version: setting is ignored. Flat configs are the default and can't be turned off.
    • The experimental settings eslint.experimental.useFlatConfig is deprecated and should only be used for ESLint versions >= 8.21 < 8.57.0.

上記のことから

  1. v9 以降はデフォルトで Flat config がオン
  2. v8.57.0 and later (< v9)はデフォルトで Flat config がオフ
  3. eslint.experimental.useFlatConfigは非推奨になった

ことが分かります。

設定方法

eslint.useFlatConfigの設定方法は以下の通りです。他オプションについても設定方法は同様です。

.vscode/settings.json
{
  "eslint.useFlatConfig": true,
}

おわりに

今回は VS Code ESLint extension の新しい Flat Config 対応を調査しました。
把握していないだけで結構進化してました、ウォッチするようにします。

Discussion