# Fix without reporting on leftover violations fix-only = true # Enumerate all fixed violations show-fixes = true # Indent width (default: 4) indent-width = 4 # Black (default: 88) line-length = 130 # Exclude a variety of commonly ignored directories. exclude = [ ".bzr", ".direnv", "dist", ".eggs", ".git", ".git-rewrite", ".hg", ".mypy_cache", ".nox", ".pants.d", "__pycache__", ".pytype", ".ruff_cache", ".svn", ".tox", ".venv", "__pypackages__", "_build", "buck-out", "build", "dist", "node_modules", "venv", ] # Assume Python 3.12 target-version = "py312" [format] # Use spaces instead of tabs indent-style = "space" # Use `\n` line endings for all files line-ending = "lf" # Set quote style for strings quote-style = "preserve" [lint] select = [ # pycodestyle "E", # Pyflakes "F", # pyupgrade "UP", # flake8-bugbear "B", # flake8-simplify "SIM", # isort "I", ] ignore = ["D203", "E203", "E251", "E266", "E401", "E402", "E501", "F401", "F403", "F841"] # Allow unused variables when underscore-prefixed. dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" # Allow autofix for all enabled rules (when `--fix`) is provided. fixable = ["A", "B", "C", "D", "E", "F", "G", "I", "N", "Q", "S", "T", "W", "ANN", "ARG", "BLE", "COM", "DJ", "DTZ", "EM", "ERA", "EXE", "FBT", "ICN", "INP", "ISC", "NPY", "PD", "PGH", "PIE", "PL", "PT", "PTH", "PYI", "RET", "RSE", "RUF", "SIM", "SLF", "TID", "TRY", "UP", "YTT"] [lint.isort] combine-as-imports = true from-first = false no-sections = true order-by-type = true [lint.flake8-quotes] docstring-quotes = "double" [lint.mccabe] # Unlike Flake8, default to a complexity level of 10. max-complexity = 10