Skip to content

Release Process

Joel Guerra edited this page Jun 11, 2026 · 1 revision

SnoutDB releases are driven by the repository's canonical VERSION file.

Prepare a Release Pull Request

  1. Update VERSION.
  2. Update CHANGELOG.md.
  3. Update version references when necessary.
  4. Review compatibility notes.
  5. Run:
./scripts/validate-release.sh

Merge

Merge the reviewed release pull request into main using squash merge. The release workflow reads VERSION and checks whether v<version> already exists.

For a new version, automation:

  1. validates the tagged commit;
  2. generates release notes from merged pull requests;
  3. creates source .tar.gz and .zip archives;
  4. calculates SHA-256 checksums;
  5. creates an annotated tag;
  6. publishes the GitHub Release.

Release Labels

Use these labels on pull requests so generated notes are organized correctly:

  • breaking-change
  • enhancement
  • bug
  • performance
  • documentation
  • skip-changelog

Verification

After publication:

  • confirm CI and release workflows succeeded;
  • verify the tag points to the intended commit;
  • inspect archive contents;
  • verify checksums;
  • confirm release notes and compatibility warnings;
  • never move or reuse the tag.

Normal pull requests must not change VERSION.

Clone this wiki locally