18 de agosto de 2015
Django 1.8.4 corrige un problema de seguridad y varios errores en 1.8.3.
logout() al llenar el almacenamiento de sesión¶Anteriormente, un sesión podría crearse cuando se accediera anónimamente a la vista django.contrib.auth.views.logout() (a menos que estuviera decorada con login_required() como se hace en el panel de administración). Esto podría permitir a un atacante crear fácilmente muchos nuevos registros de sesión enviando solicitudes repetidas, potencialmente llenando el almacenamiento de sesiones o causando que los registros de sesión de otros usuarios sean expulsados.
La clase SessionMiddleware ha sido modificada para no crear registros de sesión vacíos, incluyendo cuando SESSION_SAVE_EVERY_REQUEST está activo.
Se agregó la capacidad de serializar valores desde el campo UUIDField recién agregado (#25019).
Se agregó una advertencia de comprobación del sistema si las configuraciones TEMPLATE_* antiguas están definidas además de la nueva configuración TEMPLATES.
Se ha corregido QuerySet.raw() para que no se levante InvalidQuery cuando se utiliza el nombre de columna db_column de un campo ForeignKey con primary_key=True (#12768).
Se evitó una excepción en TestCase.setUpTestData() desde la transacción (#25176).
Se ha corregido el método has_changed() en contrib.postgres.forms.HStoreField (#25215, #25233).
Se ha corregido la grabación de las migraciones aplastadas cuando se ejecuta el comando migrate (#25231).
Moved el chequeo de pérdida de datos de la asignación de instancia de modelo no guardada (<unsaved-model-instance-check-18>) a Model.save() para permitir un uso más fácil de modelos en memoria (#25160).
Evitó los índices varchar_patterns_ops y text_patterns_ops para el campo ArrayField (#25180).
may 31, 2026