Linting & Formatting
ruff
- pip
- Poetry
poetry add --group dev ruff
python3 -m pip install ruff
pyproject.toml
[tool.ruff]
exclude = [
".bzr",
".direnv",
".eggs",
".git",
".git-rewrite",
".hg",
".ipynb_checkpoints",
".mypy_cache",
".nox",
".pants.d",
".pyenv",
".pytest_cache",
".pytype",
".ruff_cache",
".svn",
".tox",
".venv",
".vscode",
"__pypackages__",
"_build",
"buck-out",
"build",
"dist",
"node_modules",
"site-packages",
"venv",
]
line-length = 120
indent-width = 4
[tool.ruff.lint]
select = ["E4", "E7", "E9", "F", "I"]
ignore = []
fixable = ["ALL"]
unfixable = []
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
ruff check --fix **/*.py
ruff format **/*.py
inline 오류 무시
부분적으로만 무시하고 싶은 경우에는 에러가 발생하는 줄에 # noqa
or # noqa: <code>
주석을 추가하면 됩니다.
from logging import * # noqa: F403
mypy
- pip
- Poetry
poetry add --group dev mypy
python3 -m pip install mypy
pyproject.toml
[tool.mypy]
[[tool.mypy.overrides]]
# module = "<pattern>" # ex) "module.*"
# 옵션