儲存庫
文件
支援政策

作業系統

turbo 通常支援基於 Debian 的 Linux 發行版、macOS 和 x86_64 與 ARM 64 架構上的 Windows。具體來說,我們透過 npm 建置並傳送下列二進位檔案

  • turbo-darwin-64(搭載 Intel 晶片的 macOS)
  • turbo-darwin-arm64(搭載 Apple Silicon 的 macOS)
  • turbo-linux-64
  • turbo-linux-arm64
  • turbo-windows-64
  • turbo-windows-arm64

Darwin 建置適用於搭載 Intel 和 Apple Silicon 的 macOS。Linux 建置已在 Ubuntu 上測試,但我們預期它們可以在大多數 基於 Debian(在新分頁中開啟) 的發行版上執行。Windows 建置已在 GitHub Actions 中的 windows-latest 執行器(在新分頁中開啟) 上測試。

不支援的平台

透過從原始碼編譯,可以在不支援的平台上執行 turbo。說明已提供在 貢獻指南(在新分頁中開啟) 中。建置的原始碼為單一二進位檔案,因此您不會透過 Node.js 套件管理員(例如 npm install turbo)進行安裝和呼叫,而是直接執行 turbo 二進位檔案

/path/to/turbo run build

由於此類呼叫 turbo 也會遞延到您 node_modules 目錄中安裝的 turbo,如果您嘗試在具有 package.json 相依項中的 turbo 的 JavaScript 專案上執行 turbo,請使用 --skip-infer 旗標來略過遞延到已安裝的二進位檔。

Node.js 相容性

大部分核心 turbo 功能(特別是 turbo run)不依賴於系統上的 active Node.js 版本,但 Turborepo 及其生態系統的一些功能(例如 create-turboturbo-ignoreeslint-plugin-turbo)則依賴。對於這些功能,我們打算支援 Node.js 的 active 和維護 LTS 版本(在新分頁中開啟)

我們預期所有 範例 也能與這些版本搭配使用。

套件管理員

核心 turbo 功能仰賴 JS 生態系統中的套件管理員,以及它們對工作區設定 (在單一儲存庫中) 和鎖定檔案格式的實作。我們打算支援

  • npm (v6 以上)
  • yarn (v1 以上) (v4 部分支援)
  • pnpm (v6 以上)
  • bun (v1 以上) (測試版,不支援所有功能)

請注意,套件管理員本身有自己的發布時程、錯誤和功能。雖然我們打算跟上新的主要版本,但我們可能不會立即發布支援。

版本控制

我們支援使用 .git 版本控制的儲存庫,以及完全沒有版本控制的儲存庫。任何其他版本控制系統都將被忽略。請注意,我們使用 git 對檔案進行雜湊,因此沒有 git 的儲存庫可能會執行和表現不同。

版本

Turborepo 「大致上」遵循 SemVer 政策。這表示我們通常不會預期在修補程式或次要版本中進行故意的「重大」變更。

以下可能是例外情況

  • turbo.json 中的組態變更。

    這些變更通常應搭配一個 codemod,你可以使用 npx @turbo/codemod update 執行,並至少包含一個包含不推薦訊息的次要版本。

  • turbo CLI 指令的故意行為變更。

    這些變更應納入次要版本。如果變更幅度大或破壞性夠大,我們可能會包含旗標以選擇加入之前的行為。