Turborepo 1.5
Turborepo 1.5 是我們文件和 DX 的一大躍進,同時也為 turbo prune
帶來重大改進
- Monorepo 手冊:我們為您的 Monorepo 建置了遺失的手冊 - 關於工作區、程式碼共用、整合常用工具等等的指南。
- 移除
run
:turbo run <task>
現在可以縮短為turbo <task>
turbo prune
現在支援 pnpm 和 yarn 2+:現在pnpm
和yarn@berry
中支援修剪您的 Monorepo。- 改進
turbo.json
中的環境變數:環境變數現在是 Turborepo 管道配置中的一級公民。 package.json
雜湊的變更:我們改進了在執行任務時雜湊package.json
的方式。
立即執行 npm install turbo@latest
來更新。
Monorepo 手冊
首次設定 Monorepo 通常意味著需要理解許多新概念。您需要了解工作區、套件安裝、程式碼共用和依賴管理 - 以及更多。
這通常意味著想要從頭開始設定 Monorepo 的人們必須從不同的文件網站拼湊資訊。先是 pnpm
,然後是 tsup
,然後回到 changesets
,最後再回到 Turborepo 作為甜點。
我們希望透過 Monorepo 手冊 來填補這個空白。我們建置了關於如何整合您需要的所有工具來讓您的 Monorepo 順利運作的指南,包括以下指南:
移除 run
您現在可以使用 turbo <task>
,透過 Turborepo CLI 執行任務。
如果您的任務名稱與內建的 turbo
子命令衝突,我們將執行我們的子命令。這表示您不應該將您的任務命名為 prune
、run
或 login
之類的東西 - 因為這些是內建的子命令。
turbo run <task>
將繼續運作,並且沒有計劃棄用它。
Prune 現在支援 pnpm 和 yarn 2+
我們很高興宣布 turbo prune
現在支援 pnpm、yarn 和 yarn 2+。
您可以使用 turbo prune
建立 Monorepo 的修剪子集,其中包含專用的鎖定檔 - 以及給定目標應用程式及其依賴項所需的正確依賴項。這對於在 Docker 映像檔中有效率地使用 Turborepo 特別有用。
作為新手冊的一部分,我們還新增了一個關於使用 turbo prune
來建置 Docker 映像檔的章節。
請查看我們之前的 關於 prune 的部落格 以了解更多資訊。
turbo.json
中的環境變數
我們在 turbo.json
中引入了兩個新鍵 - env
和 globalEnv
。這些允許與任務分開配置環境變數
globalEnv
和 env
允許您指定環境變數的列表,而無需 $
前綴。這使得配置文件更容易閱讀。請在我們更新的文件中閱讀更多資訊。
為了幫助從先前的語法遷移,我們準備了一個 codemod。您可以執行 npx @turbo/codemod migrate-env-var-dependencies
。
這項工作建立在我們在 1.4.0 中新增的自動環境變數偵測之上。
package.json
雜湊的變更
現在,每個工作區中的 package.json
檔案始終被視為該工作區中任務的輸入。這表示如果您變更 package.json
中任務的定義,我們希望使先前定義的任何快取失效。
根目錄中的 package.json
也算在內。變更根目錄 package.json
將使根工作區中的任務失效。
這有助於使 Turborepo 的快取更智慧一些,並且在任務定義變更時不太可能出錯。
社群
自從 8 月發佈 Turborepo v1.4 以來,我們看到了驚人的採用率和社群成長
- 9.5k+ GitHub 星星
- 每週 44 萬次 NPM 下載
- 透過 Vercel 上的遠端快取,節省了 15 年的運算時間,每週節省超過 1 年,自 7 月以來增加了 2 倍
Turborepo 是我們所有貢獻者(包括我們的核心團隊)共同努力的成果。
此版本由以下人員的貢獻為您帶來:@7flash、@afady、@alexander-young、@atilafassina、@bguedes-moz、@bobaaaaa、@brunojppb、@chris-olszewski、@DoctorJohn、@erj826、@futantan、@gsoltis、@HosseinAgha、@ivov、@jaredpalmer、@joelhooks、@knownasnaffy、@laurentlucian、@leerob、@MarceloAlves、@mattpocock、@mauricekleine、@mehulkar、@Misikir、@nareshbhatia、@nathanhammond、@pakaponk、@PhentomPT、@renovate、@ruisaraiva19、@samuelhorn、@shemayas、@shuding、@t-i-0414、@theurgi、@tknickman、@yanmao-cc 及更多人!
感謝您持續的支持、回饋和協作,讓 Turborepo 成為您的首選建置工具。