Skip to content

Releasing

Sibrand Hoekstra edited this page Jan 12, 2022 · 6 revisions

This is the release process for every Curveball package.

  1. Decide on a version. We use Semver. Usually if it's just a bugfix or small change, increase the revision. If it's anything more substantial, it could be a minor or major change.
  2. Create a branch with the version name, such as prepare-0.2.4.
  3. In this branch, update Changelog.md in the package. The changelog should include the date, version and full list of changes since the last released version. To find out what has changed, use git diff v0.2.1 HEAD, where v0.2.1 is the previously released version. Often developers will keep changelog.md up to date for things that have changed over time, but it's also often missed; so it's important to do this diff so we have an accurate log. It's also nice to acknowledge external contributors here.
  4. Update dependencies. This is the best time to make sure all dependencies are up to date.
  5. Commit
  6. Run npm version [patch|minor|major]. This will create a new git tag and update package.json accordingly.
  7. Create a pull request for this branch, and get it reviewed.
  8. After it's merged, head to the 'Releases' page on github. On this page, create a new release.
  9. In the description of the release, copy the entries from changelog.
  10. After this release has been created, github actions should kick off to publish to npm, github packages and in the case of a12nserver, create a docker image.
Clone this wiki locally