Things to do when making a release. Instructions here are for git.
- If there's a NEWS file, summarize important changes in it
- If it's a C project:
- Replace UNRELEASED with the new version number in @since docstrings.
- Bump the version number in configure.ac.
- If the package has a nano version, set it to 0.
- If the package has a _release, set it to 1.
If it's TelepathyGlib and it adds ABI, whitelist new symbols. Newly introduced symbols can be found in reference docs as follows (which will also list typedefs and macros, which should not be included in the .abi file): git diff telepathy-glib-$PREVIOUS_VERSION..HEAD docs/reference/telepathy-glib-sections.txt | grep '^+[^+]' | cut -c2-
- If it's a Python project:
- Bump the version number in setup.py.
- Check it works
git commit -am "version $VERSION"
git tag -s "$PACKAGE-$VERSION" -m "$PACKAGE $VERSION"
- If it's a C project:
make check (partly for one last check, partly to keep gtk-doc happy)
make distcheck
- If it's a Python project:
python setup.py distcheck (if available) or python setup.py sdist (otherwise)
git push --tags
Generate a signature: gpg --detach-sign -a $TARBALL
If it's a project that uses tools/telepathy.am, run make maintainer-upload-release which will upload tarball, signature and the docs to fd.o. Otherwise, manually upload tarball and its signature to annarchy.freedesktop.org:/srv/telepathy.freedesktop.org/www/releases/$PACKAGE.
Generate the changelog and send the announce to telepathy@lists.freedesktop.org and ftp-release@lists.freedesktop.org:
- If there's a NEWS file, paste the latest entry into the announcement.
- If not, summarize important changes.
- If a C project:
- If the package has a nano version, set it to 1.
- If the package has a _release, set it to 0.
git commit -am "version $VERSION"
git push

