Xfce Wiki

Sub domains

Site Tools

How to Perform Individual Releases

Bugfix Releases

Let's assume that Olivier wants to do a bugfix release of xfwm4 and that the previous release has been xfwm4 4.6.0.
If the 4.6.0 release was done correctly, there should be an xfce-4.6 branch in the xfwm4 repository.
These are the steps Olivier needs to go through for a proper release of xfwm4 4.6.1:


  1. Check out the stable branch with
    git checkout --track -b xfce-4.6 remotes/origin/xfce-4.6
  2. Synchronize the branch with the public repository (for translations and fixes committed by others):
    git pull --rebase
  3. Make sure the application compiles and that
    ./autogen.sh --enable-gtk-doc ... && make distcheck

    works; commit build fixes as needed

  4. Update the NEWS, AUTHORS, README, THANKS, HACKING etc. files
  5. If your ChangeLog is not generated automatically, update the ChangeLog from git with
    git log > ChangeLog

Bumping the Version and Generating the Release Tarball

  1. Update the major, minor and micro version to 4, 6 and 1 in the configure template (e.g. configure.in.in)
  2. If the component is or contains a library and there were new symbols added since the last release, update the libtool version in the configure template
  3. Remove the git from xfwm4_version_tag in the configure script template
  4. Rebuild the translation files (po/*.pot?) to update Project-Id-Version and prevent problems during make distcheck with
    ./autogen.sh --enable-gtk-doc ... && cd po/ && make update-po
  5. Make sure everything builds fine; fix problems locally without committing:
./autogen.sh --enable-gtk-doc ... && make distcheck

There should now be a release tarball in the root directory of the component called xfwm4-4.6.1.tar.bz2.

Committing and Tagging the Release

  1. Commit all local changes with a commit subject like this:
    Release 4.6.1!
  2. After the commit, create an annotated tag for the release with
    git tag -a xfwm4-4.6.1

    You can also sign the tag with a GPG key by adding an additional parameter to the git tag command. For more information about tagging read the git-tag manual.

  3. Push the release commit and the tag with
    git push && git push --tags

Uploading the Release Tarball and Sending Announcements

  1. Compute the SHA1 checksum of the xfwm4-4.6.1.tar.bz2 tarball generated by the last run of make distcheck with
    sha1sum xfwm4-4.6.1.tar.bz2
  2. Open https://releases.xfce.org/ in your browser, log in with your Xfce HTTPS credentials
  3. Click on Release New Version link next to your project (xfwm4 in this case)
  4. Follow the instructions presented to you by the release manager software to upload the xfwm4-4.6.1.tar.bz2 tarball with the SHA1 checksum you computed before
    • For the announcements, please only pick mailing lists that make sense. Everything should be announced on announce@xfce.org and xfce@xfce.org. Software affecting developers should be announced on xfce4-dev@xfce.org in addition, and so on.

After the Release

  1. Add the git back to xfwm4_version_tag() in the configure template; commit the change
  2. Don't forget to add the version to your project on http://bugzilla.xfce.org/
  3. You might want to update the following websites:
    • Freshmeat
    • Gnomefiles
    • others
  4. Switch back to the development branch using
    git checkout master
  5. Celebrate

Development Releases

releng/individual-releases.txt · Last modified: 2011/05/26 23:58 by jannis