dotfiles/templates/pyproject.toml

46 lines
1.4 KiB
TOML

[tool.ruff]
line-length = 120
extend-select = [
"E", "W", "F", "C90", # Pycodestyle + Pyflakes + McCabe = Flake8
"PL", # Pylint
]
[tool.ruff.per-file-ignores]
"__init__.py" = ["F401"]
[tool.flake8]
# This category requires “Flake8-pyproject” plugin to take effect
max-line-length = 120
per-file-ignores = [
"__init__.py:F401",
]
[tool.pylint.format]
max-line-length = 120
[tool.pylint."messages control"]
disable = [
# Covered in flake8 according to https://pylint.rtfd.io/en/latest/faq.html#which-messages-should-i-disable-to-avoid-duplicates-if-i-use-other-popular-linters
"unnecessary-semicolon", "bad-indentation", "bare-except", # pycodestyle
"unnecessary-negation", "singleton-comparison", "line-too-long", # pycodestyle
"trailing-whitespace", "missing-final-newline", "trailing-newlines", # pycodestyle
"multiple-statements", "wrong-import-position", # pycodestyle
"undefined-variable", "unused-import", "unused-variable", # pyflakes
"too-many-branches", # mccabe
# other stuff
"missing-module-docstring", "missing-class-docstring", "missing-function-docstring",
]
[tool.mypy]
show_column_numbers = true
ignore_missing_imports = true
follow_imports = "silent"
show_error_codes = true
[tool.pytest.ini_options]
addopts = """
--pdbcls=IPython.terminal.debugger:TerminalPdb --tb=short --quiet
--disable-pytest-warnings --no-cov
"""
log_level = "INFO"
python_files = ["*_tests.py", "tests.py"]