On Hacker News
Fable Converted Pylint to Rust
Read the full article on pypi.org ↗26
points
13
comments
0
notable voices
The 5-second version
- Prylint is a Rust reimplementation of pylint that produces byte-for-byte identical output, achieving 15-2300x speedups with a median of ~85x faster.
- It was verified for accuracy against 52 production codebases including django, numpy, pandas, and scikit-learn, with zero output differences except documented exceptions.
- The tool ports pylint's entire behavior including bugs, crashes, message ordering, exit codes, score footers, and pragma handling to ensure complete compatibility.
- It builds on ruff's Rust parser but reconstructs astroid's exact tree shape and inference engine, including all caching quirks and edge cases, to match pylint's semantics precisely.
- Prylint requires only Python ≥3.9 on PATH for module resolution and syntax error messages; neither pylint nor astroid need to be installed as dependencies.
Top voices
Verbatim comments from the thread's most notable / highest-karma participants.
dgellow18.2k karma
In this case, it’s maybe more “I can access that luxurious model you all pleb are banned from using”Read on HN ↗
adastra2212.5k karma
> There's no paper or explanation as to why the output should be identical to the real Pylint. Because that was the prompt they used. Seems par for the course with vibe coded projects.Read on HN ↗
Hamuko11.1k karma
So basically `ruff check --select=PL` but worse in every single way, maintained by a system that's not even available anymore? It even uses Ruff's code under the surface.Read on HN ↗
kypro8.3k karma
That caught me off guard too – is that the intention, or the actual verifiable outcome? Potentially if there are failing tests of known bugs in pylint then Fable could have tried to reproduce those bugs in prylint, but that doesn't necessarily mean identical behaviour – at best only identical test-time behaviour. Seems the vibe coder likely wanted it to "produce byte-for-byte identical output", but realistically there's no way to actually guarantee that as the description suggests. It's one t…Read on HN ↗