Release Checklist
Changelogs to write:
- Full for ./doc/CHANGES
- Mid rich text for website/maint/news.txt (important things)
- Small for ./doc/user-guide/misc.xml (strictly only user visible changes)
- Tiny for twitter (focus on twitter things)
Prepare code/changelogs
./bitlbee.h, #define BITLBEE_VERSION "3.x.y", #define BITLBEE_VERSION_CODE BITLBEE_VER(3, x, y)
- ./doc/CHANGES
./doc/user-guide/misc.xml, <sect1 id="whatsnew030x0y">...</sect1>
Prepare website
./maint/genchangelog.sh < ../../bitlbee/doc/CHANGES > html/changelog.html
- ./maint/news.txt
make (for news.txt)
make bitlbee.data
Timestamps to update when the release actually happens
code: ./doc/CHANGES (Finished ... 200XX)
website: genchangelog.sh
website: make bitlbee.data
website: ./maint/news.txt (Tue, 02 Jan 2015 13:37:00 +0000, i got the year wrong)
Actually releasing it
git checkout master
git merge release-XXX (maybe)
git tag 3.x.y
make doc
make tar
- Verify tarball (see below)
- scp bitlbee-3.x.y.tar.gz bitlbee.org:
bzr push
From server: bzr up
- Check staging site
- From server: move tarball from scp location to get.bitlbee.org
From server: make sync
Verify tarball contents:
Get previous release or wget get.bitlbee.org/src/bitlbee-3.x.x.tar.gz
- Extract both
diff -Naur bitlbee-3.x.y bitlbee-3.x.z | diffstat
Other stuff:
- announce on twitter
- update channel topic
- build debian packages
- announce abi/api breakages if any
- update im.bitlbee.org and testing.bitlbee.org
- tell rsc or mcepl
- flag arch linux as outdated if it hasn't happened magically
- update bitlbee-libpurple aur package