Hay algo del mundo de Django y Python que me sorprende. Y es el tema de la versiones y la compatibilidad entre ellas. No todas las versiones de Django son compatibles con todas las versiones de Python. Yo llevo años utilizando Python 3, y por supuesto Django 2.x.
La compatibilidad de versiones es la siguiente :
Versión de Django | Versiones de Python |
---|---|
1.11 | 2.7, 3.4, 3.5, 3.6, 3.7 (added in 1.11.17) |
2.0 | 3.4, 3.5, 3.6, 3.7 |
2.1, 2.2 | 3.5, 3.6, 3.7 |
Lo que hay que saber es que Python no es siempre compatible con sus versiones anteriores.
Si tenemos un sitio desarrollado en Python 2.7, y queremos actualizar Django 1.11 a 2.1 vamos a tener que migrar el codigo Python de 2.7 a 3.5
Esto, no se si es muy probable. La versión 3.5 se lanzo el 13/09/2015, y Django 1.1 se lanzo en Julio del 2009. Los sitios desarrollados en Django en estos 5 años (2010-2015) son los candidatos. Pues es bastante tiempo.
Esperemos que Python 4 sea “Backward” compatible con 3.x, sino Django terminará haciendo una release con Python 4, que nos obligue a migrar código Python si queremos utilizar la ultima versión de Django en nuestros antiguos trabajos.