[tool.ruff] line-length = 120 target-version = "py311" [tool.ruff.lint] # E: pycodestyle errors, F: pyflakes (undefined/unused names), I: isort (import order), W: pycodestyle warnings select = ["E", "F", "I", "W"] ignore = [ "E501", # symbolic-math expressions routinely exceed a "normal" line length ] [tool.ruff.lint.per-file-ignores] # *.sage.py is preparser output: star-import globals, semicolon preamble, and literal-substitution artifacts trip static analysis. "*.sage.py" = ["F403", "F405", "F821", "E741", "E402", "E702", "I001", "W291", "W293", "W292"] # test_smoke.py star-imports sage.all and loads a .sage file, so ruff can't see where its names come from. "tests/topdata_tests.py" = ["F403", "F405"]