Développement : Python 2 n’est plus fourni avec macOS 12.3

Nicolas Furno |

La première bêta de macOS 12.3 fait le ménage dans Python. La version 2.7 de ce langage de développement n’est plus intégrée avec le système et il faut l’installer soi-même si on veut encore l’utiliser. Ce n’est pas une vraie surprise : Apple avait prévenu avec macOS Catalina que l’intégration de Python 2.7 était dépréciée et qu’elle allait disparaître avec une future mise à jour. On ne savait pas encore laquelle, c’est désormais chose faite.

macOS Catalina : zsh par défaut, Python et Ruby dépréciés

macOS Catalina : zsh par défaut, Python et Ruby dépréciés

macOS 12.2 intégre toujours Python 2.7 par défaut.

Python 2.7 est une version dépassée, le langage de développement en est désormais à la version 3 et elle devrait être celle par défaut depuis 2015. Malheureusement, la branche 2,x fait de la résistance, à tel point que les concepteurs du langage avaient accepté de la maintenir à jour jusqu’en 2020. Deux ans plus tard, plus personne ne devrait l’utiliser et Apple l’élimine enfin de son système.

Si vous essayez d’utiliser Python sous macOS 12.3 en revanche, vous aurez un message d’erreur par défaut.

Cela posera toutefois peut-être quelques problèmes encore. Python 2 reste utilisé par de nombreux scripts qui ne fonctionneront plus sous macOS 12.3 et plus gênant, des apps peuvent encore dépendre de lui. C’était notamment le cas de Firefox encore récemment, même si nous avons pu le lancer sans encombre avec la dernière bêta du système dédié aux Mac. On sait que Mozilla élimine progressivement les dernières traces de Python 2 et peut-être qu’il n’en reste plus dans les dernières versions du navigateur web.

Quoi qu’il en soit, Python ne disparaît pas complètement de macOS Monterey, mais c’est la version 3.9.2 qui est livrée et il faut l’utiliser avec la commande python3. Les scripts qui reposaient sur Python 2 devront être mis à jour pour fonctionner avec cette version du système. Il reste possible d’installer cette ancienne version, même si le gestionnaire de paquets Homebrew ne le permet plus par défaut1.

Par ailleurs, Apple n’a touché ni à Ruby, ni à Perl qui sont toujours livrés par défaut avec le système. PHP n’a pas eu autant de chance, il a été supprimé dès les premières versions bêta de macOS Monterey.

Comme prévu, macOS Monterey n’intègre plus PHP par défaut

Comme prévu, macOS Monterey n’intègre plus PHP par défaut


  1. La meilleure solution semble être d’installer l’outil pyenv avec Homebrew, puis Python 2.7 avec ce dernier. Vous trouverez des explications à cette adresse.  ↩︎

avatar YuYu | 

iterm2 + omz sur la 1ère capture 🥰

avatar M1_42 | 

Comment il s'appelle ce thème pour Iterm2 ?

avatar esclandre77 | 

Vous pouvez citer votre source svp ?

avatar Nicolas Furno | 

@esclandre77

Petit oubli, corrigé.

avatar the_optimist | 

Mac OS 15.3 dans le titre et premier paragraphe ?

avatar Nicolas Furno | 

@the_optimist

Purée, mais heureusement qu'on est vendredi hein ! 😢

avatar tupui | 

Correction, on est à Python 3.10… et 3.11 est en alpha. Et le 2015 je comprends pas, 3.9 date de 2020.

Tout le monde a fait la migration maintenant, ça fait du bien de plus avoir de trace de Python 2 !

avatar Marius_K | 

@tupui

Exactement, c’est même python 3.10.2

avatar ney | 

@tupui

L’industrie est lente à se mettre à jour, je fais encore de la migration Python 2 vers Python 3.

avatar tupui | 

@ney

Toutes mes condoléances 😅 Ça fait un moment que j’ai plus vu de Python 2 professionnellement (HPC, data science, backend).

avatar ney | 

@tupui

En général ce sont des vieux scripts pas très importants qui traînent ^^ mais bon il faut finir par les porter.

avatar Nicolas Furno | 

@tupui

Je voulais dire la version majeure 3, je vais enlever le numéro de version ensuite.

avatar Mrleblanc101 | 

@tupui

Beaucoup beaucoup n'ont pas fait la
migration...

avatar tupui | 

@Mrleblanc101

Je comprendrais jamais… Ne pas faire évoluer petit à petit son app c’est ce priver de tellement de choses (bug, amélioration, vitesse, nouveaux utilisateurs, volonté de développer pour les devs, etc.). Si c’est fait au fil des mises à jour, c’est vraiment rien franchement. (Je suis core dev de SciPy, et ça fait longtemps que l’on ne supporte plus 2.7… la nouvelle version va même seulement supporter Python >= 3.8. On fait plus de 1000 pull requests par versions…).

avatar 0MiguelAnge0 | 

Python 2 a énormément de failles….

avatar saoullabit | 

Enfin !!!
Et maintenant on passe aux drivers vidéo !

avatar sergiobzh | 

@tupui
T’es allé voir tous les gens qui font du python pour dire ça ??
On voit que tu es bien loin de la réalité des choses.
J’étais dans une grosse boite où l’on avait des dizaines de milliers de ligne de code python2. Je suis parti au printemps 2021 (preretraite 😊) et la migration n’était toujours pas commencée , loin s’en faut.

CONNEXION UTILISATEUR