Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Hello la commu ! Mon entreprise prévoit de migrer notre codebase (150k lignes) de Python 3.8 à 3.11. Des retours d'expérience sur les incompatibilités ? J'ai peur des libs qui vont lâcher...
Re: Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
J'ai fait la même migration l'an dernier. Le gros piège : les décorateurs avec paramètres. La syntaxe a changé en 3.9. Prévois 2 jours rien que pour ça si t'utilises beaucoup de @decorator(x,y).
-
admin_sys_gaming
- Messages : 571
- Inscription : sam. janv. 20, 2024 7:24 pm
Re: Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Checke bien tes dépendances avec pip-audit ! J'ai eu une mauvaise surprise avec scipy qui plantait en 3.11. Solution temporaire : lock les versions dans requirements.txt.
Re: Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Merci ! Vous conseillez de passer d'abord par 3.10 ou direct en 3.11 ? Notre CI est sous Docker donc on peut tester les deux.
-
kernelpanic59
- Messages : 71
- Inscription : jeu. sept. 21, 2023 7:24 pm
Re: Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Direct en 3.11, aucun intérêt à faire deux migrations. Par contre exige Python 3.11 dans ton Dockerfile, et teste avec pytest --cov en parallèle. J'ai perdu 3 jours à debugger des subtilités de typing...
Re: Migration de Python 3.8 vers 3.11 : pièges à anticiper ?
Petit + : profite des perf boosts sur les f-strings et les match/case si t'as du legacy en if/elif. Sur notre code, on a gagné 15% d'exécution juste avec ça !