-
Notifications
You must be signed in to change notification settings - Fork 2k
/
ruff.toml
95 lines (81 loc) · 2.62 KB
/
ruff.toml
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
line-length = 120
[lint]
preview = true
select = [
"PL", # Pylint
"I", # Isort
"FA", # Flake8: future-annotations
"UP", # Pyupgrade
"RUF", # Ruff specific
"F", # Flake8 core
"ASYNC", # Flake8 async
"ISC", # flake8-implicit-str-concat
"TID", # flake8-tidy-imports
"E",
"W",
]
explicit-preview-rules = false
ignore = [
# Pylint convention
"PLC0415", # import-outside-top-level
"PLC1901", # compare-to-empty-string
# Should probably fix these
"PLC2801", # unnecessary-dunder-call
"PLC2701", # import-private-name
# Pylint refactor
"PLR0915", # too-many-statements
"PLR0914", # too-many-locals
"PLR0913", # too-many-arguments
"PLR0912", # too-many-branches
"PLR1702", # too-many-nested-blocks
"PLR0904", # too-many-public-methods
"PLR0917", # too-many-positional-arguments
"PLR0916", # too-many-boolean-expressions
"PLR0911", # too-many-return-statements
# Should probably fix these
"PLR6301", # no-self-use
"PLR2004", # magic-value-comparison
"PLR1704", # redefined-argument-from-local
"PLR5501", # collapsible-else-if
# Pylint warning
"PLW1641", # eq-without-hash
# Should probably fix these
"PLW2901", # redefined-loop-name
"PLW1514", # unspecified-encoding
"PLW0603", # global-statement
# Flake8 async
# Should probably fix these
"ASYNC230", # blocking-open-call-in-async-function
# Should probably fix these after dealing with shielding for anyio
"ASYNC109", # async-function-with-timeout
# flake8-implicit-str-concat
"ISC003", # explicit-string-concatenation
# Ruff Specific
# This code is problematic because using instantiated types as defaults is so common across the codebase.
# Its purpose is to prevent accidenatally assigning mutable defaults. However, this is a bit overkill for that.
# That being said, it would be nice to add some way to actually guard against that specific mutable default behavior.
"RUF009", # function-call-in-dataclass-default-argument
# Should probably fix this
"RUF029",
]
[lint.flake8-implicit-str-concat]
# Found 3279 errors.
# allow-multiline = false
[lint.flake8-tidy-imports]
ban-relative-imports = "all"
[lint.flake8-tidy-imports.banned-api]
# for use with another pr
# "asyncio.create_task".msg = "Use `from chia.util.pit import pit` and `pit.create_task()`"
[lint.isort]
required-imports = ["from __future__ import annotations"]
[lint.pylint]
max-args = 5
max-locals = 15
max-returns = 6
max-branches = 12
max-statements = 50
max-nested-blocks = 5
max-public-methods = 20
max-bool-expr = 5
[lint.pyupgrade]
keep-runtime-typing = true