Last active
March 11, 2026 20:25
-
-
Save rubenhortas/57febeace65b746bda535f5f4c5f087a to your computer and use it in GitHub Desktop.
Ruff style rules for python projects
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Apply to project: Place in the project root directory | |
| # Apply globally: Place in ~/.config/ruff/pyproject.toml (or configure in ~/.config/ruff.toml) | |
| [tool.ruff] | |
| line-length = 160 | |
| [tool.ruff.lint] | |
| select = [ | |
| "E", # pycodestyle errors | |
| "F", # Pyflakes | |
| "I", # isort | |
| "UP", # pyupgrade | |
| "ANN", # flake8-annotations | |
| "B", # flake8-bugbear | |
| "S", # flake8-bandit (security) | |
| "SIM", # flake8-simplify | |
| "RUF", # Ruff-specific rules | |
| "N", # PEP8 naming | |
| "W", # Pycodestyle warnings (style issues) | |
| "FLY", # Flynt – f-string conversion suggestions | |
| "SLOT", # Flake8-slots – suggests use of __slots__ where appropriate | |
| "PERF", # Perflint | |
| ] | |
| extend-select = [ | |
| # "D", # Pydocstyle - docstring formatting | |
| "TID", # Flake8-tidy-imports – enforces specific import styles (e.g., no relative imports) | |
| "BLE", # Flake8-blind-except – flags bare excepts | |
| "TRY", # Tryceratops – try/except usage suggestions | |
| "PIE", # Flake8-pie – Python improvement suggestions | |
| "PTH", # flake8-use-pathlib | |
| "C4", # flake8-comprehensions | |
| # "FBT", # Flake8-boolean-trap – potential pitfalls with booleans | |
| "INP", # Flake8-no-pep420 – requires __init__.py files (no implicit namespace packages) | |
| "TC", # Flake8-type-checking – proper import of typing in type checks | |
| "ARG", # Flake8-unused-arguments – flags unused function arguments | |
| "LOG", # flake8-logging | |
| "G", # Flake8-logging-format – logging format string issues | |
| "TD", # Flake8-todos – flags TODO comments | |
| "FIX", # Flake8-fixme – flags FIXME comments | |
| ] | |
| ignore = [ | |
| "E501" # Line too long (because we are using the formatter) | |
| ] | |
| [tool.ruff.format] | |
| quote-style = "double" | |
| indent-style = "space" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment