Marcus Chen, YuSMP Group
Marcus Chen Staff Engineer, Backend & Cloud, YuSMP Group · Arquitectura backend en Python/Django para equipos de producto de EE. UU. y la UE
Serpiente verde geométrica enroscada sobre un diagrama colorido del ciclo de lanzamientos anuales, con un editor de código backend en modo oscuro, que representa el versionado de un framework web de Python

La respuesta corta

El 10 de agosto de 2026, el Steering Council de Django aceptó la DEP 20, que lleva el framework a una única versión de funcionalidades al año a partir de enero de 2028. Los números de versión llevarán el año de lanzamiento (Django 2028, Django 2029). Se retira la designación «LTS»: cada versión recibe ahora tres años de soporte, con un año de correcciones de errores generales y después dos años de parches de seguridad y de pérdida de datos. Siempre habrá tres versiones simultáneas con soporte activo.

Para los equipos que hoy ejecutan backends con Django, la acción inmediata es sencilla: nada cambia antes de 2028. Django 6.1 y 6.2 LTS mantienen íntegros sus compromisos de soporte actuales.

Qué decidió el Steering Council de Django

Django se publica con una cadencia de unos ocho meses desde la versión 1.0, con dos versiones no LTS y una LTS al año. La DEP 20 lo sustituye por una única versión anual, aceptada por votación del Steering Council y publicada en el weblog oficial de Django el 10 de agosto de 2026.

El cambio central: una versión de funcionalidades por año natural, cada una con la misma ventana de soporte de tres años que antes tenían las versiones LTS. «LTS» como etiqueta aparte desaparece porque la distinción ya no existe: toda versión tiene soporte a largo plazo por definición.

Qué ocurre con Django 6.1 y 6.2 LTS

Los compromisos de soporte existentes no cambian:

Versión Se publica Fin de vida Notas
Django 6.1Agosto de 2026Diciembre de 2027Versión estándar, sin cambios
Django 6.2 LTSAbril de 2027Abril de 2030Última versión con la etiqueta LTS
Django 2028Enero de 2028Diciembre de 2030Primera versión anual, 3 años de soporte, sin etiqueta LTS
Django 2029Enero de 2029Diciembre de 2031Siempre hay tres versiones con soporte simultáneo

Nueva numeración de versiones: Django 2028, 2029

A partir de 2028, las versiones de Django llevan el año de lanzamiento en lugar de números de versión semánticos. Esto elimina una ambigüedad implícita: cuando se incrementan las versiones semánticas, los equipos suelen preguntar «¿qué tamaño tiene esta actualización?». La numeración por año hace explícita la cadencia en la propia cadena de versión. El salto de Django 2028 a Django 2029 es, sin ambigüedad, un incremento de un año.

También elimina la cuestión práctica de si una versión concreta es LTS o no. La respuesta es siempre la misma: sí, tres años.

Qué significa el fin de las LTS para la planificación de actualizaciones

Con el modelo anterior, los equipos se enfrentaban a una elección binaria: seguir las versiones de funcionalidades cada ocho meses o anclarse en la LTS y asumir un largo intervalo entre migraciones. Los equipos en LTS solían quedarse en una versión hasta su caducidad y afrontaban después una migración de varios años en una ventana comprimida.

Con el nuevo modelo, siempre habrá tres versiones con soporte simultáneo. Si su equipo ejecuta Django 2028 y no actualiza a Django 2029 al año siguiente, conserva los parches de seguridad hasta diciembre de 2030. Saltarse un año no tiene penalización. Las decisiones de actualización pueden guiarse por las funcionalidades y la capacidad del equipo en lugar de por una fecha límite de soporte en un calendario.

Para las organizaciones con obligaciones de cumplimiento (SOC 2, ISO 27001, RGPD o HIPAA), la matriz de soporte simplificada elimina una ambigüedad habitual en las revisiones de seguridad de proveedores: cada versión de la tabla de soporte conlleva la misma clase de compromiso de mantenimiento de seguridad.

Por qué importa la alineación con Python

La justificación de la DEP 20 se centra en la propia cadencia de lanzamientos de Python. Python publica una versión nueva cada octubre. El ciclo de ocho meses de Django «no ha encajado tan bien»: las versiones LTS acumulaban una amplia matriz de versiones de Python que incluía versiones de Python más allá de su propio fin de vida upstream, lo que generaba una carga de mantenimiento tanto para el equipo de Django como para los empaquetadores posteriores.

Con el modelo anual, cada versión de Django admite las tres versiones de Python más recientes en el momento de su lanzamiento e incorpora la nueva versión de Python durante su primer año de soporte, sin necesidad de una compilación LTS aparte que arrastre la matriz ampliada de Python.

Qué significa para los equipos de software de EE. UU. y la UE

Para los equipos que participan en desarrollo con Python/Django, las implicaciones prácticas se dividen con claridad entre corto y largo plazo:

Corto plazo (antes de 2028): sin cambios. Django 6.1 se publica en agosto de 2026 y tiene soporte hasta diciembre de 2027. Django 6.2 LTS se publica en abril de 2027 y tiene soporte hasta abril de 2030. Los equipos en cualquiera de las dos versiones siguen bajo las condiciones de soporte vigentes. No se introduce ninguna presión de migración.

Largo plazo (desde 2028): la cadencia de actualización resulta más fácil de razonar. Una versión al año, tres años de soporte de seguridad por versión y tres versiones con soporte simultáneo en todo momento. Los equipos pueden definir una política sencilla, por ejemplo «nos mantenemos a dos versiones de la actual», sin tener que distinguir entre compilaciones LTS y no LTS.

Para las organizaciones de la UE sujetas a NIS2 o DORA, que exigen una gestión documentada del ciclo de vida del software, el nuevo modelo hace más predecible la documentación del ciclo de vida de los proveedores: una única tabla de soporte, sin ambigüedad de etiquetas y con ventanas de tres años definidas.

Para los equipos de FinTech y HealthTech de EE. UU. con requisitos de revisión de seguridad de proveedores, ocurre lo mismo: todas las versiones de la matriz conllevan idénticos compromisos de parcheo de seguridad, lo que simplifica la respuesta a «¿se mantiene activamente esta dependencia?».

Preguntas frecuentes

¿Cuándo empieza el ciclo de lanzamientos anuales de Django?

El nuevo ciclo anual comienza con Django 2028, previsto para enero de 2028. Nada cambia antes de esa fecha. Django 6.1 y 6.2 LTS mantienen sus calendarios de soporte actuales.

¿Qué ocurre con las versiones LTS de Django?

La etiqueta LTS se retira a partir de Django 2028. Todas las versiones de funcionalidades del nuevo ciclo tienen una ventana de soporte idéntica de tres años. Django 6.2 es la última versión con la designación LTS porque es anterior al cambio de la DEP 20.

¿Tienen que actualizar Django con más frecuencia los equipos ahora?

No; en la práctica, hay menos presión. Siempre hay tres versiones con soporte simultáneo, así que saltarse una versión anual está admitido y no tiene penalización. Los equipos pueden actualizar cuando lo justifiquen las funcionalidades o los requisitos de negocio, no cuando una fecha límite de soporte los obligue.

¿Qué versiones de Python admitirá Django 2028?

Cada versión anual de Django admitirá las tres versiones de Python más recientes en el momento de su lanzamiento e incorporará la nueva versión de Python (prevista para octubre de 2027, según la que corresponda en el momento del lanzamiento) durante su primer año de soporte.

¿Qué es la DEP 20?

La DEP 20 es la Django Enhancement Proposal 20, la especificación formal del cambio al ciclo de lanzamientos anuales. Fue aceptada por el Steering Council de Django y publicada en el weblog oficial de Django el 10 de agosto de 2026. La propuesta completa está disponible en el repositorio django/deps de GitHub.

Fuentes

¿Construye o mantiene un backend de Python/Django para un producto de EE. UU. o de la UE? Hable con nuestro equipo sobre arquitectura, planificación de actualizaciones o ampliación de equipos para su sprint de ingeniería.