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 中建置驗證和自動錯誤修復程式碼模組等功能,以實現更佳的穩定性。
- 我們已針對您的 monorepo 中的強化錯誤訊息進行快速迭代,作為下一個版本的特色功能,為您提供關鍵資訊以找出錯誤配置的來源。
- 我們已經能夠更快地捕捉到可能的平台相關錯誤,因為 Rust 迫使我們比 Go 更密切地思考平台和環境之間的差異。這種更深入的可靠性從您的儲存庫中移除了一整類可能的錯誤。
如果您發現任何您認為與新的 Rust 程式碼路徑相關的問題,您可以使用 --go-fallback
標誌選擇返回 Go 程式碼路徑,並在 GitHub 上回報問題。
群組日誌以提升可讀性
為了讓您更輕鬆地檢閱任務日誌,我們導入了 --log-order
標誌,以便在任務完成後而非寫入時輸出任務的所有日誌。這會產生按任務分隔的日誌,從而提高特定任務日誌的可讀性。


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