En tout cas, cette version s'annonce comme un mal de tête énorme pour tous les créateurs de bibliothèques, qui devront pendant une période de temps importante (python 2.3 est encore utilisé énormément, voir 2.2) fournir 2 versions de leur code...
Pour les modules écrits entièrement en Python, l'outil 2to3 s'occupe de convertir automatiquement tout le code. Il n'y a rien à faire. Pour les modules écrit en C, je ne sais pas. Je pense que d'avec des #ifdef, on doit pouvoir s'en sortir.
Quand on voit le mal que les core développeurs ont à porter les bibliothèques internes (cf email), il y a de quoi s'inquiéter.
J'ai aidé à porter le module email. Son gros défaut est qu'il mélangeait allègrement octet et caractère, chose totalement fausse d'un point de vue conceptuel. Disons que ça marche (en Python2), mais que le comportement est parfois inattendu...
Un gros travail a été fait sur le module et il a été intégré de justesse à la version alpha 1.
Porter un module pour Python3 implique de recadrer certaines choses, et ça va dans le bon sens.
[^] # Re: Plusieurs bémols
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Sortie de la version 3.0a1 du langage Python. Évalué à 1.
Pour les modules écrits entièrement en Python, l'outil 2to3 s'occupe de convertir automatiquement tout le code. Il n'y a rien à faire. Pour les modules écrit en C, je ne sais pas. Je pense que d'avec des #ifdef, on doit pouvoir s'en sortir.
Quand on voit le mal que les core développeurs ont à porter les bibliothèques internes (cf email), il y a de quoi s'inquiéter.
J'ai aidé à porter le module email. Son gros défaut est qu'il mélangeait allègrement octet et caractère, chose totalement fausse d'un point de vue conceptuel. Disons que ça marche (en Python2), mais que le comportement est parfois inattendu...
Un gros travail a été fait sur le module et il a été intégré de justesse à la version alpha 1.
Porter un module pour Python3 implique de recadrer certaines choses, et ça va dans le bon sens.