Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Python, JavaScript, C, PHP, algorithmes, IDE
mehdi2001
Messages : 599
Inscription : mar. mai 19, 2026 7:24 pm

Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par mehdi2001 »

Hello la commu ! Je dois migrer une vieille codebase Python 2.7 (oui oui, c'est encore en prod...) vers Python 3.11. Des retours d'expérience ? J'ai peur des incompatibilités sur les unicode/bytes surtout.
le_julien
Messages : 280
Inscription : sam. sept. 28, 2024 7:24 pm

Re: Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par le_julien »

J'ai fait la même galère l'an dernier. Premier conseil : utilise 2to3 mais NE TE FI PAS QUE À ÇA. Teste chaque module manuellement. Les print() c'est facile, mais gare aux divisions entières et aux méthodes .keys() !
admin_sys_gaming
Messages : 571
Inscription : sam. janv. 20, 2024 7:24 pm

Re: Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par admin_sys_gaming »

N'oublie pas les dépendances ! Certains vieux packages ne marcheront plus. Dans mon cas, j'ai dû remplacer MySQLdb par mysqlclient et ça a été l'enfer pour les transactions...
camille31
Messages : 90
Inscription : mar. juil. 22, 2025 7:25 pm

Re: Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par camille31 »

Pour les strings, prévois 2x plus de temps que prévu. J'ai passé 3 semaines rien que sur les encode/decode. Protip : from __future__ import unicode_literals dans tous les fichiers avant de commencer !
mehdi2001
Messages : 599
Inscription : mar. mai 19, 2026 7:24 pm

Re: Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par mehdi2001 »

Merci pour vos retours, ça confirme mes craintes... @289 tu conseilles quoi comme IDE pour faciliter la migration ? PyCharm ou VS Code avec les bons plugins ?
le_julien
Messages : 280
Inscription : sam. sept. 28, 2024 7:24 pm

Re: Migration de Python 2.7 à 3.11 : retour d'expérience et pièges à éviter

Message par le_julien »

PyCharm Pro sans hésiter ! Son analyse de code statique détecte 90% des problèmes de compatibilité. Le plugin Python 2/3 Compatibility Checker vaut son pesant d'or.
Répondre