martes, 14 de junio de 2011

Lanzamientos de junio - 2.6.7, 2.7.2, 3.1.4

Artículo original: June Releases - 2.6.7, 2.7.2, 3.1.4

Junio es un gran mes para lanzamientos de Python, con una actualización en cada una de las ramas activas.

2.6.7

Está disponible un nuevo lanzamiento de código fuente de Python 2.6.7 que aporta correcciones a tres cuestiones de seguridad. Ahora que la línea 2.6 está en modo seguridad, estos lanzamientos se producirán en forma de código fuente cada vez que se necesiten hasta octubre de 2013. Si necesitas instaladores binarios, deberías considerar actualizar a 2.7 o 3.2.

La versión 2.6.7 es el primer lanzamiento en el que se corrige la vulnerabilidad urllib ya comentada. Además se han arreglado una vulnerabilidad DoS en smtpd (cuestión #9129) y una vulnerabilidad XSS en SimpleHTTPServer.list_directory (cuestión #11442).

2.7.2

Se realizaron más de 150 correcciones a la última versión menor de la línea 2.x, la 2.7, desde su versión 2.7.1 de noviembre de 2010. Desde el 12 de junio está disponible el código fuente y el instalador binario para la 2.7.2, la cual incluye las correcciones de seguridad mencionadas en la 2.6.7.

Varios fallos han sido corregidos: una situación en la que Python usaba incorrectamente memoria no gestionada por él mismo mientras la modificaba otro hilo, cuando se eliminaba __abstractmethods__ de una clase, accediendo un fichero mapeado en memoria más allá de su longitud, y varios otros.

Una corrección en getpass soluciona una regresión en relación a la gestión de CTRL-C y CTRL-Z. multiprocessing recibió varias correcciones, incluyendo el tratamiento de servicios de Windows como p. ej. el de ejecutables congelados y una corrección de condición de carrera cuando terminan los (procesos) trabajadores de multiprocessing.Pool. mmap fue corregido para trabajar con tamaños de fichero y desplazamientos superiores a 4 GB incluso en compilaciones de 32 bit, y ahora se produce un TypeError en lugar de producir un fallo de segmento cuando se intenta escribir a un mapa no escribible.

Para una lista completa de cambios, véase el fichero de novedades 2.7.2.

3.1.4

La versión 3.1.4 es el último lanzamiento que corrige bugs de la línea 3.1.x, enviando la 3.1 al modo de seguridad mientras la línea 3.2 continua. La versión 3.1.4 contiene más de 100 correcciones de bugs desde el lanzamiento de la 3.1.3 en noviembre de 2010. Al igual que con la 2.7.2, están disponibles instaladores binarios desde el 12 de junio, y además la 3.1.4 es el primer lanzamiento 3.x en contener los arreglos de seguridad listados en 2.6.7.

La versión 3.1.4 corrige varios problemas con búsquedas __dir__ sobre objetos, fechas posteriores al 2038 en la implementación para Windows de os.stat y os.utime, y una serie de limpiezas para 64 bits. Se realizaron una serie de cambios en la biblioteca io para retornar None cuando no se había leído nada y lanzando las excepciones apropiadas en otros puntos. Se corrigieron los argumentos de llamada de ctypes para Windows 64 bits y también se corrigió un fallo en la ejecución.

Para una lista completa de cambios, véase el fichero de novedades 3.1.4.

3.2.1

La versión 3.2.1 está actualmente en la fase de candidata a lanzamiento, con una ronda ya completada y se espera un segunda versión candidata en breve. Queremos agradecer enormemente a los usuarios de la versión 3.2 las pruebas de la versión candidata a lanzamiento para asegurar que cubrimos cualquier cuestión que puedas encontrar. Si tienes que reportar cualquier bug, por favor regístralo en bugs.python.org.