Notas de lanzamiento de Django 1.11.5

5 de septiembre de 2017

Django 1.11.5 corrige una cuestión de seguridad y varios errores en 1.11.4.

CVE-2017-12794: Posible XSS en la sección de seguimiento del error técnico 500 de depuración

En versiones anteriores, se deshabilitó el escape automático de HTML en una parte del template para la página de depuración técnica 500. Dadas las circunstancias adecuadas, esto permitía un ataque de scripting entre sitios. Esta vulnerabilidad no debería afectar a la mayoría de los sitios de producción ya que no debes ejecutar con DEBUG = True (lo que hace que esta página sea accesible) en tus configuraciones de producción.

Bugfixes

  • Se ha corregido la interpretación de la versión GEOS si la versión tiene un hash de commit al final (nuevo en GEOS 3.6.2) (#28441).

  • Se ha agregado compatibilidad con cx_Oracle 6 (#28498).

  • Se ha corregido la renderización del widget select cuando los valores de las opciones son tuplas (#28502).

  • Django 1.11 cambió accidentalmente el esquema de nombres de secuencia y triger en Oracle. Esto causa errores en INSERTs para algunas tablas si 'use_returning_into': False está en la parte de opciones de DATABASES. El esquema de nombres pre-1.11 se restaura ahora. Desafortunadamente, esto requiere una actualización a las tablas Oracle creadas con Django 1.11.[1-4]. Utilice el script de actualización en el comentario 8 de #28451 para actualizar los nombres de secuencia y triger al esquema pre-1.11.

  • Se ha agregado soporte a solicitudes POST a LogoutView, para equivalencia con la vista basada en funciones logout() (#28513).

  • Se omitió pages_per_range de BrinIndex.deconstruct() si es None (#25809).

  • Se corrigió una regresión donde SelectDateWidget localizaba los años en el cuadro desplegable (#28530).

  • Se corrigió una regresión en 1.11.4 donde runserver se caía con codificaciones de sistema no Unicode en Python 2 + Windows (#28487).

  • Se corrigió una regresión en Django 1.10 donde los cambios en un ManyToManyField no estaban registrados en la historia de cambios del administrador (#27998) y evitaba que los datos iniciales de un ManyToManyField en formularios de modelos fueran afectados por cambios posteriores en el modelo (#28543).

  • Se corrigió resultados no deterministas o una excepción de aserción (:AssertionError:) al caer en algunas consultas con múltiples joins (#26522).

  • Se corrigió una regresión en las vistas login() y logout() de contrib.auth donde ignoraban argumentos posicionales (#28550).