Dopo un anno di sviluppo, è uscita una nuova versione stabile del linguaggio di programmazione interpretato Python 3.13. Il rilascio include modifiche sia al linguaggio che alla sua libreria standard. Le modifiche più significative riguardano l'uso di un nuovo interprete interattivo di default, supporto sperimentale per il funzionamento in modalità free-threaded (ossia disabilitando il global interpreter lock) (PEP 703), e un compilatore JIT (PEP 744).
Da questo rilascio è iniziato il passaggio a un nuovo ciclo di rilascio di Python (Ciclo Annuale di Rilascio per Python, PEP 602), a causa del desiderio di estendere il periodo di "supporto completo" per le nuove versioni:
- Python 3.9–3.12 hanno un anno e mezzo di supporto completo, seguito da tre anni e mezzo di correzioni di vulnerabilità di sicurezza.
- Python 3.13 e versioni successive avranno due anni di supporto completo e tre anni di correzioni di vulnerabilità.
Continua il lavoro su miglioramenti nei messaggi di errore. Ora i traceback vengono evidenziati di default. La funzione incorporata locals() ora ha una semantica definita per modificare il mapping restituito (PEP 667), e i parametri dei tipi (typing.TypeVar, typing.ParamSpec, typing.TypeVarTuple) ora supportano valori di default (PEP 696).
Le modifiche alla libreria standard includono la rimozione di API e moduli obsoleti (aifc, audioop, cgi, cgitb, chunk, crypt, imghdr, mailcap, msilib, nis, nntplib, ossaudiodev, pipes, sndhdr, spwd, sunau, telnetlib, uu e xdrlib), oltre a miglioramenti noti nell'usabilità e nella correttezza. Alcuni moduli sono stati esclusi dalla distribuzione in quanto dichiarati obsoleti in Python 3.11 (PEP 594), tra cui lo strumento e la libreria 2to3.
Tra i miglioramenti nella sicurezza, si segnala che ssl.create_default_context() imposta i flag di default ssl.VERIFY_X509_PARTIAL_CHAIN e ssl.VERIFY_X509_STRICT.
Aggiunta la supporto per piattaforme: Apple iOS e Android sono ora piattaforme supportate ufficialmente (tier 3) (PEP 730, 738). wasm32-wasi è supportato a livello tier 2, mentre è terminato il supporto ufficiale per wasm32-emscripten.
Per un'informativa più approfondita sulle novità di questo rilascio, fare riferimento alla documentazione ufficiale (sulla libreria, sul linguaggio). Consultare l'articolo "Transizione a Python 3.13" per aggiornare i propri progetti alla nuova versione del linguaggio. Si veda anche. changelog.
Fonte: linux.org.ru
