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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Logiciels Libres & Open Source Discussion :

Calibre, le gestionnaire open source de livres numériques, ne va pas migrer à Python 3


Sujet :

Logiciels Libres & Open Source

  1. #1
    Chroniqueur Actualités
    Avatar de Patrick Ruiz
    Homme Profil pro
    Redacteur web
    Inscrit en
    Février 2017
    Messages
    1 837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Redacteur web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2017
    Messages : 1 837
    Points : 51 397
    Points
    51 397
    Par défaut Calibre, le gestionnaire open source de livres numériques, ne va pas migrer à Python 3
    Calibre, le gestionnaire open source de livres numériques, ne va pas migrer à Python 3
    Car l’auteur s’estime capable de maintenir Python 2

    Calibre, le gestionnaire open source de livres numériques, ne va pas migrer à Python 3. Kavid Goyal, l’auteur du soft, l’a fait savoir sur la liste de diffusion de bogues d’Ubuntu, ce, en réponse à des requêtes d’utilisateurs.

    Nom : call thum.png
Affichages : 14561
Taille : 134,7 Ko

    Les demandes et la réaction de la tête derrière le logiciel interviennent dans un contexte marqué par l’annonce de la fin de la maintenance de Python 2.7. Cela fait 4 ans que la fondation en charge du développement du langage de programmation a fait d’une pierre deux coups en fixant l’arrêt du support de Python 2 à 2020 et en annonçant la sortie de Python 3.0. Depuis lors, de nombreux paquetages Linux ont migré. La liste est assez fournie et on y retrouve des quasi incontournables de l’univers du développement d’applications avec le langage Python comme NumPy – un paquetage dédiée au calcul scientifique – et Django – un framework pour le développement d’applications web. En avril dernier, Red Hat s’est mêlé à la danse avec un avis de passage de Python 2 à Python 3 dans la prochaine version majeure de son système d’exploitation. D’autres distributions Linux se sont arrimées à la tendance ; depuis la version 23, Fedora intègre Python 3 comme interpréteur ; pareil pour Ubuntu depuis la version 12.10 (Quantal Quetzal) – annoncée en 2012.

    Nom : python 2 vs 3.jpg
Affichages : 7874
Taille : 33,6 Ko

    Mais, il ne s’agit pas d’une mouvance globale puisque que le toilettage du langage a mené à un Python 3 non rétrocompatible avec son prédécesseur. C’est cet état de choses qui motive la décision de l’auteur de Calibre qui déclare qu’ il est parfaitement capable de maintenir Python 2 seul. « C’est beaucoup moins de travail que d’envisager la migration de la base de code entière », ajoute-t-il. Le fait est que bon nombre de projets continuent de s’appuyer sur Python 2. Cela fait deux ans que Semaphore CI – un fournisseur de solutions d’intégration et de livraison continue – livre les statistiques d’utilisation du langage dans le cadre de projets commerciaux. En 2016, 71,9 % des projets sur sa plateforme s’appuyaient sur Python 2. En 2017, la version 2 du langage concentrait encore 63,7 % de projets sur la même plateforme ; une baisse certes, mais un chiffre avec une relative importance.

    Ça fait dix ans (depuis l’annonce de la sortie de la version 3.0) que la version 2 continue de bénéficier du support de la Python Software Foundation. Il vient que même à la maison mère on a intégré que la migration vers la version 3 n’est pas aisée. Mais, le compte à rebours est lancé et dans le cercle officiel, le 1er janvier 2020 marquera la fin du support de Python 2 comme confirmé par Guido Van Rossum – créateur du langage – il y a quelques mois.

    Sur GitHub, un développeur a décidé d’entamer la longue marche vers une version de Calibre compatible avec Python 3. « Mon objectif est de faire tourner ce code sur Python 3 de la même façon qu’avec Python 2 », écrit-il. Ce dernier vise une compatibilité totale avec la version 3 du langage d’ici fin 2019 ou au plus tard aux aurores de l’année 2020.

    Source : liste de diffusion de bogues Ubuntu

    Et vous ?

    Qu’en pensez-vous ?

    Quel commentaire faites-vous du positionnement de Kavid Goyal ?

    Sur quelle version de Python basez-vous vos projets ? Pourquoi ?

    Voir aussi :

    Python va supprimer les termes "master/slave" de sa documentation et sa base de code pour des raisons de diversité et leur connotation à l'esclavage

    Python 3.7 est disponible, une version majeure avec beaucoup de nouvelles fonctionnalités et optimisations, et des améliorations de performance

    IEEE : Python devient le meilleur langage en 2017 en dépassant C et Java, découvrez le classement complet selon divers critères

    Microsoft envisagerait d'ajouter Python comme langage de script officiel à Excel, les utilisateurs sont appelés à donner leur opinion sur la question
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre éprouvé
    Femme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Italie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 263
    Points : 998
    Points
    998
    Par défaut
    Python2 / Python3 c'est une des raison pour la quelle ce langage ne me plait pas, ce n'est pas possible que on est a la 3.7 et on veut encore utiliser la 2... J'ai choisi ruby e C# à la place

  3. #3
    Membre éprouvé
    Profil pro
    Développeur .NET
    Inscrit en
    Février 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 363
    Points : 1 036
    Points
    1 036
    Par défaut
    Tout pareil, sauf pour le ruby

    J'apprends quant même le 3 à mon fils aîné

    Faire une version sur py3 qui ne prend pas en compte les améliorations du langage est assez futile.

    Donc, un soft destiné à terme à mourir lorsque py2 sera retiré des distrib.

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur C++
    Inscrit en
    Octobre 2008
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur C++

    Informations forums :
    Inscription : Octobre 2008
    Messages : 242
    Points : 705
    Points
    705
    Par défaut
    Citation Envoyé par emilie77 Voir le message
    Python2 / Python3 c'est une des raison pour la quelle ce langage ne me plait pas, ce n'est pas possible que on est a la 3.7 et on veut encore utiliser la 2... J'ai choisi ruby e C# à la place
    Il n'y a pas que le python où ce problème existe. Dans l'écosystème node.js c'est pire, bien qu'il y ait un fort respect du semantic versioning, beaucoup de modules changent et cassent l'API. Mais pour gérer ce problème on fait en sorte de pouvoir dépendre d'une version précise. Le seul véritable soucis, est d'espérer que la version qu'on utilise soit encore maintenue / stable / sans vulnérabilité si on ne migre pas.

    Python 3 existe depuis longtemps et le temps de migration était largement assez long. Je pense que certains se donnent trop d'excuses pour ne pas migrer et lancer la pierre à python, c'est facile.

    Pour info, en Lua c'est pire : d'une version à l'autre il peut y avoir une dizaines de changements non rétrocompatibles avec des versions plus fréquentes que python. Pour l'avoir testé et vécu, là pour le coup je peux admettre et comprendre les frustrations liées à ce langage.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2017
    Messages : 2
    Points : 5
    Points
    5
    Par défaut @ emilie77 qui n'aime pas python
    J'ai de la difficulté à comprendre le lien entre les deux versions de python et le fait de ne pas aimer ce langage...
    Je pense personnellement qu'il n'y a plus qu'une seule version à utiliser après dix ans, c'est la version 3 et c'est ce que je fais car j'ai migré l'ensemble de mes productions.
    Tu n'aimes pas python, c'est ton droit, mais dire que c'est parce qu'il en existe deux versions me semble un peu léger.

  6. #6
    Membre émérite
    Profil pro
    retraité
    Inscrit en
    Décembre 2010
    Messages
    806
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2010
    Messages : 806
    Points : 2 307
    Points
    2 307
    Par défaut
    Je ne suis pas spécialiste python mais est ce si difficile de migrer ? y a pas des outils qui font cette transformation ?

  7. #7
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 969
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 969
    Points : 3 375
    Points
    3 375
    Par défaut
    Python aurait dû fournir un script de conversion même basique.

    Faire du Python3 n'est pas tellement compliqué, le problème est qu'ils ont des dépendances et énormement de paquages, les uns dépendants des autres, ça peut devenir un casse tête.

    Ce que je reproche à cette version Python3 c'est que le code n'est pas complètement orienté objet.
    Il faut encore passer par des astuces pour créer des properties, des variables privées...
    Ce qui veut dire que le code ne sera pas correctement OO et donc il faudrait probablement encore le changer lors d'une prochaine version de Python, probablement la 4 ou la 5.

    Cela dit Python est un très bon langage mais il n'évolue pas assez vite et entièrement.
    Si la réponse vous a aidé, pensez à cliquer sur +1

  8. #8
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 374
    Points : 1 401
    Points
    1 401
    Par défaut
    https://docs.python.org/2/library/2to3.html

    C'est sorti en même temps que Python 3 :-)

  9. #9
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2007
    Messages : 884
    Points : 2 018
    Points
    2 018
    Par défaut
    Ce problème existe dans tous les langages interprétés (alors quel intérêt à changer de languages). Car dans les langages compilés, on peu toujours utilisé une ancienne version sans obligé l'utilisateur a avoir cette ancienne version d'installée.
    C'est pourquoi le problème est moindre en Java et absent du C... Sauf que bien sûr si on veux continuer de développer dessus il faut s'adapter au mises à jour des librairies.
    Il suffit d'une mise a jour trop importante et/ou brutale (autrement dis une mauvaise gestion id est, une volonté trop importante de changement) pour perdre une partie des développeurs. Le problème ce n'est pas le langage mais sa mise a jour.
    Tout ce que j'écris est libre de droits (Licence CC0) et je vous incite à faire de même.

  10. #10
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 163
    Points : 710
    Points
    710
    Par défaut
    Zut, je suis un aficionado de ce logiciel, faudrait pas que ça parte en sucette cette affaire.
    Concernant python, je ne connais pas trop, mais ça à l'air de tourner à l'usine à gaz, j'ai testé bof ... testé ruby itou et finalement mon choix s'est porté sur lua. (mais c'est très personnel)

  11. #11
    Membre actif
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2018
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mai 2018
    Messages : 73
    Points : 228
    Points
    228
    Par défaut
    Citation Envoyé par hotcryx Voir le message
    Ce que je reproche à cette version Python3 c'est que le code n'est pas complètement orienté objet.
    Et ?

    Il faut encore passer par des astuces pour créer des properties
    Quelles astuces ?

    des variables privées...
    Sur ce point, il n'y a pas d'astuce, Python est Open Kimono, je ne vous pas de quelle astuce vous voulez parler…

    Ce qui veut dire que le code ne sera pas correctement OO
    En quoi ? On fait "plus correctement" de l'OO en Python qu'en Java si on suit les concepts de la POO…

    [/QUOTE]

Discussions similaires

  1. Recherche livre PKI open Source
    Par KindPlayer dans le forum Sécurité
    Réponses: 1
    Dernier message: 04/08/2008, 11h44
  2. [Open-Source][Java]Blackdog, lecteur/gestionnaire audio
    Par xixi31 dans le forum Mon programme
    Réponses: 14
    Dernier message: 07/04/2008, 09h35
  3. gestionnaire de contenu open source
    Par francky04 dans le forum Général Java
    Réponses: 3
    Dernier message: 04/05/2006, 12h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo