Manutentore del sistema di controllo della versione
Le previsioni sulla stabilità del port per Python 3 sono deludenti. In particolare si prevede che nel corso degli anni compaiano errori casuali nel codice, poiché i test non coprono il 100% della base di codice e molti problemi sono invisibili durante l'analisi statica e compaiono solo in fase di esecuzione. Inoltre, molti componenti aggiuntivi ed estensioni di terze parti rimangono non tradotti in Python 3.
Poiché durante il porting si è deciso di adattare gradualmente il codice a Python 3, pur mantenendo il supporto per Python 2, il codice ha acquisito molti hack per combinare Python 2 e 3, che dovranno essere ripuliti una volta terminato il supporto per Python 2.
Commentando la situazione con Python 3, il manutentore di Mercurial ritiene che la decisione di promuovere Python 3, rivoluzionario per l'interoperabilità, e di imporlo come un linguaggio nuovo e più corretto, in assenza di miglioramenti rivoluzionari rilevanti per gli sviluppatori, sia stato un grosso errore che ha causato grave danno alla comunità ed è un esempio di come i progetti non di grandi dimensioni debbano farlo. Invece di creare gradualmente funzionalità e consentire alle applicazioni di essere personalizzate in modo incrementale, il rilascio di Python 3 ha costretto gli sviluppatori a riscrivere il codice e a spendere risorse mantenendo rami separati per Python 2 e Python 3. Fu solo sette anni dopo il rilascio di Python 3.0 che Python 3.5 ha introdotto funzionalità per semplificare il processo di transizione e garantire che la stessa base di codice esegua sia Python 2 che Python 3.
Fonte: opennet.ru