実行環境
Windows10
VSCode version 1.84
はじめに
VSCode を October 2023 (version 1.84) にアップデートしたら、以下の警告がポップアップするようになりました。
この警告への対応と内容について簡単に説明します。
対応
settings.json から、以下の文字で始まる設定をすべて削除し警告を解除します。
- python.linting.*
- python.formatting.*
ユーザ設定用 settings.json ファイルは、 VSCode のコマンドパレットから settingsjson 等で検索して開くことができます。
その後、必要に応じて Pylint や Flake8 の拡張機能をインストールします。
警告の内容
You have deprecated linting or formatting settings for Python.
本記事のタイトルにしている上記の文は「Python という拡張機能で linting と formatting に関する非推奨の設定を使っている」と警告しています。(現在完了形ではなく現在形)
ポップアップ上の log のリンクをクリックすると VSCode のログが表示されます。
私の場合、以下のエラーログが見つかりました。
テキスト版
[error] Following setting is deprecated: "python.linting.flake8Enabled"
[error] All settings starting with "python.linting." are deprecated and can be removed from settings.
[error] Linting features have been moved to separate linter extensions.
[error] See here for more information: https://code.visualstudio.com/docs/python/linting
[error] Please install "flake8" extension: https://marketplace.visualstudio.com/items?itemName=ms-python.flake8
上記の通り、2行目に「python.linting. で始まるすべての設定は非推奨で settings から削除できます」と明記されています。
また親切にも、詳細へのリンクや代替の拡張機能へのリンクも載っています。
警告の詳細情報
警告のポップアップに載っている詳細情報ボタンをクリックすると、以下のページが開きます。
「Python という拡張機能の一部として提供していた機能を単独の拡張機能に分離しました(大意)」ということのようです。
掲載されている表には、削除した設定 (Setting Prefix) に対する代替策 (Alternative) が載っていて、Pylint や Flake8 などの機能を使いたい場合は、単独の拡張機能をインストールして使ってください等々が書かれています。
また、以下の VSCode リリースノートの Deprecated built-in linting and formatting features にもあるように、python.linting.* だけでなく python.formatting.* も非推奨の対象となっています。
おわりに
本記事のタイトルにある警告文に対する対応方法について書きました。
ここでは Deprecated を「非推奨」と訳しましたが、「廃止」という意味のほうが分かりやすいかもしれないですね。
それと、これを機にというわけではないですが、いっそ Ruff に乗り換えようかという迷いもあります。(というかたぶん乗り換えます)