- Ensure that CI passes against the commit you want to release.
- Bump the version string in
cmd/syncv3.main.go
to the new version. Commit. - Tag that commit. The tag name should start with
v
. Push it to GitHub. - After the tag is pushed, Github will see the tag and trigger a GHA workflow. It should
- build docker images,
- publish them to the project's container repository,
- and also run some third-party vulnerability scanner, for some reason.
- GitHub should also trigger a second GHA workflow, which:
- builds binaries,
- creates a draft release for this tag, and
- uploads the binaries as artifacts to this release.
- Go to https://github.com/matrix-org/sliding-sync/releases/ to find your release.
- Edit it in place (do not create a new release).
- Check that the binaries are attached successfully.
- Write release notes.
- Wait for the docker build to finish. This takes ~10 minutes; check the GHA workflow and the (check packages repo).
- Publish when you're happy with the release notes.
That's it. Relax, take a deep breath, pat yourself on the back, then move on with your life.