[project] requires-python = ">=3.2" [tool.ruff] preview = true line-length = 100 indent-width = 2 exclude = [ ".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", "E111", # Does not seem to honor `indent-width = 2` above "E114", # Does not seem to honor `indent-width = 2` above "PERF203", "PERF401", "PLC0415", "PLR0904", "PLR0915", "PLR0916", "PLR1702", "PLR1704", "PLR5501", "PLR6301", "PLW0602", "PLW0603", "PLR0914", "PLW1510", "PLW1514", "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