使用 Dune 發佈套件

重點摘要

建立一個 CHANGES.md 檔案並執行 dune-release bistro

opam 套件管理器可能與你習慣使用的套件管理器不同。為了確保生態系統的最高穩定性,每個套件的發佈都要經過兩個流程

  • 一個自動化的 CI 管道,測試你的套件是否可以使用多種發行版和多種 OCaml 編譯器版本安裝。它還會檢查你的新版本是否會破壞你的反向依賴(那些需要你的套件的套件)。下限檢查還可以確保你的套件可以與你的套件依賴項的最低版本一起安裝。
  • 由 opam-repository 維護者對套件元數據進行手動審查。

此過程從向 opam-repository 發送 PR 開始,並為要發佈的套件版本添加一個檔案。該檔案包含諸如套件名稱、描述、VCS 儲存庫以及最重要的,可以從哪裡下載來源的 URL 等資訊。

如果一切看起來都正常且 CI 建置通過,則 PR 會被合併,並且在 opam update 更新 opam-repository 後,該套件會在 opam 中可用。

如果有任何需要更改的地方,opam-repository 維護者會在 PR 上發表一些建議。

這是一個繁重的過程,但希望所有這些在用戶端都是完全自動化的。建議發佈套件的方式是使用 dune-release 命令(由 opam 套件 dune-release 提供)。

當你準備好在 opam 上發佈你的套件時,只需建立一個具有以下格式的 CHANGES.md 檔案

# <version>

<release note>

# <older version>

<release note>

並執行 dune-release bistro

Dune Release 將執行一些驗證(例如執行測試、檢查 opam 檔案等),並將在 opam-repository 上為你開啟一個 PR。從那裡,你所要做的就是等待 PR 被合併,或等待維護者審查你的套件發佈。

幫助改進我們的文件

所有 OCaml 文件都是開源的。發現有錯誤或不清楚的地方?提交一個 pull request。

OCaml

創新。社群。安全。