web-dev-qa-db-ja.com

pylintで「TODO」警告を無効にするにはどうすればよいですか?

pythonファイルでpylintを実行すると、デフォルトでTODOコメントに関する警告が表示されます。例:

*************モジュールfoo
W:200、0:TODO(SE):これを修正してください! (fixme)
W:294、0:TODO(SE):バックログアイテム(fixme)
W:412、0:TODO(SE):バケットを削除しますか? (fixme)

この動作は便利ですが、これらの特定の警告を一時的および/または永続的にオンまたはオフにする方法を知りたいと思います。

Pylint設定ファイルを生成できます:pylint --generate-rcfile > ~/.pylintrc

TODOコメントの警告を無効にするには、このファイルに何を入れるかを確認しているだけです。

17
sedwards

生成された設定ファイルに、セクションが表示されます。

  [MISCELLANEOUS]

  # List of note tags to take in consideration, separated by a comma.
  notes=FIXME,XXX,TODO

「メモ」リストからTODOを削除するだけです。

設定ファイルは次の場所にあります。

~/.pylintrc

構成ファイルを生成していない場合、これは次の方法で実行できます。

pylint --generate-rcfile > ~/.pylintrc
28
sthenault

@sthenaultによって投稿された、すべての警告を無効にできるソリューションに加えて、Pylintでは、次のように1行を無視することもできます(将来的に対処したい場合に役立ちます)。

A_CONSTANT = 'ugh.'  # TODO: update value  # pylint: disable=fixme

またはルールIDを指定することによって:

A_CONSTANT = 'ugh.'  # TODO: update value  # pylint: disable=W0511
1
captainblack

私たちのプロジェクトにはpylint.cfgファイルがあります。 --rcfilepylintオプションを使用してそのファイルをポイントします。

Pylint.cfgで、チェッカーを無効にすることができますW0511これは、コメント内の「TODO」および同様の用語について文句を言うチェッカーです。パラメータdisableのコンマ区切りリストにW0511を追加するだけです。

しかし、ボブマーチンおじさんが言うように、TODOはシステムに悪いコードを残す言い訳ではないことを忘れないでください。コードを定期的にスキャンして、TODO、pylint、sonarqubeを削除する必要があります。問題は、そうするための良いリマインダーと動機として機能する可能性があります。

0
Paulo Merson