Après un an de développement, une nouvelle version stable du langage de programmation interprété Python 3.13 est sortie. La version comprend des modifications dans le langage lui-même et sa bibliothèque standard. Parmi les principales modifications, on note l'utilisation du nouvel interpréteur interactif par défaut, le support expérimental du fonctionnement en mode free-threaded (c'est-à-dire avec désactivation du global interpreter lock) (PEP 703), et le compilateur JIT (PEP 744).
À partir de cette version, un nouveau cycle de publication de Python a été adopté (Annual Release Cycle for Python, PEP 602), dans le but d'élargir la période de « support total » des nouvelles versions :
- Python 3.9 à 3.12 auront un an et demi de support total, suivis de trois ans et demi de corrections de sécurité.
- Python 3.13 et les versions ultérieures disposeront de deux ans de support total et de trois ans de corrections de vulnérabilités.
Le travail se poursuit sur l'amélioration des messages d'erreur. Les traces d'erreur sont désormais colorées par défaut. La fonction intégrée locals() a maintenant une sémantique définie pour modifier le mappage retourné (PEP 667), et les paramètres de types (typing.TypeVar, typing.ParamSpec, typing.TypeVarTuple) prennent en charge les valeurs par défaut (PEP 696).
Les changements de la bibliothèque standard incluent la suppression des API et modules obsolètes (aifc, audioop, cgi, cgitb, chunk, crypt, imghdr, mailcap, msilib, nis, nntplib, ossaudiodev, pipes, sndhdr, spwd, sunau, telnetlib, uu et xdrlib), ainsi que des améliorations habituelles en matière d'ergonomie et de précision. Plusieurs modules sont exclus de la distribution en raison de leur déclaration comme obsolètes dans Python 3.11 (PEP 594), y compris l'outil et la bibliothèque 2to3.
Parmi les améliorations de sécurité, il convient de noter que ssl.create_default_context() définit par défaut les indicateurs ssl.VERIFY_X509_PARTIAL_CHAIN et ssl.VERIFY_X509_STRICT.
Ajout de nouveaux supports de plateforme : Apple iOS et Android sont désormais des plateformes officiellement supportées (tier 3) (PEP 730, 738). Le support de wasm32-wasi est assuré au niveau tier 2, tandis que le support officiel de wasm32-emscripten a été arrêté.
Pour une exploration plus approfondie des nouveautés de cette version, veuillez consulter la documentation officielle (sur la bibliothèque, sur le langage). Reportez-vous à l'article « Migrer vers Python 3.13 » pour mettre à jour vos projets vers la nouvelle version du langage. Voir aussi. changelog.
Source : linux.org.ru
