Skip to content

Release

Dùng Changesets. Các package @tasco/* đi lockstep (fixed), publish lên private registry GitLab/Nexus (access: restricted).

Quy trình hằng ngày

Mỗi MR có thay đổi ảnh hưởng package phải kèm changeset:

bash
pnpm changeset
# chọn package + mức bump (patch/minor/major); major = breaking

File .md sinh ra trong .changeset/ commit cùng MR.

Cadence & channels

  • latest: release ổn định theo cadence cố định (vd 2 tuần/lần).
  • next / beta: dist-tag để team sản phẩm test trước.
bash
# publish bản beta thủ công (nếu cần)
pnpm changeset pre enter beta
pnpm changeset version && pnpm -w build && pnpm changeset publish --tag beta
pnpm changeset pre exit

Pipeline (CI)

.gitlab-ci.yml ở root:

  • quality (mọi nhánh): pnpm lint && pnpm typecheck && pnpm build.
  • release (nhánh main): pnpm build && pnpm changeset publish.

Bump version + changelog chạy bằng pnpm changeset version (commit vào main qua "version MR" hoặc bước thủ công trước khi release). CI publish các package có version mới hơn registry.

Chi tiết cấu hình registry/token (instance vs project endpoint, các gotcha 401): xem Cấu hình .npmrc.

Breaking change

  • Bump major + viết mục Migration Guide tương ứng.
  • Ưu tiên phát hành qua beta để team sản phẩm migrate sớm.