Release checklist for Obnam

2021-09-24 06:03

1 Release checklist for Obnam

Follow these steps to make a release of Obnam.

  1. Create a release branch.
  2. Update dependencies for the crate, and make any needed changes.
  3. Make sure everything still works.
  4. Review changes in the crate (git log vX.Y.Y..). Update the NEWS.md file with any changes that users of Obnam need to be aware of.
  5. Update the crate’s Cargo.toml with the appropriate version number for the new release, following semantic versioning.
  6. Update debian/changelog with a summary of any changes to the Debian packaging (it’s not necessary to repeat NEWS.md here). Use the dch command to edit the file to get the format right, since it’s quite finicky.
  7. Commit any changes.
  8. Run cargo publish --dry-run and fix any problems.
  9. Push to gitlab.com and create a merge request.
  10. Wait for GitLab CI to test the changes successfully. Fix any problems it finds.

After the above changes have been merged, do the following steps. You need to have sufficient access to both the gitlab.com project and the git.liw.fi project. Currently that means only Lars can do this. These steps can hopefully be automated in the future.

  1. Pull down the above changes from GitLab.
  2. Create a signed, annotated git tag vX.Y.Z for version X.Y.Z for the release commit
  1. Push tags to gitlab.com and git.liw.fi (substitute whatever names you use for the remotes):
  1. Wait for Lars’s Ick CI to build the release.
  2. Publish Obnam crate to crates.io:
  1. Announce new release: