Release procedure for morituri
------------------------------

pre-release checklist
---------------------
- Check downstream bug queues for patches:
  http://packages.qa.debian.org/m/morituri.html
  http://patch-tracker.debian.org/package/morituri
- Verify that all tests run.
- Verify that test run doesn't leave anything around in /tmp:
  ls /tmp/*morituri*
- Verify that help output shows no gstreamer:
  rip -h
- Verify that all buildbots are green:
  http://build.fluendo.com:8120/grid
- Verify the program runs:
  - normal run
  - --unknown run
  - rip offset find
- add new milestone to trac and make it the default
- verify with ticket query that all fixed tickets for this milestone are
  correct:
  https://thomas.apestaart.org/morituri/trac/query?order=priority&col=id&col=summary&col=status&col=type&col=priority&col=milestone&col=component&milestone=0.1.1
- remilestone still open tickets to next release

release
-------
- Pick a new version number and set it:
  export VERSION=0.1.0
- Update configure.ac
- Pick a release name
- Update .doap file
- verify the update with moap doap show
- Run coverage
  make coverage
- Add coverage data to NEWS
  Coverage: 64 %   (1575 / 2440)
- Add list of new features to NEWS
- Update bugs fixed in NEWS:
  moap doap bug query -f "- %(id)3s: %(summary)s" "milestone=$VERSION"
- Update README and home page with relevant new features, as well as version
- Update RELEASE, copying sections from NEWS, and adding contributors with
  moap cl cont
- Run moap cl prep and add comment about release
- Update ChangeLog; add === release x.y.z === line
- make distcheck
- make release
- build rpm using rpmbuild and mach
- gpg sign
  rpm --addsign /var/tmp/mach/fedora-*/morituri-$VERSION-*/*.rpm
- install it
- rip a test cd
- sync from website:
  tao-get
- copy files to website and upload
  cp morituri-$VERSION.tar* /home/thomas/www/thomas.apestaart.org/data/download/morituri
  cp /var/tmp/mach/fedora-*/morituri-$VERSION-*/*.rpm /home/thomas/www/thomas.apestaart.org/data/download/morituri
  tao-put
- commit to master
- create release tag:
  git tag -a v$VERSION
  git push origin v$VERSION
- announce to freshmeat:
  moap doap -v $VERSION freshmeat
- send out release mails:
  - first test:
    export AT=@
    moap doap -v $VERSION mail -f thomas${AT}apestaart.org thomas${AT}apestaart.org
  - wait for it and read it
  - then for real:
    moap doap -v $VERSION mail -f thomas${AT}apestaart.org cdrdao-devel${AT}lists.sourceforge.net teuf${AT}gnome.org morituri${AT}packages.debian.org
- announce on hydrogenaudio:
  http://www.hydrogenaudio.org/forums/index.php?showforum=22
- tweet it
- add this new version to trac
- update the homepage
- bump configure.ac and commit
- why don't you blog about it ?
