3 points par GN⁺ 2026-03-10 | 1 commentaires | Partager sur WhatsApp
  • Une modification indiquant explicitement dans le dépôt uv que PyPy n’est pas activement développé a été fusionnée dans la documentation
  • L’auteur de la proposition mentionne, en s’appuyant sur une issue du projet numpy, que PyPy est progressivement écarté
  • La documentation a reçu un avertissement indiquant que « PyPy n’est plus activement développé et n’est pris en charge que jusqu’à Python 3.11 »
  • Par la suite, dans la communauté, des développeurs PyPy ont contesté cette formulation, en expliquant que « la maintenance continue, mais que le manque de ressources humaines rend difficile le suivi des versions de CPython »
  • Le projet a ensuite remplacé la formulation initiale « unmaintained » par « not actively developed » afin de refléter la situation plus précisément

Aperçu de la pull request

  • konstin a créé une PR ajoutant un avertissement concernant PyPy dans la documentation du projet uv
    • Il précise comme motif que « PyPy n’est plus activement développé et est progressivement abandonné aussi dans numpy »
    • Il explique qu’il n’existe pas de déclaration officielle, mais qu’une issue liée à numpy a été soulevée par des développeurs de PyPy
  • Le passage suivant a été ajouté à la documentation (docs/concepts/python-versions.md)
    • « PyPy n’est plus activement développé et n’est pris en charge que jusqu’à Python 3.11 »
  • La PR, composée de 4 commits, a été fusionnée dans la branche main le 22 janvier 2026

Discussions dans la communauté

  • Certains contributeurs ont fait remarquer que l’avertissement semblait redondant, puis il a été modifié pour n’apparaître qu’une seule fois
  • Après la fusion, la communauté PyPy et des développeurs externes ont réagi via les commentaires GitHub
    • stuaxo a cité les propos de développeurs PyPy en affirmant que « PyPy est maintenu, il est simplement plus lent que CPython »
    • Foxboron a demandé : « Avez-vous contacté les mainteneurs de PyPy avant la fusion ? »
    • vitorsr a cité le développeur principal de PyPy, mattip, qui a déclaré qu’« il faut davantage de contributeurs ou de soutien financier »
  • HaoZeke a demandé le retrait de la PR, jugeant inapproprié qu’elle ait été fusionnée sans discussion

Réponse du projet

  • charliermarsh a expliqué avoir modifié le titre de la PR, de « unmaintained » à « not actively developed »
  • zanieb a précisé qu’il n’y avait aucune intention malveillante, en expliquant que, dans l’issue numpy, un développeur principal de PyPy avait lui-même indiqué que le projet « n’était pas activement développé »
  • mattip (développeur principal de PyPy) a déclaré que la formulation actuelle reflète la situation de manière équitable et a accepté son maintien
    • Il a toutefois indiqué que la PR pourrait être annulée si PyPy était mis à jour vers Python 3.11.15

Impact après la fusion

  • Cette modification a été incluse dans la version uv 0.9.27 et reflétée comme mise à jour de la documentation
  • Homebrew et plusieurs bots d’automatisation font référence à cette PR, si bien que l’avertissement concernant PyPy figure désormais dans la documentation officielle

1 commentaires

 
GN⁺ 2026-03-10
Réactions sur Hacker News
  • Je suis développeur core de PyPy. Si quelqu’un veut aider, que ce soit financièrement ou par des contributions en code, il peut consulter les moyens de nous contacter
    • Ce serait bien d’avoir une section de dons bien visible sur le site. Un système de paliers de soutien comme pour le navigateur Ladybird serait aussi une bonne idée. J’ai voulu faire un petit don moi-même, mais j’ai eu du mal à trouver où le faire
    • Je viens de faire un don. Merci à toute l’équipe PyPy. J’utilise souvent PyPy dans mon appli, et pour les tâches très gourmandes en calcul, c’est en général plus de 5 fois plus rapide que CPython. Ce qui prenait 5 minutes sur CPython se termine en quelques secondes sur PyPy
    • J’ai aussi une autre suggestion. Je sais que PyPy est rapide sur les charges CPU-bound, mais il pourrait aussi montrer de meilleures performances sur les charges I/O-bound. Ce serait bien d’avoir une page de benchmarks comparant par exemple le débit de traitement des requêtes HTTP entre asyncio et CPython. Un outil automatisé permettant de mesurer directement les performances de PyPy sur le web serait aussi intéressant
    • Le site affiche en gros la mention maintenance interrompue
  • PyPy n’est pas un projet abandonné. Les corrections de bugs et les améliorations du JIT continuent. En revanche, les développeurs core restants n’ont pas les moyens de suivre le rythme très rapide des évolutions de CPython. Il faut de nouveaux contributeurs pour prendre en charge les nouvelles versions. Heureusement, le travail sur la version 3.12 est en cours grâce à un nouveau contributeur
    • CPython est devenu une sorte de projet commercialisé. Certains développeurs écartent les autres, et beaucoup de projets financés par des entreprises disparaissent au bout de 5 ans. Tous les gens brillants sont partis. Réécrire unicodeobject.c pour la 150e fois, passe encore, mais le reste devient difficile à suivre
    • La formulation fusionnée dans la documentation est plus concise que le titre de la PR — « n’est plus activement développé »
  • PyPy est vraiment une réalisation remarquable. Alors que l’équipe Faster CPython de Microsoft n’a obtenu qu’un gain de 1,5x en 4 ans, PyPy est plus de 5 fois plus rapide depuis des décennies. Mais il semble que l’objectif principal de PyPy relève davantage du projet de recherche (meta-tracing, STM, etc.), et que l’équipe CPython, peu intéressée par les autres implémentations, lui accorde moins d’attention
    • Le succès de l’écosystème Python vient des bibliothèques d’extensions C comme SciPy, pandas ou TensorFlow. CPython a fourni une API C qui a permis à ces bibliothèques d’accélérer facilement leurs performances. Le CFFI de PyPy n’était pas assez attractif pour être adopté par de gros projets, et HPy est arrivé trop tard, une fois que PyPy avait déjà perdu son élan
    • Le projet Faster Python aurait peut-être pu aller plus loin, mais Microsoft l’a stoppé l’an dernier en licenciant massivement les équipes liées aux langages pour courir après le boom de l’IA
    • Nous utilisons PyPy en production depuis plus de 10 ans dans des composants centraux de notre système
    • PyPy est excellent sur les benchmarks, mais dans le développement réel à grande échelle, il y a trop de problèmes de compatibilité. La plupart des gens sont impressionnés par les tests de performance, mais échouent sur leurs applications réelles. Le GC étant lazy, les ressources comme les descripteurs de fichiers ne sont pas libérées à temps, ce qui entraîne facilement un épuisement des ressources. Le vrai problème, c’est que ces différences importantes ne sont pas documentées
  • Pour ceux qui confondent les noms : PyPI est l’index des paquets Python, tandis que PyPy est « une implémentation alternative de Python, rapide et très compatible ». Mais la sortie de la version 3.12 est actuellement retardée faute de développeurs (discussion liée)
    • Merci pour l’explication. J’étais particulièrement perdu parce que PyPi et PyPy étaient mélangés dans une issue du dépôt uv
    • Ça me rappelle la relation entre Cython et CPython
    • mypy est un « vérificateur de types statique pour Python ». Comme le RPython de PyPy traite aussi de typage statique, je les ai souvent confondus autrefois. J’ai récemment découvert mypyc, et j’ai enfin l’impression que les liens se sont faits dans ma tête
    • Le sens du naming est vraiment catastrophique
  • Il est intéressant de voir que « plus activement développé en tant que projet bénévole » a été remplacé par « maintenance interrompue »
    • À titre indicatif, PyPy a eu entre 2 et 4 commits par mois depuis octobre dernier, et la dernière release date de juillet 2025 (historique des commits, liste des tags)
    • Tout mon respect aux contributeurs de PyPy, mais qualifier le projet de maintenance interrompue me semble assez juste
  • Ce serait vraiment dommage si PyPy disparaissait. J’espère que les résultats de recherche utiles accumulés au fil du temps ont été transférés vers CPython
    • Le REPL pur Python lancé par PyPy a été repris et affiné dans CPython, et les enseignements de HPy sont progressivement intégrés à CPython. De plus, PyPy a permis de corriger beaucoup de bugs subtils dans la bibliothèque standard de CPython
    • Mais l’approche est totalement différente, donc la plupart des techniques n’ont probablement pas été portées directement vers CPython
  • J’ai lu PyPi et j’ai cru pendant une seconde que mon cœur s’arrêtait
  • Il vaudrait peut-être mieux investir du temps et de l’argent dans RustPython désormais (site officiel, GitHub)
    • Mais RustPython est plus lent que CPython, donc je ne vois pas bien pourquoi l’utiliser
  • Au final, ce qui fait avancer le développement, c’est l’argent. Pourquoi n’existe-t-il toujours pas de système permettant de faire des dons aux développeurs de toute une arborescence de dépendances ? Si ce genre de problème s’accumule, la maintenance va devenir de plus en plus difficile
  • Merci à toute l’équipe PyPy pour tous ses efforts. Je vais moi aussi chercher comment aider