-
Notifications
You must be signed in to change notification settings - Fork 636
/
pyproject.toml
60 lines (54 loc) · 1.6 KB
/
pyproject.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
[build-system]
requires = [ "setuptools", "wheel" ]
build-backend = "setuptools.build_meta"
[tool.ruff]
src = [
"bitsandbytes",
"tests",
"benchmarking"
]
target-version = "py38"
line-length = 119
[tool.ruff.lint]
select = [
"B", # bugbear: security warnings
"E", # pycodestyle (error)
"W", # pycodestyle (warning)
"F", # pyflakes
"I", # isort
"ISC", # implicit string concatenation
"UP", # alert you when better syntax is available in your python version
"RUF", # the ruff developer's own rules
]
ignore = [
"B007", # Loop control variable not used within the loop body (TODO: enable)
"B028", # Warning without stacklevel (TODO: enable)
"E501", # Supress line-too-long warnings: trust yapf's judgement on this one.
"E701", # Multiple statements on one line (TODO: enable)
"E712", # Allow using if x == False, as it's not always equivalent to if x.
"E731", # Do not use lambda
"F841", # Local assigned but not used (TODO: enable, these are likely bugs)
"RUF012", # Mutable class attribute annotations
]
[tool.ruff.lint.extend-per-file-ignores]
"**/__init__.py" = ["F401"] # allow unused imports in __init__.py
"{benchmarking,tests}/**/*.py" = [
"B007",
"B011",
"B023",
"E701",
"E731",
"F841",
"UP030",
]
[tool.ruff.lint.isort]
combine-as-imports = true
detect-same-package = true
force-sort-within-sections = true
known-first-party = ["bitsandbytes"]
[[tool.mypy.overrides]]
module = "triton.*"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "scipy.stats"
ignore_missing_imports = true