返回部落格

Turborepo 1.12

2024 年 1 月 30 日,星期二
Mehul Kar
姓名
Mehul Kar
X
@mehulkar
Tom Knickman
姓名
Tom Knickman
X
@tknickman
Greg Soltis
姓名
Greg Soltis
X
@gsoltis

Turborepo 1.12 新增了廣受歡迎的社群要求功能和回饋改進,包括

在此版本中,我們也完成了遷移到 Rust 的清理工作,移除了 --go-fallback 旗標,並將 turbo 二進位檔的大小縮減了 58%(與 1.11 版本相比)。

立即執行 npx @turbo/codemod migrate 進行更新,或執行 npx create-turbo@latest 開始使用。

任務日誌中的色彩

色彩是快速在使用者介面中呈現重要資訊的好方法。開發人員工具通常會以綠色突出顯示成功,以黃色突出顯示警告,或以紅色突出顯示錯誤。

A screenshot of a terminal running a `turbo` task with colors from the underlying shell logs.

在此版本中,我們現在預設會顯示本機環境中基礎任務的色彩。這是社群的熱門要求,我們很高興今天能推出 macOS 和 Linux 的支援。我們將在未來的版本中跟進 Windows 的支援。

錯誤全面改進

開發人員體驗的重要一環是確保在發生問題時,清楚了解如何返回正常路徑。在此版本中,我們改善了 Turborepo 錯誤設定所產生的錯誤訊息。

A screenshot of a terminal attempting to run a `turbo` task but receiving an informative error that an unknown key `output`, was found in the `turbo.json` file.

在這個增強的 UI 中,我們

改善 inputs 的人體工學設計

Turborepo 預設會聰明地理解您任務的輸入。但在某些情況下,您可能也想在任務輸入中包含或排除特定檔案或目錄。

重要的是,在任務上使用 inputs 金鑰會讓您退出任務的所有預設輸入,例如從輸入中省略已受 gitignore 影響的檔案。直到今天,您還必須自己建立 glob 模式來手動帶回這些預設值。

今天,我們加入 $TURBO_DEFAULT$ 作為 inputs 陣列中使用的特殊值。

turbo.json
{
  "pipeline": {
    "build": {
      "inputs": ["$TURBO_DEFAULT$", "!README.md", "!**.test.**"]
    }
  }
}

此微語法可讓您使用您已習慣的 Turborepo 預設值,同時加入自己的自訂 glob,以微調預設輸入行為。

請參閱 inputs 文件以了解更多資訊。

遙測

Turborepo 在將近兩年前發佈,而 turbo 在過去兩年中有了顯著的發展。隨著社群的成長,您的回饋對於協助我們專注於對 Turborepo 使用者最重要的事項,具有不可估量的價值。

到目前為止,我們的回饋收集流程是手動、緩慢且容易出錯的。雖然我們永遠非常感謝提交 GitHub 問題、在 GitHub 討論中與我們交談,並在 Discord 中與社群聊天的使用者,但這些回饋僅捕捉到 Turboverse 一小部分的觀點。

今天,我們引入了一種完全匿名、自動化的回饋方法,以進一步了解社群使用 Turborepo 的方式。當我們繼續反覆運算 turbo 時,此資訊將協助我們確保效能、確認穩定性、設計新功能,並推動專案的方向。

我們正在建立未來的建置系統,此資訊對於指導我們朝這個方向努力將非常有價值。如需更多資訊,請造訪 turbo.build/repo/docs/telemetry

如果您想退出遙測,請執行

終端機
turbo telemetry disable

您也可以透過設定環境變數來退出

其他改進

社群

自從發佈 Turborepo 1.11 以來,我們看到令人難以置信的採用和社群成長

Turborepo 是所有貢獻者(包括我們的核心團隊)共同努力的成果。

感謝您持續的支持、回饋和協作,使 Turborepo 成為您首選的建置工具。