Skip to content

Latest commit

 

History

History
92 lines (60 loc) · 1.57 KB

File metadata and controls

92 lines (60 loc) · 1.57 KB

Release Guide

This repo uses:

  • develop for day-to-day work
  • master for release readiness
  • Changesets for versioning and changelogs
  • GitHub Actions for validation + publishing
  • npm OIDC (no npm tokens)

When to add a changeset

Add a changeset when a change impacts consumers:

  • public API changes (new exports, removals, behavior changes)
  • bug fixes
  • anything that should be mentioned in release notes

Command:

npx changeset

Commit the generated file under .changeset/.


Branch flow

  1. Create a branch from develop
  • feat/..., fix/..., docs/..., etc.
  1. Open PR into develop
  • PR checks must pass:
    • typecheck
    • tests
    • build
    • lint
    • format check
  1. Promote developmaster
  • Open PR from develop to master
  • Release check must pass (optional Sonar if enabled)

Versioning + publishing

Publishing is triggered by pushing a git tag on master.

Steps:

  1. On develop, apply versions locally using changesets:
npm run version-packages
  1. Commit the version bump (package.json + changelog output)
git add -A
git commit -m "chore: version packages"
git push
  1. Merge developmaster

  2. Tag the release on master and push tag:

git checkout master
git pull
git tag vX.Y.Z
git push origin vX.Y.Z

That tag triggers the CD - Release workflow which publishes via npm OIDC.


Notes

  • Do not publish from local machines.
  • Do not edit dist/ manually (it is build output).
  • If publishing fails, check GitHub Actions logs first, then npm OIDC configuration.