Turborepo 1.11
2023 年 12 月 5 日,星期二
Turborepo 1.11 完成遷移至 Rust,並推出多項開發者體驗改進
- 我們基於 Rust 的新基礎:我們已完成從 Go 的移植,為更好的效能、更高的穩定性和新功能奠定基礎。
- 將日誌分組以提高可讀性:您現在可以指定
--log-order=grouped
將您的日誌組織成以任務分隔的不同區段。 - 更新的範例:從 Next.js、Svelte、Remix、Nuxt 等範例開始。
立即執行 npx @turbo/codemod migrate
進行更新。
透過 Rust 解鎖 turbo
的未來
正如我們在關於遷移的部落格文章中所寫的那樣,我們很高興看到我們為 Turborepo 用戶所做的移植工作開始產生效益。 Rust 讓我們能夠在我們的程式碼中呈現更多的複雜性,以便我們能夠在您的程式碼庫中以多種方式創造更好的體驗
- 我們注意到,即使我們的程式碼尚未進行太多效能調整,某些使用案例的效能也立即得到輕微提升。我們期待深入研究如何讓
turbo
更快。 - 我們能夠將 globbing、路徑和編碼支援的偶然行為轉移到經過測試和支援的行為,讓我們更有信心按照預期處理您的設定。展望未來,我們將能夠將驗證和自動錯誤修復程式碼修改等功能建置到 Turborepo 中,以實現更高的穩定性。
- 我們已快速迭代,以在您的單體程式碼庫中增強錯誤訊息,作為下一個版本的特性,為您提供關鍵資訊,以找出錯誤設定的來源。
- 我們能夠更快地捕獲可能的平台相關錯誤,因為 Rust 強迫我們比 Go 更仔細地思考平台和環境之間的差異。這種更深入的可靠性從您的儲存庫中移除了一整個類別的潛在錯誤。
如果您發現任何您認為與新的 Rust 程式碼路徑相關的問題,您可以使用 --go-fallback
旗標選擇返回 Go 程式碼路徑,並在 GitHub 上回報問題。
將日誌分組以提高可讀性
為了讓您更容易檢閱任務日誌,我們引入了 --log-order
旗標,在任務完成後輸出任務的所有日誌,而不是在寫入時輸出。這會產生按任務分隔的日誌,提高特定任務日誌的可讀性。


使用 --log-order=grouped
啟用此行為。查看文件以了解更多資訊
更新的範例
我們的儲存庫包含範例目錄
,其中包含您專案的入門單體程式碼庫。
若要開始使用範例,請執行
我們正在重新努力確保我們的範例保持最新狀態。此外,我們還重新架構了我們的範例,以提倡單體程式碼庫的最佳實務。例如
- 在各個套件中進行編輯器內的「跳到定義」
- 相依性已更新至最新版本
- 預先設定 ESLint、Prettier、jest 和 vitest 等工具
- 在各個套件中進行熱重新載入
社群
自發布Turborepo 1.10 以來,我們看到了令人難以置信的採用率和社群成長
- 2.36 萬個以上的 GitHub 星星
- 每週 180 萬次以上的 NPM 下載
- 透過 Vercel 上的遠端快取節省了 206 年的運算時間
Turborepo 是其所有貢獻者(包括我們的核心團隊)共同努力的成果。
感謝您持續的支持、回饋和合作,使 Turborepo 成為您首選的建置工具。