masqmail

annotate docs/howto-release @ 407:164468dd0953

Minor refactoring.
author markus schnalke <meillo@marmaro.de>
date Wed, 29 Feb 2012 10:37:21 +0100
parents b639e97feda3
children f2a7271746d1
rev   line source
meillo@297 1 How to do a masqmail release
meillo@297 2 ============================
meillo@297 3 meillo 2010-12-09
meillo@297 4
meillo@297 5
meillo@297 6 This document helps me to not forget any steps and to document how I
meillo@297 7 did it for any new maintainer who might come after me. This document
meillo@297 8 was inspired by docs/README.developers of the nmh project.
meillo@297 9
meillo@297 10
meillo@297 11 (1) Be sure that the current state of the project is ready to
meillo@297 12 release. Test if it compiles. Test if it works (this should be done
meillo@297 13 automatically with a better test suite).
meillo@297 14
meillo@297 15 (2) Update ChangeLog and NEWS based on the VCS log. Don't forget to
meillo@297 16 update the time of the ChangeLog entry. Check if contributions from
meillo@297 17 others are acknowledged adequately (ChangeLog, THANKS).
meillo@297 18
meillo@297 19 (3) Remove the -dev suffix from the version number in configure.ac. Run
meillo@297 20 autoconf afterwards to transfer the change to the configure script. Build
meillo@297 21 masqmail and run it with -bV to check the version.
meillo@297 22
meillo@297 23 (4) Run devel/list-versions and devel/update-manpage-date afterwards to
meillo@297 24 have the right version and date in the man pages.
meillo@297 25
meillo@297 26 (5) Is everything checked in?
meillo@297 27
meillo@297 28 (6) Run `make distclean', check for remaining files (just in case). `hg
meillo@297 29 st' is helpful. Build anew: `./configure ... && make && sudo make
meillo@334 30 install'. Check if everything went well. If so, `make distclean' again.
meillo@297 31
meillo@297 32
meillo@297 33 Now we should be ready to release.
meillo@297 34
meillo@297 35
meillo@297 36 (7) Run `devel/gen-release ../masqmail-0.x.y.tar.gz'. An md5sum will
meillo@297 37 be generated automatically and a detached gpg signature will be created
meillo@297 38 (this requires gnupg with a secret key).
meillo@297 39
meillo@297 40 (8) Unpack the generated tarball and examine its contents (-t or
meillo@297 41 -xv). Build masqmail anew from the tarball, see (6).
meillo@297 42
meillo@297 43 (9) Check the md5sum and the signature.
meillo@297 44
meillo@297 45
meillo@297 46 Let's release.
meillo@297 47
meillo@297 48
meillo@297 49 (10) Upload the tarball, the md5sum and the signature to the website.
meillo@297 50
meillo@297 51 (11) Write a release announcement to the mailing list. Preferably, the
meillo@297 52 announcement should contain the MD5 hash generated above, and should be
meillo@297 53 PGP-signed. It should include the URL for the tarball as well as the URL
meillo@297 54 of the website. It should contain a brief summary of visible changes, as
meillo@297 55 well as the URL of the webpage that would show a detailed list of changes.
meillo@297 56
meillo@297 57 (12) Submit a release info to freshmeat.net.
meillo@297 58
meillo@297 59 (13) Add a version tag to the VCS.
meillo@297 60
meillo@297 61 (14) Change the version number in configure.ac: Increment it and add
meillo@297 62 -dev to it. Run autoconf afterwards to propagate the change.
meillo@297 63
meillo@297 64
meillo@297 65 Done.
meillo@297 66
meillo@297 67
meillo@297 68 Enjoy the day. :-)