How to do a release of the Akonadi server? I ask that myself and then Tom every time I have to do it. So, finally document that here.
Run the makechangelog script in the source directory (which either is trunk or branches/akonadi/<version> depending on if you are doing a major (pre-)release or a minor one):
That will add all revisions since the last time to the ChangeLog file.
Next step is to update the NEWS file, run svn diff ChangeLog and summarize the changes for that.
Finally, update the version number in the top-level CMakeLists.txt and commit all your changes.
Tagging a major (pre-)release, i.e. a release from trunk is done with the following (server side and thus fast) svn command:
svn cp $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/trunk/kdesupport/akonadi $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/tags/akonadi/x.y.z
Obviously, replace protocol, username and version with appropriate values.
For a stable release, that is a release from a stable branch, the command looks like this:
svn cp $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/branches/akonadi/x.y $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/tags/akonadi/x.y.z
A new stable branch is created by the following command:
svn cp $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/kdesupport/akonadi $SVNPROTOCOL://$SVNUSER@svn.kde.org/home/kde/branches/akonadi/x.y
You need the tarball creation script from kdesdk for that.
Edit config.ini to use the right version, in the [akonadi] section. Then, run the create_tarball script:
./create_tarball.rb -u $SVNUSER -a akonadi
Add a -w there if you are using https instead of ssh to access subversion.
Wait a bit and check the tarball created in the current directory. Should be akonadi-x.y.z.tar.bz2.
Upload the tarball somewhere and notify Tom to move it to http://download.akonadi-project.org/.
Finally, apologize to Dirk for being late again with the release ;-)