Open1
Ryffの使い方を調べたメモ

- Rustで書かれた高速なlinter & formatter
- 執筆時点ではlatest=v0.6.5
- Flake8 (plus dozens of plugins), Black, isort, pydocstyle, pyupgrade, autoflake など有名どころを置き換えるために使える
- ruffのインストール:
pip install ruff
- uvが使える環境なら
uvx ruff check
- uvが使える環境なら
- プロジェクト全体にlinterをかける:
ruff check
-
ruff check --fix
で自動で修正 -
ruff check PATH
で特定のファイル・ディレクトリを指定できる
-
- フォーマッタをかける:
ruff format
- こちらは自動で修正までかかる
- 設定ファイルでRuffの挙動をカスタマイズする
-
pyproject.toml
,ruff.toml
, or.ruff.toml
- Settings
-
# noqa: XXX
でlintルールを無視できる - ファイル全体で無視する場合はファイル冒頭に書く
-
docstring の強制設定良さそう
[project]
requires-python = ">=3.10"
[tool.ruff.lint]
extend-select = [
"UP", # pyupgrade
"D", # pydocstyle
]
[tool.ruff.lint.pydocstyle]
convention = "google"
- brewでもインストールができる
-
docker run --rm
による実行も良さそう