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)
and many many more!
The mozlint integration of ruff can be run using mach:
$ mach lint --linter ruff <file paths>
Ruff is configured in the root pyproject.toml file. Additionally, ruff will
pick up any
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
For a list of options, see the settings documentation.