tryceratops
v2.4.1
このブログ投稿に触発されました。ここでこのツールの構築プロセスについて説明しました。
「恐竜が好きな人のために?
まとめ
flake8プラグイン pip install tryceratops
または
poetry add -D tryceratops
tryceratops [filename or dir...]
実行して、実験的なアナライザーを有効にすることができます。
tryceratops --experimental [filename or dir...]
--ignore TRYXXXを使用して、特定の違反を無視できます。
tryceratops --ignore TRY201 --ignore TRY202 [filename or dir...]
--exclude dir/pathを使用して監督を除外できます。
tryceratops --exclude tests --exclude .venv [filename or dir...]
いくつかの違反を自動化することもできます:
tryceratops --autofix [filename or dir...]
flake8プラグイン? TryCeratopsはflake8のプラグインでもあるため、次のことができます。
❯ flake8 --select TRY src/tests/samples/violations/call_raise_vanilla.py
src/tests/samples/violations/call_raise_vanilla.py:13:9: TRY002 Create your own exception
src/tests/samples/violations/call_raise_vanilla.py:13:9: TRY003 Avoid specifying long messages outside the exception class
src/tests/samples/violations/call_raise_vanilla.py:21:9: TRY201 Simply use 'raise' without specifying exception object again
すべての違反とその説明は、ドキュメントに記載されています。
これまでのところ、Autofixは違反のみをサポートしています:TRY200、TRY201、およびTRY400。
特定のファイルで違反を無視したい場合は、次のとおりです。
noqaを含むコメントを追加するnoqaを含むコメントを追加するnoqa: CODE例:
def verbose_reraise_1 ():
try :
a = 1
except Exception as ex :
raise ex # noqa: TRY202pyproject.tomlファイルを設定してルールを設定できます。これは、同じCLIフラグを繰り返し何度も再利用しないように便利であり、プロジェクトの構造を定義するのに役立ちます。
例:
[ tool . tryceratops ]
exclude = [ " samples " ]
ignore = [ " TRY002 " , " TRY200 " , " TRY300 " ]
experimental = false
check_pickable = false
allowed_base_exceptions = [ " MyAppBase " ]CLIフラグは常に構成ファイルを上書きします。
事前コミットを使用する場合は、これを追加します。
- repo : https://github.com/guilatrova/tryceratops
rev : v2.4.1
hooks :
- id : tryceratops この派手なバッジをプロジェクトのREADME.mdに追加します:
[ ![ try/except style: tryceratops ] ( https://img.shields.io/badge/try%2Fexcept%20style-tryceratops%20%F0%9F%A6%96%E2%9C%A8-black )] ( https://github.com/guilatrova/tryceratops ) 詳細を読みたい場合:
みんなのためにTryCeratopsをより良くすることを検討していただきありがとうございます!
寄付ドキュメントを参照してください。
Changelogを参照してください。
mit
インスピレーションをしてくれた神に感謝しますか? ☁️☀️
洞察のためのブラックプロジェクト。