Mise à jour le 04/12/2017 : Django 2.0 est disponible en version stable
Django 2.0 est enfin disponible en version stable. Depuis la version alpha 1 sortie en septembre, toutes les fonctionnalités de Django 2.0 étaient déjà connues. Avec la bêta 1 sortie en octobre, l'équipe de développement du framework Web Python s'est donc concentrée sur la correction des bogues bloquants. Il s'agit des problèmes qui constituent une régression par rapport à une version précédente de Django ou des bogues importants dans une nouvelle fonctionnalité. Deux semaines après la première release candidate, Django 2.0 est maintenant disponible en version stable.
Il s'agit d'une version majeure, mais il n'y a pas de changements majeurs de rupture de compatibilité (à part la suppression du support de Python 2.7). La mise à niveau ne devrait donc pas nécessiter des efforts supplémentaires par rapport à celles des versions précédentes. Il est aussi important de noter qu'avec la sortie de Django 2.0, Django 1.11 arrive à la fin du support principal. La dernière version de correction de bogues, 1.11.8, a été publiée le 2 décembre. Mais comme il s'agit d'une version bénéficiant d'un support à long terme, Django 1.11 recevra des correctifs de sécurité jusqu'en avril 2020.
Notons également que Django 1.10 est arrivé à la fin de son support étendu. Tous les utilisateurs de Django 1.10 sont donc encouragés à passer à Django 1.11 ou des versions plus récentes pour continuer à recevoir des correctifs pour des problèmes de sécurité.
Page de téléchargement Django
Sources : Blog Django, Notes de version Django 2.0
Django 2.0 est enfin disponible en version stable. Depuis la version alpha 1 sortie en septembre, toutes les fonctionnalités de Django 2.0 étaient déjà connues. Avec la bêta 1 sortie en octobre, l'équipe de développement du framework Web Python s'est donc concentrée sur la correction des bogues bloquants. Il s'agit des problèmes qui constituent une régression par rapport à une version précédente de Django ou des bogues importants dans une nouvelle fonctionnalité. Deux semaines après la première release candidate, Django 2.0 est maintenant disponible en version stable.
Il s'agit d'une version majeure, mais il n'y a pas de changements majeurs de rupture de compatibilité (à part la suppression du support de Python 2.7). La mise à niveau ne devrait donc pas nécessiter des efforts supplémentaires par rapport à celles des versions précédentes. Il est aussi important de noter qu'avec la sortie de Django 2.0, Django 1.11 arrive à la fin du support principal. La dernière version de correction de bogues, 1.11.8, a été publiée le 2 décembre. Mais comme il s'agit d'une version bénéficiant d'un support à long terme, Django 1.11 recevra des correctifs de sécurité jusqu'en avril 2020.
Notons également que Django 1.10 est arrivé à la fin de son support étendu. Tous les utilisateurs de Django 1.10 sont donc encouragés à passer à Django 1.11 ou des versions plus récentes pour continuer à recevoir des correctifs pour des problèmes de sécurité.
Page de téléchargement Django
Sources : Blog Django, Notes de version Django 2.0
Django 2.0 est la prochaine version majeure du framework et depuis quelques jours, Django 2.0 alpha 1 est disponible. Cette version représente la première étape du cycle de publication de Django 2.0 et vous offre l'opportunité de tester les changements apportés dans la version 2.0. Il s'agit d'une étape importante parce qu'elle marque le gel de toutes les fonctionnalités majeures et mineures de Django 2.0.
L'un des grands changements dans cette version, comme rapporté au début de l'année, est la fin du support de Python 2. Django 2.0 prend en charge Python 3.4, 3.5 et 3.6. La série Django 1.11.x est la dernière à prendre en charge Python 2.7 et Django 2.0 sera la dernière série de versions à supporter Python 3.4. Si vous prévoyez un déploiement de Python 3.4 au-delà de la fin de vie de Django 2.0 (avril 2019), il est donc recommandé d'utiliser Django 1.11 LTS (pris en charge jusqu'en avril 2020). Notez cependant que la fin de la vie de Python 3.4 est prévue pour mars 2019.
Parmi les nouvelles fonctionnalités de Django 2.0, on note une syntaxe de routage d'URL simplifiée. La nouvelle fonction django.urls.path() offre une syntaxe de routage d'URL plus simple et plus lisible. Pour illustrer cela, cet exemple des versions précédentes de Django :
Code : | Sélectionner tout |
url(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),
Code : | Sélectionner tout |
path('articles/<int:year>/', views.year_archive),
Il faut également noter qu'avec Django 2.0, contrib.admin sera optimisé pour le mobile. L'admin est maintenant responsive et prend en charge tous les principaux appareils mobiles. Comme autre fonctionnalité, la nouvelle expression Window permet d'ajouter une clause OVER aux querysets.
Pour le reste, il s'agit de fonctionnalités mineures détaillées dans les notes de version de Django 2.0 ; une longue liste à découvrir.
Outre les nouvelles fonctionnalités, il y a bon nombre de changements incompatibles avec les versions précédentes du framework Web Python. On peut citer par exemple la suppression de la prise en charge des chaînes normales (appelées parfois chaînes d’octets ou bytestrings) dans certains endroits. C'est une conséquence du fait que Python 2 ne sera plus supporté. En effet, pour prendre en charge les chaînes natives de Python 2, les anciennes versions de Django ont dû accepter à la fois les bytestrings et les chaînes Unicode. Maintenant que Python 2 ne sera plus supporté, les développeurs sont donc invités à mettre à jour leur code pour limiter le plus possible l'utilisation des chaînes d'octets, car Django réduit désormais leur utilisation.
Entre autres changements incompatibles avec les versions précédentes de Django, on peut encore noter la suppression du support d'Oracle 11.2. Cette version ne sera en effet plus supportée par Oracle après décembre 2020. Pour anticiper cela, Django 2.0 ne va supporter officiellement qu’Oracle 12.1+. Django 1.11 (pris en charge jusqu'en avril 2020) est peut-être la version à utiliser si vous voulez utiliser Oracle 11.2.
Les notes de version fournissent également la liste exhaustive des changements incompatibles, des fonctionnalités supprimées et celles qui sont désormais obsolètes (donc à supprimer dans les versions à venir).
Après la version Alpha 1 annoncée le 22 septembre, la première bêta est attendue dans un mois, avec la correction de tous les bogues non bloquants pour la sortie de Django 2.0. Après la bêta 1, seuls les bogues bloquants seront corrigés, c’est-à-dire les problèmes qui constituent une régression par rapport à une version précédente de Django ou des bogues importants dans une nouvelle fonctionnalité.
Selon le calendrier actuel, la première release candidate de Django 2.0 devrait être disponible à la mi-novembre. Cette version marquera le gel des chaînes de traduction (il s'agit de marqueurs dans le code Python et les gabarits qui indiquent à Django qu'un texte doit être traduit dans la langue de l’utilisateur pour autant qu’il existe une traduction de ce texte dans cette langue). Deux semaines plus tard, ce sera la sortie de la version stable de Django 2.0 ou la RC 2 si nécessaire.
Sources : Communiqué officiel, Notes de version
Et vous ?
Qu’en pensez-vous ?