prylint: una reimplementazione in Rust di pylint
Pylint è stato riscritto in Rust con il nome prylint. Il pacchetto, disponibile su PyPI dalla metà di giugno 2026, genera output identico byte per byte rispetto alla versione originale in Python. L’autore, Adam Raudonis, ha verificato la corrispondenza su 52 codebase di produzione per un totale di circa 65.000 file. La velocità media dichiarata è 85 volte superiore, con picchi superiori a 2000 volte su repository di grandi dimensioni.
Come funziona la compatibilità

prylint non è un linter ispirato a pylint ma una porta diretta. Riproduce gli stessi messaggi, le stesse coordinate di riga e colonna, gli stessi codici di uscita e lo stesso piè di pagina con il punteggio. Per ottenere questo risultato mantiene una dipendenza minima da Python: lo usa solo per risolvere i percorsi dei moduli e per generare i messaggi di errore di sintassi identici a quelli di CPython. pylint e astroid non sono richiesti.
Il supporto per --rcfile, la scoperta di pyproject.toml, gli hook di inizializzazione e le direttive # pylint: inline è completo. Anche i casi in cui pylint presenta bug o si blocca vengono replicati esattamente.
Benchmark su codebase reali
I test sono stati eseguiti in modalità single-thread su macchine Apple M-series con pylint 4.0.5. Alcuni risultati:
- black: da 26,7 ore a 41 secondi (2328×)
- sentry: da 3,7 ore a 24 secondi (546×)
- home-assistant (17.500 file): da 10,3 ore a 82 secondi (452×)
- django: da 1524 secondi a 10,1 secondi (150×)
- sqlalchemy: da 614 secondi a 7,1 secondi (87×)
- pandas: da 1009 secondi a 14 secondi (72×)
Quando conviene adottarlo

prylint è utile nei flussi di lavoro che eseguono pylint su interi repository o in pipeline CI dove il tempo di esecuzione è un collo di bottiglia. Poiché l’output è identico, può sostituire pylint senza modificare configurazioni o script di post-elaborazione. Lo stato attuale è beta e richiede Python 3.9 o superiore sul PATH. Non gestisce ancora tutte le estensioni di pylint basate su plugin Python, quindi in alcuni ambienti misti resta necessario mantenere la versione originale.
FAQ
prylint sostituisce completamente pylint? Può sostituirlo per l’analisi statica standard. I plugin scritti in Python non sono supportati.
Serve installare pylint per usare prylint? No. prylint non richiede pylint né astroid.
I risultati sono identici anche sui file con errori di sintassi? Sì. prylint delega a Python la generazione dei messaggi di errore di sintassi per mantenere la corrispondenza esatta.
---
📖 Leggi anche
- Agentic Coding: Una Trappola per lo Sviluppo Software?
- File agents.md: utili per gli agenti di coding?
- Lean-ctx: Ottimizzatore Ibrido Riduce Consumo Token LLM del 89-99%
Hai bisogno di una consulenza?
Aiuto aziende e startup a sviluppare software, automatizzare processi e integrare AI. Parliamone.
Scrivimi