Releasing XCB Modules
(based on cairo's release process) (requires the maintainer to have a gpg key to sign the tag)
Note that many of these steps can be automated by the X.Org release.sh
script now.
Update README
Update NEWS
git shortlog <last version>..
- Skip any fixes to bugs that didn't exist in the last release
- Skip any typos or similar cosmetic changes
Bump the package version in the top-level configure.ac
Commit changed README, NEWS, and configure.ac
git commit -m "Release <name> <version>"
check that all your changes are committed
git status
must not show any uncommitted files and you must be on themaster
branchgit diff HEAD
must not show anything
autoreconf -vfi && ./configure && make distcheck
Tag the repository
git tag -s -m "Release <name> <version>" <version>
- verify with
git verify-tag <version>
Compose the release mail (but don't send yet!)
- template off of last release mail
- replace version, README, NEWS
- git tag and keysign
- MD5, SHA1, and SHA256 checksums + URL's of tarballs (
md5sum
,sha1sum
,sha256sum
) - note names of releasers
- template off of last release mail
Push the master branch and the tag with
git push origin master <version>
Copy the .gz and .bz2 tarballs to
xcb.freedesktop.org:/srv/xcb.freedesktop.org/dist/
so they show up at http://xcb.freedesktop.org/dist/For libxcb, upload the doxygen generated docs from your build to
xcb.freedesktop.org:/srv/xcb.freedesktop.org/manual
so they show up at http://xcb.freedesktop.org/manual/make && rsync -ar --progress --delete doc/manual/ xcb.freedesktop.org:/srv/xcb.freedesktop.org/manual
Send the release mail to xorg and xcb lists
- Subject:
[ANNOUNCE] <name> <version>
- To: xcb@lists.freedesktop.org, xorg-announce@lists.freedesktop.org, xorg@lists.freedesktop.org
- don't forget to GPG-sign the email
- Subject:
Update the xcb wiki (news section on the main page, if necessary)