PyPy 真的走到終點了嗎?從 uv 專案的警告談 Python 生態的轉變

本篇文章更新時間:2026/03/09
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持


PyPy 不再積極開發?從 uv 的更新紀錄讀出社群的微妙訊號

編輯前言:這篇筆記源自 Warn about PyPy being not actively developed · Pull Request #17643,作者在 uv 的文件中加入對 PyPy 的警告,理由是:PyPy 似乎已不再被積極維護,甚至連 numpy 都開始逐步放棄支援。這件事在 Python 生態裡其實意義重大,值得一談。

核心觀點 (Key Takeaways)

  • PyPy 可能已經不再積極開發,雖然沒有官方聲明,但已有強烈跡象。
  • numpy 開發者在 issue 中提到 PyPy 的維護狀況,成為關鍵訊息來源。
  • uv 將此寫入官方文件,提醒使用者不要誤以為 PyPy 仍具備完整支援。

深入解析

這個 PR 的內容不長,但背後代表的訊號很明確:主流工具開始不再將 PyPy 視為「穩定且持續發展的 Python 替代執行環境」。

作者 konstin 指出:

It seems that PyPy is not being actively developed anymore and is phased out even by numpy.

這段話雖然簡短,卻點出了 PyPy 長期以來的核心困境:

  • 開發人力有限
  • 與 CPython 的 ABI 持續拉開距離
  • 生態系工具支援度下降(例如 numpy、scipy)

在這次 PR 之後,uv 的官方文件會新增警告,提示使用者 PyPy 不再是可靠的 Python 發行版本

對於一個曾被寄予厚望、強調 JIT 與效能的 Python 實作來說,這種警告象徵著某種階段性的結束。

子標題 1:numpy 的撤退是警訊

PyPy 雖然試圖與科學運算生態保持相容,但 numpy 的維護者在對應 issue(numpy/numpy#30416)中表達了 PyPy 狀態的不確定性,讓 uv 的開發者認定這已不是個「暫時性的支援缺口」。

只要 numpy 不支援,基本上 PyPy 在資料科學與機器學習領域就完全站不住腳。

子標題 2:工具鏈生態的選擇

uv 在新版(0.9.27)也同時強調對 Pyodide、GraalPy 等替代實作的更新,這意味著:

  • Python 生態仍然需要替代執行環境
  • 但投資方向似乎逐漸遠離 PyPy

尤其 GraalPy 的進展(例如支援 Free-threading)讓它在效能與未來性上更具吸引力。

筆者心得與啟發

老實說,看到這個 PR 時我心裡有點感慨。PyPy 曾是 Python 世界裡少數真正以「效能」為目標的實作,甚至在部分工作負載中能超越 CPython。但這些年 Python 核心團隊持續在 CPython 本身做 JIT、做 Free-threading,又有像 GraalPy 這樣的新實作冒出來,PyPy 在生態中的定位越來越困難

從 uv 把 PyPy 列入「需要警告的發行版」這件事,我得到兩個啟發:

  • 工具鏈的支援其實比 VM 本身更重要
  • 生態不會等待某個專案慢慢追趕,它會直接轉向更活躍的選項

如果你在專案裡仍依賴 PyPy,現在可能是時候思考替代方案了:

  • 在效能需求上,可觀察 GraalPy
  • 在 WebAssembly 與瀏覽器環境,可觀察 Pyodide

或許 PyPy 不會立刻消失,但生態的重心確實正在移動。對任何使用者或開發者來說,這都是值得關注的趨勢。


Share:

作者: Chun

WordPress 社群貢獻者、開源社群推廣者。專注於 WordPress 外掛開發、網站效能最佳化、伺服器管理,以及 iDempiere 開源 ERP 導入與客製開發。曾參與 WordCamp Taipei 等社群活動,GitHub Arctic Code Vault Contributor。提供資訊顧問、WordPress 開發教學、主機最佳化與企業 ERP 整合服務。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


文章
Filter
Apply Filters
Mastodon