Python 開發社群正在積極討論基於 Rust 的 Python 程式碼檢查和格式化工具 Ruff 帶來的影響和優勢。該工具承諾相比傳統工具有顯著的效能提升,目前已獲得廣泛採用,包括 Amazon 、 FastAPI 和 Hugging Face 等大型組織。它的出現也引發了關於 Python 開發工具未來發展的有趣討論。
使用 Ruff 的主要組織:
- Amazon (AWS SAM)
- Anthropic (Python SDK)
- Apache Airflow
- FastAPI
- Hugging Face
- Docker
- Home Assistant
- IBM (Qiskit)
主要特點:
- 比現有工具快10-100倍
- 內建快取功能
- 超過800條內建規則
- 與 Flake8、isort 和 Black 即插即用的相容性
- 一流的編輯器整合支援
速度與生態系統整合
討論的焦點之一是圍繞 Ruff 的效能優勢。該工具宣稱比現有的程式碼檢查工具(如 Flake8 )和格式化工具(如 Black )快10-100倍,社群成員對這些效能提升的實際影響持不同觀點。一些開發者報告在大型程式碼庫中看到顯著改善,特別是在分析和科學計算領域,原本需要幾分鐘的任務現在只需幾秒鐘就能完成。
「相比之下,僅僅一個小團隊一年左右的編碼時間,這個生態系統就能在幾秒鐘內完成任務,而傳統工具則需要幾分鐘或更長時間。特別是在分析或科學計算領域,我們看到處理時間從幾分鐘縮短到不到一秒。」
工具鏈整合優勢
社群強調的一個重要優勢是 Ruff 將多個工具整合到一個統一的介面中。開發者不必再管理多個用於格式化、匯入排序和各種程式碼檢查任務的獨立工具,而是可以使用一個統一的配置系統。這種整合特別受到 Python 新手的歡迎,因為他們此前在配置多個開發工具時常常感到困難。
重寫之爭
關於選擇用 Rust 重寫現有 Python 工具而不是改進原有實現的決定,引發了一場有趣的哲學討論。雖然一些開發者擔心這會放棄多年來社群的貢獻,但其他人認為這種全新的方法能夠實現透過對現有工具進行增量更新所無法達到的根本性改進。
風險投資支援及未來影響
社群對於 Ruff 和其他現代 Python 開發工具背後的風投支援組織 Astral 表現出既興奮又謹慎的態度。一些開發者對依賴風投支援的工具持謹慎態度,而另一些人則認為這種投資能夠推動 Python 生態系統的必要改進。這場討論反映了開源軟體在商業支援和社群驅動發展之間的平衡問題。
結論
Ruff 的出現代表了 Python 開發工具的重要轉變,展示了現代方法如何解決生態系統中長期存在的痛點。儘管社群仍在討論這一轉變的各個方面,但該工具被主要組織採用以及開發者的積極反饋表明,它正在成為 Python 開發領域的重要組成部分。