(資料圖片)
Turborepo 1.10已發布。
Turborepo 是一個適用于 JavaScript 和 TypeScript 代碼庫的高性能 monorepo 構建系統。
所謂 monorepo,簡單來說就是將所有項目代碼放到一個 Git / Mercurial / Subversion 代碼倉庫中。當下許多大型前端項目和公司都采用了 monorepo 方案,比如 Google、Facebook,以及社區知名開源項目 Babel、Vue-next 都使用了 monorepo 方來管理他們的代碼。
Turborepo 1.10 主要變化
引入代碼生成器:支持使用turbo gen
生成源代碼,包括創建新工作區和復制現有工作區 Turborepo 代碼生成器支持開發者以可預測的結構化方式將新代碼添加到倉庫庫中。以前,他們需要自己復制代碼并手動將依賴項添加到新工作區。借助代碼生成器,現在自動化了創建新工作區并將其集成到倉庫中的過程。
優化環境變量輸入:現在可以更輕松地依賴具有通配符和.env
支持的環境變量。 .env
文件通常用于加載環境變量。當使用turbo
來運行的時候,這可能會導致問題,因為這些變量可能是不可見的,并且不容易包含在任務的哈希中。在本地工作時,此問題可能會導致意外的緩存命中。
Turborepo 現在通過自動支持.env
文件讓這一切變得更加容易。
{ "$schema": "https://turbo.build/schema.json", "globalDotEnv": [".env"], "pipeline": { "build": { "dotEnv": [".env.production.local", ".env.local", ".env.production", ".env"] }, "dev": { "dotEnv": [".env.development.local", ".env.local", ".env.development", ".env"] }, "test": { "dotEnv": [".env.test.local", ".env.test", ".env"] } }}
引入新的環境模式:現在可以指定--env-mode=strict
來控制任務哈希 (task hashes) 中包含的環境變量 引入環境變量通配符:大型應用程序的turbo.json
中可能會出現許多環境變量。這可能會使配置難以管理和維護。使用通配符,現在可以指定要包含在哈希中的變量模式。 { "$schema": "https://turbo.build/schema.json", "pipeline": { "build": { "env": ["ACME_*"] } }}
詳情查看發布公告。
關鍵詞: