forked from ClickHouse/ClickHouse
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
72 lines (65 loc) · 2.06 KB
/
Copy pathpyproject.toml
File metadata and controls
72 lines (65 loc) · 2.06 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
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
[tool.pylint.BASIC]
max-module-lines=2000
# due to SQL
max-line-length=200
# Drop/decrease them one day:
max-branches=50
max-nested-blocks=10
max-statements=200
[tool.pylint.FORMAT]
#ignore-long-lines = (# )?<?https?://\S+>?$
[tool.pylint.'MESSAGES CONTROL']
# pytest.mark.parametrize is not callable (not-callable)
disable = '''
bare-except,
broad-except,
cell-var-from-loop,
fixme,
invalid-name,
missing-docstring,
redefined-outer-name,
too-few-public-methods,
too-many-arguments,
too-many-instance-attributes,
too-many-locals,
too-many-public-methods,
wildcard-import,
'''
[tool.isort]
profile = "black"
src_paths = ["src", "tests/ci", "tests/sqllogic", "tests/queries", "tests/integration"]
[tool.black]
required-version = 26
[tool.pylint.SIMILARITIES]
# due to SQL
min-similarity-lines=1000
[tool.ruff]
line-length = 200
target-version = "py312"
extend-exclude = [
"contrib",
"build",
"build_*",
"tmp",
# Generated protobuf bindings (top-level names defined dynamically).
"**/*_pb2.py",
"**/*_pb2_grpc.py",
]
[tool.ruff.lint]
# Start narrow: only rules that catch real bugs with low false-positive rate.
# Each rule below was hand-picked because every hit was either a genuine bug
# or an obviously dead reference (e.g. PR #105159: undefined name in an f-string
# only evaluated on a diagnostic branch, masking the real failure).
#
# Stylistic / unused-name rules (F401, F541, F841, F403, F405) are intentionally
# off for now — they need a separate cleanup pass and would drown out the
# bug-class signal.
select = [
"F402", # import-shadowed-by-loop-var
"F522", # string-format-extra-named-arg
"F523", # string-format-extra-positional-arg
"F601", # multi-value-repeated-key-literal
"F632", # is-literal (e.g. `x is "foo"`, always False under CPython)
"F811", # redefined-while-unused (duplicate function/import definitions)
"F821", # undefined-name (the PR #105159 class)
]