[tool.ruff] target-version = "py311" line-length = 160 [tool.ruff.lint] # Start lenient — catch real bugs, not style nits # E: pycodestyle errors, F: pyflakes, UP: pyupgrade, B: bugbear select = ["F", "E9", "W6", "B", "S110"] # Ignore rules that will flag too much in an existing codebase ignore = [ "F401", # unused imports (too noisy initially) "F841", # unused variables "E501", # line length (handled by line-length setting) ] [tool.ruff.lint.per-file-ignores] # Tests can use assert, magic values, etc. "tests/**" = ["B", "F", "S110"] [tool.pytest.ini_options] markers = [ "soundcloud_live: live SoundCloud integration test (network-dependent, run with -m soundcloud_live)", ]