11[build-system ]
22requires = [" setuptools" , " wheel" ]
3- build-backend = " setuptools.build_meta"
43
54[tool .ruff ]
65cache-dir = " .tox/.ruff_cache"
@@ -10,7 +9,7 @@ src = ["src", "tests"]
109[tool .ruff .lint ]
1110extend-select = [
1211 " A" , # flake8-builtins
13- " ARG" , # flake8-unused-arguments
12+ # "ARG", # flake8-unused-arguments
1413 " B" , # flake8-bugbear
1514 " C4" , # flake8-comprehensions
1615 " C90" , # mccabe
@@ -34,16 +33,33 @@ extend-select = [
3433 " RET" , # flake8-return
3534 " RUF" , # ruff-specific
3635 " S" , # flake8-bandit
37- " SIM" , # flake8-simplify
36+ # "SIM", # flake8-simplify
3837 " SLF" , # flake8-self
3938 " SLOT" , # flake8-slots
4039 " T10" , # flake8-debugger
4140 " TID" , # flake8-tidy-imports
4241 " TCH" , # flake8-type-checking
43- " TD" , # flake8-todos
42+ # "TD", # flake8-todos
4443 " TRY" , # tryceratops
4544 " W" , # pycodestyle warnings
4645]
46+ ignore = [
47+ # TODO: gradually remove these (document all the things)
48+ " D100" , # Missing docstring in public module
49+ " D101" , # Missing docstring in public class
50+ " D102" , # Missing docstring in public method
51+ " D103" , # Missing docstring in public function
52+ " D104" , # Missing docstring in public package
53+ " D105" , # Missing docstring in magic method
54+ " D200" , # One-line docstring should fit on one line with quotes
55+ " D205" , # 1 blank line required between summary line and description
56+ " D400" , # First line should end with a period
57+ # Not useful:
58+ " RET503" , # Missing explicit `return` at the end of function able to return non-`None` value
59+ ]
60+
61+ [tool .ruff .lint .flake8-builtins ]
62+ builtins-ignorelist = [" bin" , " compile" ]
4763
4864[tool .ruff .lint .isort ]
4965order-by-type = false
@@ -53,3 +69,8 @@ max-complexity = 14
5369
5470[tool .ruff .lint .pydocstyle ]
5571convention = " numpy"
72+
73+ [tool .ruff .lint .per-file-ignores ]
74+ "tests/*" = [
75+ " S" , # No security checks for tests
76+ ]
0 commit comments