Files
_hublib-web/docs/release-policy.md

1.3 KiB

Release policy

This monorepo is released through Git tags. We do not use Changesets or npm publish.

Principles

  • Every release points to a commit where the package dist/ is already built and committed.
  • Tags are package-specific, so each package can be released independently.
  • Consumers install by tag using Git SSH URLs.

Tag format

  • tach-typography-vX.Y.Z
  • video-player-vX.Y.Z
  • content-suggestions-vX.Y.Z

X.Y.Z must match the version in the package's package.json.

Release checklist (single package)

  1. Update package version in packages/<package>/package.json.
  2. Build package:
yarn workspace @hublib-web/<package> build
  1. Verify that dist/ and package.json contain the release changes.
  2. Commit release files:
git add packages/<package>/package.json packages/<package>/dist
git commit -m "release(<package>): vX.Y.Z"
  1. Create annotated tag:
git tag -a <package>-vX.Y.Z -m "@hublib-web/<package> vX.Y.Z"
  1. Push commit and tags:
git push origin main --follow-tags

Multi-package release

If one commit releases several packages, create one tag per package on the same commit.

Consumer installation

Use the package-specific tag in dependency spec. See git-installation.md.