diff options
Diffstat (limited to 'ruff.toml')
| -rw-r--r-- | ruff.toml | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/ruff.toml b/ruff.toml new file mode 100644 index 0000000..6d0f877 --- /dev/null +++ b/ruff.toml @@ -0,0 +1,33 @@ +# How the Python in this tree is formatted, and how its imports are ordered. +# `.githooks/pre-commit` applies both to what you staged (install it with +# `git config core.hooksPath .githooks`); `ruff format --check .` asks. +# +# Adopted when PR #1 arrived black-formatted: ruff's formatter IS black's +# output, it is one static binary instead of a Python dependency chain, and it +# is fast enough that a pre-commit hook is free. Configuration is deliberately +# left at the defaults -- every knob turned here is an argument somebody has to +# have again later. + +# The version this tree was formatted with, enforced by ruff itself: a +# formatter whose output moves between releases turns "formatted" into +# "formatted by whoever committed last", and the diff lands on the next +# person. A mismatch is refused with both versions named rather than quietly +# reformatting everything. Bumping it is one line here, one in the hook's +# install hint, and a reformat commit (added to .git-blame-ignore-revs) -- +# the honest cost of a new version. +required-version = "==0.16.3" + +target-version = "py311" +line-length = 88 + +[lint] +# Import sorting, and nothing else. `ruff check` can enforce a great deal more +# and one day it might, but this hook's job is formatting: one that also +# refused a commit over an unused variable would be a different feature, and +# not one anybody asked for. +# +# Sorting is safe here because ruff sorts import BLOCKS and never hoists across +# a statement: every test file's `sys.path.insert(...)` sits between the +# standard library and the `idatui` imports, and that line is exactly what +# makes them importable. +select = ["I"] |
