-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathruff.toml
More file actions
26 lines (24 loc) · 1.28 KB
/
Copy pathruff.toml
File metadata and controls
26 lines (24 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Lint only, with the rule set stated explicitly rather than inherited.
#
# `select` is pinned because ruff's DEFAULT set is not stable across releases:
# 0.16 widened it (UP, B, SIM, BLE, RUF …), so a repository relying on the
# default would go red on a ruff upgrade without a line of its own code
# changing. Pinning the ruff version alone does not fix that — it only defers
# it to the day someone bumps the pin. Naming the rules makes every addition a
# deliberate opt-in with the new findings visible in that PR's diff.
#
# These four are ruff's historical default and are clean across this repository
# today, so the CI gate added alongside this file starts green.
#
# `ruff format` is gated too, at ruff's default width. The codebase was already
# hand-wrapped near 88 columns, so the default is what the code was reaching
# for; naming a wider one would have made the formatter collapse deliberately
# split f-strings onto single long lines.
#
# One expression carries `# fmt: skip` (see oauth.py, the RFC 9728 §3.3
# resource comparison) because the formatter's output there hides what the
# code is doing. That is the exception, and it is annotated where it applies —
# not a reason to leave the whole repository ungated.
target-version = "py310"
[lint]
select = ["E4", "E7", "E9", "F"]