Releasing Geary

These are the steps that should be taken when cutting a new Geary release.

If you are new to releasing GNOME software, you'll need an account on both git.gnome.org and master.gnome.org. It's also worth reading through the Maintainer's Corner and in particular, Making a Release.

Note that Geary currently uses pre-release version incrementing.

Testing

  1. Ensure GitLab CI for the branch is green

  2. Make sure it builds and all unit tests pass: meson test -C $BUILD_DIR must succeed

  3. Run through the testing checklist, preferably also on oldest targeted LTS release.

  4. Browse through the list of bugs targeted for this release, test to ensure they are fixed.
  5. Check Geary still works fine with all supported providers, and against a generic IMAP server.

Making the release

  1. Check out the branch to be released locally
  2. Do both a git pull and git status to check for remote and local changes

  3. Update the version number in meson.build

  4. Update desktop/org.gnome.Geary.appdata.xml.in:

    1. Add a new <release> tag with the right details

    2. Update with a brief list of new features (for major releases), or bug fixes (minor releases)
    3. Check it validates: meson test -C $BUILD_DIR

  5. Update NEWS:

    1. Generate a new header from the built release notes: appstream-util appdata-to-news build/desktop/org.gnome.Geary.appdata.xml

    2. Prepend this to the NEWS file
    3. Get a list of contributors using contributors.sh, append this below the generated release notes

  6. Update THANKS with the details of people who contributed patches

  7. Run meson test -C $BUILD_DIR again to ensure everything is still file

  8. Do one last git pull, then commit the changes above and do a git push

  9. Check meson dist succeeds: Generate a xz-compressed tarball using meson dist -C $BUILD_DIR

  10. Tag the release: git tag --sign gnome-VER, where VER is the version number

  11. Push the tag to the repo: git push origin gnome-VER

  12. Upload to master.gnome.org and install it

Post-release

  1. Create a new gnome-x-yy branch if a new stable release

  2. Update Flathub build:
    1. Update the tarball names and SHA256 hashes in org.gnome.Geary.json of the Geary Flathub repo for both Geary and other built modules

    2. Keep an eye on on the Flathub builds starting and completing successfully

    3. Install the test build and check it runs
  3. Once Flathub has been updated, let people know:
    1. Mention it on the usual channels (Matrix, Fediverse, etc)

    2. Send an email with short, jocular overview of the release and the contents of NEWS to gnome-announce-list@gnome.org with your email as the reply-to address

Sit back, relax, and bask in the radiance of the latest Geary version making people's email lives a bit better.

Apps/Geary/ReleaseProcess (last edited 2020-08-27 00:03:49 by MichaelGratton)