-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathpyproject.toml
95 lines (86 loc) · 2.2 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
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
[build-system]
requires = [
"cffi>=1.0.0",
"setuptools>=40.6.0",
"setuptools_scm[toml]>=3.4",
"wheel",
]
build-backend = "setuptools.build_meta"
[tool.coverage.html]
show_contexts = true
skip_covered = false
[tool.coverage.run]
branch = true
source = ["avif"]
dynamic_context = "test_function"
[tool.coverage.report]
exclude_also = [
"if TYPE_CHECKING:",
"\\s*\\.\\.\\.\\s*",
]
show_missing = true
skip_covered = true
[tool.doc8]
ignore = [
"D001", # one sentence per line, so max length doesn't make sense
]
[tool.isort]
combine_as_imports = true
ensure_newline_before_comments = true
from_first = true
include_trailing_comma = true
known_first_party = "_avif"
multi_line_output = 3
use_parentheses = true
[tool.setuptools_scm]
[tool.ruff]
line-length = 79
select = [
"ANN", "B", "D", "D204", "E", "F", "Q", "RUF", "SIM", "TCH", "UP", "W",
]
ignore = [
# Wat, type annotations for self and cls, why is this a thing?
"ANN101",
"ANN102",
# Private annotations are fine to leave out.
"ANN202",
# I don't know how to more properly annotate "pass along all arguments".
"ANN401",
# It's totally OK to call functions for default arguments.
"B008",
# raise SomeException(...) is fine.
"B904",
# There's no need for explicit strict, this is simply zip's default behavior.
"B905",
# It's fine to not have docstrings for magic methods.
"D105",
# __init__ especially doesn't need a docstring
"D107",
# This rule makes diffs uglier when expanding docstrings (and it's uglier)
"D200",
# No blank lines before docstrings.
"D203",
# Start docstrings on the second line.
"D212",
# This rule misses sassy docstrings ending with ! or ?.
"D400",
# Section headers should end with a colon not a newline
"D406",
# Underlines aren't needed
"D407",
# Plz spaces after section headers
"D412",
# Not sure what heuristic this uses, but it seems easy for it to be wrong.
"SIM300",
# We support 3.8 + 3.9
"UP007",
]
extend-exclude = ["libavif-*"]
[tool.ruff.flake8-quotes]
docstring-quotes = "double"
[tool.ruff.per-file-ignores]
"noxfile.py" = ["ANN", "D100"]
"docs/*" = ["ANN", "D"]
"examples*" = ["D103"]
"avif/tests/*" = ["ANN", "D", "RUF012"]
"setup.py" = ["ANN", "D"]