Files
rengine/pyproject.toml
T

80 lines
1.7 KiB
TOML

[tool.ruff]
target-version = "py313"
line-length = 88
exclude = [
".git",
".venv",
"__pycache__",
"*.pyc",
".pytest_cache",
".ruff_cache",
]
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort
"N", # pep8-naming
"UP", # pyupgrade
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"DTZ", # flake8-datetimez
"T10", # flake8-debugger
"EM", # flake8-errmsg
"ISC", # flake8-implicit-str-concat
"ICN", # flake8-import-conventions
"PIE", # flake8-pie
"T20", # flake8-print
"PT", # flake8-pytest-style
"Q", # flake8-quotes
"RET", # flake8-return
"SIM", # flake8-simplify
"ARG", # flake8-unused-arguments
"PTH", # flake8-use-pathlib
"ERA", # eradicate (commented-out code)
"PL", # pylint
"RUF", # ruff-specific rules
"ASYNC", # flake8-async
"S", # flake8-bandit (security)
]
ignore = [
"E501", # line too long (handled by formatter)
"PLR0913", # too many arguments in function
"PT019", # fixture without value (false positive on FastAPI deps)
]
[tool.ruff.lint.pylint]
max-branches = 15
[tool.ruff.lint.isort]
known-first-party = ["app", "shared", "worker", "tools"]
section-order = [
"future",
"standard-library",
"third-party",
"first-party",
"local-folder"
]
[tool.ruff.lint.per-file-ignores]
"__init__.py" = ["F401", "F403"]
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[dependency-groups]
dev = [
"ruff>=0.14.14",
]