Después de un año de desarrollo, se lanzó una nueva versión estable del lenguaje de programación interpretado Python 3.13. La versión incluye cambios en el propio lenguaje y su biblioteca estándar. Los cambios más importantes incluyen el uso de un nuevo intérprete interactivo por defecto, soporte experimental para operar en modo de hilos libres (es decir, con la desactivación del bloqueo global del intérprete) (PEP 703), y un compilador JIT (PEP 744).
A partir de esta versión, se ha implementado un nuevo ciclo de lanzamientos de Python (Ciclo de Liberación Anual de Python, PEP 602), con la intención de extender el período de 'soporte completo' para nuevas versiones:
- Python 3.9–3.12 tendrán un año y medio de soporte completo, seguido de tres años y medio de correcciones de vulnerabilidades de seguridad.
- Python 3.13 y versiones posteriores tendrán dos años de soporte completo y tres años de correcciones de vulnerabilidades.
Se continúa trabajando en la mejora de los mensajes de error. Ahora los rastreos de errores se resaltan por defecto en color. La función incorporada locals() ahora tiene una semántica definida para modificar el mapeo devuelto (PEP 667), y los parámetros de tipo (typing.TypeVar, typing.ParamSpec, typing.TypeVarTuple) admiten valores predeterminados (PEP 696).
Los cambios en la biblioteca estándar incluyen la eliminación de API y módulos obsoletos (aifc, audioop, cgi, cgitb, chunk, crypt, imghdr, mailcap, msilib, nis, nntplib, ossaudiodev, pipes, sndhdr, spwd, sunau, telnetlib, uu y xdrlib), así como mejoras comunes en usabilidad y corrección. Varios módulos han sido excluidos de la entrega debido a que fueron declarados obsoletos en Python 3.11 (PEP 594), incluido el herramienta y biblioteca 2to3.
Entre las mejoras de seguridad destaca que ssl.create_default_context() establece como predeterminadas las banderas ssl.VERIFY_X509_PARTIAL_CHAIN y ssl.VERIFY_X509_STRICT.
Se agrega soporte para plataformas: Apple iOS y Android son ahora plataformas oficialmente soportadas (nivel 3) (PEP 730, 738). wasm32-wasi es soportado a nivel nivel 2, se ha interrumpido el soporte oficial para wasm32-emscripten.
Para una revisión más exhaustiva de las novedades de la versión, consulte la documentación oficial (sobre la biblioteca, sobre el lenguaje). Guíese por el artículo ‘Migrando a Python 3.13’ para actualizar sus proyectos a la nueva versión del lenguaje. Vea también. changelog.
Fuente: linux.org.ru
