ハクソク

世界を動かす技術を、日本語で。

PyPyがメンテナンスされていないことについて警告する

概要

PyPyの開発停止とNumPyによるサポート終了の動きが明確化。
公式声明はないが、関係者発言とドキュメントで警告追加。
astral-sh/uvのリリースノートでPyPy非推奨が明記。
関連するPythonツールやパッケージのアップデート情報。
今後はPyPy利用に注意が必要。

PyPyの開発状況とサポート終了

  • PyPyは現在、積極的な開発が行われていない状況。
  • NumPyの開発チームも、PyPyのサポートを段階的に終了する方針を示唆。
  • 公式声明は未発表だが、PyPy開発者自身による発言が確認されている。
  • ドキュメントにPyPyのサポート停止および非推奨の警告が追加。
    • 利用者がPyPyが十分にサポートされていると誤解しないよう注意喚起

NumPy Issue #30416の概要

  • NumPyリポジトリでのIssue #30416にて、PyPy開発者が現状を説明
  • PyPyの今後のサポート終了が実質的に示された形。
  • これを受けて、NumPyドキュメントにも警告文が追加された経緯。

astral-sh/uvのリリースノートと関連アップデート

  • astral-sh/uv v0.9.27のリリースノートにて、PyPy非推奨の警告が記載。
  • Python関連のアップデート:
    • Pyodide0.29.2へアップグレード。
    • GraalPy25.0.2へアップグレード。
  • 機能追加・改善点:
    • uv pipコマンドの-t--target)ショートフォーム追加。
    • ROCm 7.0/7.1アクセラレータバックエンドのサポート。
    • フリースレッディングABI非互換エラーの改善。
    • uv pip freeze --excludeフラグの実装。
    • uv pip compile--python-version指定時の自動ダウンロード対応。
    • Trusted Publishing with pyxのサポート。
  • バグ修正・ドキュメント改善:
    • Chocolateyシステムテストの修正。
    • SSL_CERT_FILEがディレクトリの場合の無限ループ修正。
    • CONTRIBUTINGガイドや各種ドキュメントの更新。
    • PyPyの非推奨警告追加。

今後のPyPy利用に関する注意点

  • PyPyの利用は今後リスクが高まるため、新規プロジェクトでは推奨されない
  • 公式のサポートやコミュニティの支援が期待できない状況。
  • 既存プロジェクトでPyPyを利用している場合は、他のPython実装(CPython等)への移行検討が必要。
  • NumPyや主要パッケージのサポート終了に伴い、動作保証やパフォーマンス面での課題発生リスク
  • 今後のPythonエコシステム動向の注視が重要

Hackerたちの意見

「ボランティアプロジェクトがもはやアクティブに開発されていない」っていうのが「メンテナンスされていない」に変わったのはちょっと興味深いね。
じゃあ、どんな婉曲表現が好きなの?
ちなみに、彼らは10月から月に2〜4回のコミットをしてるよ。[1] 最後のリリースは2025年7月だった。[2] [1]: https://github.com/pypy/pypy/commits/main/ [2]: https://github.com/pypy/pypy/tags
PyPyの貢献者たちには大いに敬意を表しますが、これはかなり妥当な評価のようですね。
それは大きな残念だね。役立つ学びがCPythonにちゃんと移植されてることを願ってるよ。
ほとんどの部分はCPythonに移植されてないと思うよ。全然違うアプローチだからね。
- ピュアPythonのREPLはPyPyから始まったけど、COythonのコア開発者たちが本番用に整えるために多くの作業をしたよ。 - HPyからの教訓が少しずつCPythonに取り入れられてきてる、詳しくはhttps://github.com/py-ni - 代替実装で標準ライブラリをテストすることで、CPythonの微妙なバグを修正するための有意義なやり取りがたくさんあったよ。もっと色々あるけどね。
他にも似た名前で混乱してる人がいるかもしれないけど、PyPIはPython Package Indexで、ちゃんとメンテナンスされてるよ。PyPyは「Pythonの高速で準拠した代替実装」なんだけど、3.12のバージョンをリリースするための開発者が足りてないんだ。[0]: https://github.com/orgs/pypy/discussions/5145
ありがとう。これ知ってたけど、いつも忘れちゃって混乱しちゃうんだよね。
ありがとう、私もこれをPyPIだと思って混乱してた、笑
CythonとCPythonを思い出すなぁ。
説明ありがとう。さらに、'uv'のGitHubリポジトリに問題があるってこともあって、頭の中で文字が交差しちゃった。
mypyは「Pythonのためのオプショナルな静的型チェッカー」なんだって。[0] PyPy(RPythonを通じて)とmypyが静的型チェックを扱ってるから、最近までこの2つのプロジェクトを混同してたよ。あと、別のコメントからmypyのmypyCについても知ったんだけど、なんか私の中でサークルが完成した感じ。[0] https://www.mypy-lang.org/ [1] https://github.com/mypyc/mypyc
短くまとめると、彼らは物に名前を付けるのが本当に下手くそだってことだね。
PyPyがたくさんの機能をうまく実装してるって知って、MayaのPythonインタプリタでマルチプロセッシングを直すのに役立ったよ。Mayaの中でtorchが動くようにするのも直せたし。残念だなぁ。ほんと、いろんな小さな使い道があって素晴らしいプロジェクトだよね。
@kvinogradov(オープンソース基金)、あなたに連絡してるのは、あなたがオープンソース基金やどのオープンソースプロジェクトがより良い資金を得られるかについて言ってたのを覚えてるから。PyPyはメンテナンスがほとんどされてないから、資金提供の候補として興味があると思うんだ。PyPyは一般的にPythonを何倍も速くするから、すごくいいよね。資金が不足してるメンテナを支援するために、基金が助けになればいいなと思ってる。あなたの意見を聞きたいし、PyPyのメンテナがもっと良い資金モデルを得られることを願ってる。
> @kvinogradov(オープンソース基金)、残念ながら、@-pingingはこのサイトでは機能しないんだ。誰かに通知することはできないよ。特定の人の注意を引きたいなら、オフサイトのコミュニケーション手段を使った方がいいよ。
HNにはこんなpingの仕方はないよね :/
PyPyのコア開発者だよ。もし誰かが金銭的にでもコーディングででも手伝いたいなら、いろんな方法で連絡できるよ。詳しくは https://pypy.org/contact.html を見てね。
ウェブサイトには目立つ寄付セクションが必要だね。Ladybirdブラウザみたいに寄付のティアを設けるといいかも。プロジェクトに少し£寄付したいと思ったけど、できる場所が見当たらなかった。
それと、メンテナンスされてないって大事な注意点だね。
PyPyは素晴らしい成果で、もっと支援されるべきだと思う。Microsoftの「Faster CPython」チームはPythonを5倍速くしようとしたけど、4年かけてやっと1.5倍くらいにしかならなかった。一方で、PyPyは何十年も5倍以上速く動いてる。だけど、PyPyの主な目的はCPythonの代わりに生産環境で使うことじゃなくて、メタトレースやSTMなどの研究プロジェクトだって印象がある。これが、CPython以外の実装に対するコアPythonチームの無関心と相まって、PyPyが認められない理由かもしれないね。
SciPyやscikit-learn、pandas、tensorflow、pytorchといったサードパーティのライブラリは、Pythonの成功にとって重要な役割を果たしてきたよね。CPythonはCで書かれていて、いいC APIを提供してるから、これらのライブラリはそれを利用して(遅い)Pythonから(速い)C/C++に素早く移行できる。開発のスピードと実行時のスピードの最適なバランスを取れるんだ。PyPyの代替手段であるCFFIは、大手が採用するには魅力が足りなかったし、Cythonやその仲間たちともうまく連携できるはずだったHPyも、ゲームに参加するのが遅すぎた。あの時にはPyPyの開発が勢いを失ってたからね。
うちでは、コアシステムのコンポーネントにPyPyを使って、もう10年くらいになるよ。
Faster Pythonプロジェクトは、マイクロソフトが去年、大量にプログラミング言語チームをリストラしたせいで、もっと進んでたはずだよ。全部「AI」の名のもとに。マイクロソフトは、コアなコンピュータサイエンスを諦めて、流行に乗ろうとしてる感じ。
PyPiって読んで、心臓が止まりそうになった。
PyPyはメンテナンスされてないわけじゃないよ。バグを修正してるし、時々JITも改善してる。ただ、残ってるコア開発者(私も含めて)は、CPythonに追いつく余裕がないんだ。だから、新しいCPythonのバージョンをサポートするには、新しい人たちが手を挙げる必要がある。3.12のサポートは始まっていて、新しい貢献者がそれを進めてくれてるよ。
ドキュメントに統合されたテキストは、PRのタイトルよりも簡潔だね。 > もう積極的に開発されていない
みんなの努力に感謝!どうやって手伝えるか考えてみるね。