IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Python Software Foundation annonce qu'elle mettra fin au support de Python 2 à partir du 1er janvier 2020
Et prévient qu'elle n'apportera plus son aide pour tout problème rencontré après cette date

Le , par Olivier Famien

930PARTAGES

14  0 
Il n'y aura pas de Python 2.8
Le support de la version 2.7 prolongé jusqu'en 2020 et la migration vers Python 3.4 encouragée

« Il n’y aura pas de Python 2.8 ! ». La version 2.7 sera la dernière de la branche 2.x. C’est le message fort de la dernière conférence Pycon qui se tient actuellement à Montréal au Canada. Néanmoins, la version 2.7 bénéficie d’une grâce. Sa durée de vie s’est vue prolongée jusqu’en 2020.

Python est un langage de programmation dont la popularité n’est plus remise en question. Depuis sa création en 1990 par Guido Van Rossum, 15 versions de Python se sont succédées, dont la dernière en date est la 3.4.

Cependant, Python 3.4 (plus robuste et mature) n’est pas largement adopté par les développeurs de la communauté des inconditionnels du langage de programmation. Ceux-ci préfèrent plus la version 2.7.

Pourquoi ? Même si plusieurs raisons peuvent être évoquées, deux d’entre elles méritent l’attention. La première, c’est que les utilisateurs sont conservateurs. « Si ça fonctionne correctement pourquoi devrais-je migrer ? ». Windows XP en est un exemple typique. Microsoft a dû repousser la date de fin du support plusieurs fois. Et même comme ils ont annoncé officiellement que tout est fini, il y a encore des adeptes qui ne veulent pas abandonner XP.

La seconde raison est en relation avec les packages disponibles. Python 2.7 regorge de packages pour lesquels les développeurs ont une affection toute particulière. À l’exemple de Zope (qui est considéré par certains comme une Killer-App), de Twisted, Pika, Python-Ldap, Python-OpenID qui ne sont malheureusement pas disponibles sous Python 3.4.


(en rouge les packages non pris en charge par Python 3.4 et en vert ceux pris en charge)

Par conséquent pour éviter de donner raison à ceux qui pensent que Python 3 était une erreur, il est impératif que des stratégies soient mises en place pour favoriser son adoption.

Source: Pycon

Et vous ?

Avez-vous migré vers Python 3.4 ?

Pourquoi la version 2.7 est-elle privilégiée par les développeurs ? Python 3.4, était-ce une erreur ?
Vous avez lu gratuitement 419 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de calvaire
Expert éminent https://www.developpez.com
Le 30/12/2019 à 9:20
je suis passé rapidement a python3.x... mais jusqu'a aujourd'hui ce langage m'a toujours gonflé a cause de existence de ces 2 versions :
Distrib linux qui utilise python2 par défaut (j'ai eu beaucoup de difficulté parfois avec des clients ou j'ai du réécrire mon code en python2 parce qu’ils ne pouvaient pas installer python3)
Documentation sur le net ou faut faire attention a chaque fois que c'est bien du python3 (heureusement c'est de moins en moins le cas avec les années)
Des libs qui n'existe plus ou alors des imports a modifier
...

Don la fin du support de python2.7, cela veux dire que les distrib linux vont devoir migrer 100% de leurs scripts et ne plus installer par défaut python2, je suis content... j'aurais aimer que cette fin de support arrive plus tot (disons en 2015)

bon débarra python2, repose en paix... vers silverlight
8  3 
Avatar de stardeath
Expert confirmé https://www.developpez.com
Le 30/12/2019 à 13:19
Citation Envoyé par Olivier Famien Voir le message
Pour AlexMax, si l’équipe de développement de Python a reporté la première date de fin du support de Python 2.7, et s’il existe encore une forte population qui continue à utiliser Python 2.7, c’est parce qu’il n’y a pas suffisamment d’éléments motivants qui poussent à la migration vers Python 3. Au lieu de travailler à ces lacunes en implémentant de nouvelles fonctionnalités dans Python 3 pour convaincre les développeurs à migrer vers cette version, l’équipe de Python a plutôt agité le bâton en rappelant à chaque fois l’imminence de l’abandon de Python 2.x. Résultat, certains développeurs estiment qu’ils pourraient se tourner plutôt vers d’autres langages.
ça c'est encore une bonne excuse pour ne pas migrer : "il n'y a pas 100% des trucs que je veux dans python 3 (mais qui de toute façon n'était pas là dans python 2) donc je migre pas".

je suis d'accord avec calvaire, python 2 aurait du être mis de coté il y a au moins 10 ans. les gens/entreprises/etc trouveront toujours une bonne excuse pour pas le faire, ils n'ont toujours pas compris les risques à s'y prendre trop tard, qu'ils assument au bout d'un moment.

ps: en relisant c'est encore pire que ce que je pensais :

"la représentation fondamentale des chaînes de caractères a changé pour le pire et non le meilleur ;" dans python 3 des données sont des collections d'octets et des chaînes de caractères sont des collections de ... caractères, en quoi c'est pire qu'avant où les données étaient des chaînes de caractères? et maintenant on a la prise en charge correcte d'unicode, enfin je ne suis plus obligé d'utiliser une verrue dans mon code pour accéder à des fichiers avec des caractères funkies.

"la gestion des paquets était et demeure un cauchemar en utilisant une combinaison d’environnements virtuels pip pour installer les dépendances spécifiques au projet ;" ça n'a donc pas changé, je vois pas pourquoi imputer ça à python 3 ...

"comparé à d’autres langages, Python 3 est toujours lent, car il ne valoriserait que la simplicité par convention ;" pareil, ça se plaint que python 3 a changé trop de trucs, mais là que ça n'a pas changé, ça se plaint pareil ..., en plus tu fais du python pour sa simplicité d'écriture avant tout (enfin je pense), ou alors la personne ne sait pas choisir un langage

"la bibliothèque asyncio permettant d’écrire du code concurrent en utilisant la syntaxe async/await aurait été ajoutée assez tardivement ;" et donc? c'est tardif donc on migre toujours pas?

"des indications de type ont été ajoutées au langage en s’appuyant uniquement sur des analyseurs statiques de type hinting au lieu de créer également des vérifications de type d’exécution dans le langage, ce qui aurait été beaucoup plus utile et cohérent, selon l’intervenant ;" toujours pareil, ça reste du python, tu peux pas reprocher à la fois de trop changer et de ne pas assez changer, sinon autant faire un nouveau langage, ça aurait râler pareil néanmoins.

"jusqu’à présent, il n’y a toujours pas de fonctions lambda anonymes multilignes." pareil que ma première version du post, "il n'y a pas 100% des trucs que je veux donc je migre pas"

bref, j'ai la flemme de trouver une conclusion à ce merdier...
7  2 
Avatar de Thomas404
Membre actif https://www.developpez.com
Le 30/12/2019 à 17:22
Tant mieux, cette situation avec 2 versions existantes etait ridicule, et moi je l'aime bien python 3.7
6  1 
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 10/09/2019 à 12:04
Un exemple que je j'ai bien suivi est le langage Rust : il a mis en place un changement de syntaxe en 2018. Python et Perl ont clairement fait figure d'exemple à ne pas suivre lors des discutions sur la stratégie à adopter.
Leur solution finale a consisté à laisser chaque crate (l'équivalent du paquet) choisir l'édition qu'elle utilise(2015 ou 2018). Le compilateur est capable de compiler les deux éditions et les crates de différentes éditions peuvent interagir de manière totalement transparente.
Si l'édition n'est pas spécifiée c'est l'édition 2015 qui est employée, ainsi les anciennes crates continuent de fonctionner de manière totalement transparente, cependant l'outil qui crée les nouvelles crates définit par défaut la version à 2018.

J'ai moins suivi leur cas, mais il me semble que Go et Swift ont mis en place eux aussi des changements majeurs sans diviser lourdement leurs utilisateurs.
4  0 
Avatar de RPGamer
Membre averti https://www.developpez.com
Le 30/12/2019 à 0:29
Passage déjà fait depuis longtemps et sans grande difficulté. Sans regret, adieux Python 2.
5  1 
Avatar de wiztricks
Expert éminent sénior https://www.developpez.com
Le 10/09/2019 à 13:36
Citation Envoyé par stardeath Voir le message
de toute façon si les utilisateurs ne veulent pas migrer, ils feront tout pour ne pas le faire, autant dans ce cas ne pas s'emmerder avec ces personnes là, ils sont une perte de temps, autant se consacrer sur l'avenir et les gens qui le supporte.
Une stratégie de migration va dépendre du nombre d'utilisateurs impactés, de la quantité de bibliothèques à migrer pour qu'ils puissent migrer leurs propres applications et du coût, pour les différents développeurs, de maintenir une version python2 et une version "python3".

Et si la communauté Python était restée droit dans ses bottes, on aurait peut être eu droit à un fork pour tous ceux qui se sentaient un peu abandonnés.

A la place, nous avons eu des outils comme six qui permettent de maintenir des versions python2 et python3 assez facilement... Et plus de délais pour que cette migration ne soit pas une punition mais l'occasion d'apporter de nouvelles fonctionnalités aux utilisateurs finaux tout en profitant (un peu) de celles du langage.

Le choix étant comme toujours entre avancer plus vite et se retrouver un peu seul ou ralentir pour permettre aux autres de suivre.

- W
3  0 
Avatar de stardeath
Expert confirmé https://www.developpez.com
Le 30/12/2019 à 22:34
Citation Envoyé par Pogzy Voir le message
Nim c'est Python en mieux et compilé, donc très rapide...
perso si je fais du python, c'est justement pour, entre autre, me passer d'une étape de compilation, si tu proposes toi d'en rajouter une ...
bref, je vois pas le rapport avec la choucroute.
3  1 
Avatar de
https://www.developpez.com
Le 31/12/2019 à 11:09
Citation Envoyé par Pogzy Voir le message
Nim c'est Python en mieux et compilé, donc très rapide...
Oui voilà, Nim est compilé, a un type system évolué avec de la metaprogrammation, transpile vers C/C++/JS, est peu connu et a peu de bibliothèques. Donc en fait Nim n'a à peu près rien à voir avec Python...
2  0 
Avatar de Bktero
Modérateur https://www.developpez.com
Le 13/01/2020 à 19:37
Citation Envoyé par michel92140 Voir le message
jusqu'à ce que des innovations vraiment utiles m incitent à changer, et ce n'est pas actuellement le cas.
J aime bien la simplicité de python2.7, en plus j ai constaté qu'un programme que j'ai écrit en python 3 semblait nettement plus lent.
Peut être une fausse impression ?
Ton profil dit que tu es enseignant. J'espère que n'apprends plus Python 2 à tes élèves, et que tu le gardes pour toi uniquement
3  1 
Avatar de Aspartame
Membre confirmé https://www.developpez.com
Le 10/09/2019 à 0:08
Citation Envoyé par Olivier Famien Voir le message

« Nous avons publié Python 2.0 en 2000....

la PSF a vraiment dit ça ... waou!
1  0