MAKING RELEASES
===============

Checklist for making a release:

 - Update the NEWS file

 - Update the AUTHORS file if we have any new authors since last release.  The
   git command `git shortlog -se` helps.

 - Check that everything works
   - Run 'make check' and 'make ci'
   - Check that you have no uncommitted or unpushed changes
   - Check there are no glaring TODO or FIXME
   - Sanity-check all new API
   - Ensure newly added API is marked properly with "Since: X.Y"
   - Ensure that deprecated API is marked as such

 - Tag the release: git tag udisks-X.Y.Z

 - Post-release actions:
   - Bump the version in configure.in and packaging/udisks2.spec
   - Prepare NEWS file - append " (unreleased)" to version number
     - Commit message: Post-release version bump to X.Y.Z

 - Upload new documentation to storaged.org website
   - https://github.com/storaged-project/storaged-project.github.io
   - Create new folder X.Y.Z in "doc/udisks2-api/" and update the "latest" symlink
   - Add link to the new version to "doc/udisks2-api/index.html"

When doing the first micro release in a new minor series (for example
starting the 2.0.0, 2.1.0, 2.2.0 etc. series), do the following

 - Update the date in man pages to "$MONTH $YEAR" e.g. "October 2012"

 - At some point after the release, create the udisks-X-Y branch
   - Perform the post-release actions above on the created branch
   - This is for maintenance releases
   - Do this when focus is on new feature development
   - Then bump version on master to X.Y.90 (prereleases for X.Y+1.0)
   - Add "Index of new symbols in X.Y+1" index to doc/udisks2-docs.xml

For maintenance releases, the rules are simple

 - Work on the udisks-X-Y branch
 - If possible, cherry-pick fixes from master ('git cherry-pick')
 - Do not add (or backport) any new API or features
 - Do not add, remove or change any translatable strings
 - Do not add new dependencies


TRANSLATIONS
============

- Don't use VPATH build (To be fixed)

- Some weeks before the planned release announce the upcoming release
  on the GNOME Discourse in the Applications category with the i18n tag
  https://discourse.gnome.org/

- Check that Github -> Damned Lies synchronization works and that new strings
  show up on the l10n module page: https://l10n.gnome.org/module/udisks/

- Check that recent commits to the po/ directory done by the GNOME
  Infrastructure Automation Bot (@gnomesysadmins) reflect the translation
  status on the l10n page
