blob: 3dbeb8baa9f70b29817f228c3b74f7c31b49c46e [file] [log] [blame] [edit]
[project]
requires-python = ">=3.2"
[tool.ruff]
line-length = 100
exclude = [
"./cache/",
"./node_modules/",
"./site/source/_themes/",
"./site/source/conf.py",
"./system/lib/",
"./test/third_party/",
"./third_party/",
"./tools/filelock.py",
"./tools/scons/",
".git",
]
lint.select = [
"ARG",
"ASYNC",
"B",
"C4",
"C90",
"COM",
"E",
"F",
"I",
"PERF",
"PIE",
"PL",
"UP",
"W",
"YTT",
]
lint.external = [ "D" ]
lint.ignore = [
"B011", # See https://github.com/PyCQA/flake8-bugbear/issues/66
"B023",
"B026",
"E402",
"E501",
"E721",
"E741",
"PERF203",
"PERF401",
"PLC0415",
"PLR0915",
"PLR1704",
"PLR5501",
"PLW0602",
"PLW0603",
"PLW1510",
"PLW2901",
"UP030", # TODO
"UP031", # TODO
"UP032", # TODO
]
lint.per-file-ignores."emrun.py" = [ "PLE0704" ]
lint.per-file-ignores."tools/ports/*.py" = [ "ARG001", "ARG005" ]
lint.per-file-ignores."test/other/ports/*.py" = [ "ARG001" ]
lint.per-file-ignores."test/parallel_testsuite.py" = [ "ARG002" ]
lint.per-file-ignores."test/test_benchmark.py" = [ "ARG002" ]
lint.mccabe.max-complexity = 51 # Recommended: 10
lint.pylint.allow-magic-value-types = [
"bytes",
"float",
"int",
"str",
]
lint.pylint.max-args = 15 # Recommended: 5
lint.pylint.max-branches = 50 # Recommended: 12
lint.pylint.max-returns = 16 # Recommended: 6
lint.pylint.max-statements = 142 # Recommended: 50