HeadlinesBriefing favicon HeadlinesBriefing.com

Rust‑Based prylint Cuts Python Linting Time by 85×

Hacker News •
×

prylint, a Rust rewrite of Python’s pylint, delivers identical output while slashing runtime. A 15–2300× speed boost appears on large repos, with a median 85× gain, matching pylint’s messages, exit codes, and score footers. The tool mirrors pylint’s behavior exactly, including bugs and crash reports.

The project was built through differential testing against pylint 4.0.5, astroid 4.0.4, and CPython 3.12. It parses source with ruff’s Rust parser, rebuilds astroid’s tree, and ports the inference engine with full fidelity. Benchmarks on 52 production codebases—django, numpy, pandas, scikit‑learn, and more—show prylint outperforming single‑core pylint by up to 2300× on the slowest projects.

prylint installs via pip and requires only Python ≥ 3.9 for path mirroring; it runs like pylint, accepting the same flags, rcfile discovery, and pragma handling. The project ships under GPL‑2.0‑or‑later, matching pylint’s license. Its accuracy suite guarantees byte‑identical output, with documented exceptions listed in LIMITATIONS.md.

By replacing Python with Rust, prylint offers teams instant linting feedback without altering existing workflows, enabling faster commits and cleaner codebases across the Python ecosystem.