Ruff
Ruff is an extremely fast Python linter and formatter, written in Rust. It can process all of mozilla-central in under a second, and implements rule sets from a large array of Python linters and formatters, including:
flake8 (pycodestyle, pyflakes and mccabe)
isort
pylint
pyupgrade
and many many more!
Run Locally
The mozlint integration of ruff can be run using mach:
$ mach lint --linter ruff <file paths>
Configuration
Ruff is configured in the root pyproject.toml file. Additionally, ruff will
pick up any pyproject.toml
or ruff.toml
files in subdirectories. The
settings in these files will only apply to files contained within these
subdirs. For more details on configuration discovery, see the configuration
documentation.
For a list of options, see the settings documentation.