發行管道

Stable、canary 與 LTS dist-tags、同步版本、來源證明與發行流程。

Text.js 透過三個 npm dist-tag 發布。所有套件(@textjs/app、@textjs/react、@textjs/core、@textjs/font、@textjs/opencode、create-text-app 和 eslint-plugin-textjs)的版本同步更新,因此一個版本號碼就能代表整個框架。

發布管道

管道dist-tag版本安裝
穩定版latest1.0.xbun add @textjs/app
Canarycanary1.0.x-canary.Nbun add @textjs/app@canary
LTSlts, v1-lts在 2.0.0 推出後發布bun add @textjs/app@lts

正式環境請使用穩定版。若要在修正與功能合併至 dev 當天就試用,請使用 canary。LTS 版本線推出後,若你每年升級一次,請使用 LTS。

bun create text-app@canary my-console

穩定版

穩定版遵循語意化版本:修訂版修正錯誤,次版本新增向下相容的功能,主版本則可能在棄用期結束後引入不相容的 API 變更。穩定版由通過完整測試套件的 canary 升格而來,並附帶 npm 來源證明發布。

Canary

每次推送至官方儲存庫的 dev,都會經過型別檢查與測試,並以下一個修訂版加上 -canary.N 後綴發布:

latestdev 推送發布版本
1.0.0第一次1.0.1-canary.0
1.0.0第二次1.0.1-canary.1
1.0.1下一次1.0.2-canary.0

N 從 npm 上現有最高的 canary 編號接續遞增,因此編號不會重複。Canary 版本不會提交至儲存庫。在提交訊息中加入 [skip canary] 即可略過發布。

Canary 是 dev 的建置版本,所有提取請求都會合併至這個分支。Canary 可能在未另行通知的情況下變更或移除尚未發布的 API。若你依賴某個 canary 版本,請鎖定確切的版本號碼。

來源證明

版本透過 GitHub Actions 使用 npm publish --provenance 發布,將每個 tarball 連結至建置該檔案的確切提交與工作流程。使用以下指令驗證套件:

npm audit signatures

發布版本

維護者使用發布指令碼同步提升所有工作區套件的版本:

bun run release:version minor   # 1.0.0 → 1.1.0 (also: patch, major, canary, stable, x.y.z)bun run release:publish --tag latest --provenance

release:version 會重寫每個 package.json 及其對應的版本常數(VERSION、reconciler 的 rendererVersion),在套件版本不一致時拒絕執行,並以 --dry-run 印出執行計畫。release:publish 會建置、打包(解析 workspace:*)、套用 publishConfig,拒絕將預發行版本發布至 latest 或將穩定版本發布至 canary,並略過 npm 上已存在的版本。

各版本線的維護期限請參閱支援政策。

在 GitHub 編輯此頁