masqmail

changeset 297:b639e97feda3

added a description of how I create a masqmail release
author markus schnalke <meillo@marmaro.de>
date Thu, 09 Dec 2010 11:41:49 -0300
parents e3e1a030c703
children 6281ff92cb86
files docs/howto-release
diffstat 1 files changed, 68 insertions(+), 0 deletions(-) [+]
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/docs/howto-release	Thu Dec 09 11:41:49 2010 -0300
     1.3 @@ -0,0 +1,68 @@
     1.4 +How to do a masqmail release
     1.5 +============================
     1.6 +meillo 2010-12-09
     1.7 +
     1.8 +
     1.9 +This document helps me to not forget any steps and to document how I
    1.10 +did it for any new maintainer who might come after me. This document
    1.11 +was inspired by docs/README.developers of the nmh project.
    1.12 +
    1.13 +
    1.14 +(1) Be sure that the current state of the project is ready to
    1.15 +release. Test if it compiles. Test if it works (this should be done
    1.16 +automatically with a better test suite).
    1.17 +
    1.18 +(2) Update ChangeLog and NEWS based on the VCS log. Don't forget to
    1.19 +update the time of the ChangeLog entry. Check if contributions from
    1.20 +others are acknowledged adequately (ChangeLog, THANKS).
    1.21 +
    1.22 +(3) Remove the -dev suffix from the version number in configure.ac. Run
    1.23 +autoconf afterwards to transfer the change to the configure script. Build
    1.24 +masqmail and run it with -bV to check the version.
    1.25 +
    1.26 +(4) Run devel/list-versions and devel/update-manpage-date afterwards to
    1.27 +have the right version and date in the man pages.
    1.28 +
    1.29 +(5) Is everything checked in?
    1.30 +
    1.31 +(6) Run `make distclean', check for remaining files (just in case). `hg
    1.32 +st' is helpful. Build anew: `./configure ... && make && sudo make
    1.33 +install'. Check if everything went well. If so, `make distclean again'.
    1.34 +
    1.35 +
    1.36 +Now we should be ready to release.
    1.37 +
    1.38 +
    1.39 +(7) Run `devel/gen-release ../masqmail-0.x.y.tar.gz'. An md5sum will
    1.40 +be generated automatically and a detached gpg signature will be created
    1.41 +(this requires gnupg with a secret key).
    1.42 +
    1.43 +(8) Unpack the generated tarball and examine its contents (-t or
    1.44 +-xv). Build masqmail anew from the tarball, see (6).
    1.45 +
    1.46 +(9) Check the md5sum and the signature.
    1.47 +
    1.48 +
    1.49 +Let's release.
    1.50 +
    1.51 +
    1.52 +(10) Upload the tarball, the md5sum and the signature to the website.
    1.53 +
    1.54 +(11) Write a release announcement to the mailing list. Preferably, the
    1.55 +announcement should contain the MD5 hash generated above, and should be
    1.56 +PGP-signed. It should include the URL for the tarball as well as the URL
    1.57 +of the website. It should contain a brief summary of visible changes, as
    1.58 +well as the URL of the webpage that would show a detailed list of changes.
    1.59 +
    1.60 +(12) Submit a release info to freshmeat.net.
    1.61 +
    1.62 +(13) Add a version tag to the VCS.
    1.63 +
    1.64 +(14) Change the version number in configure.ac: Increment it and add
    1.65 +-dev to it. Run autoconf afterwards to propagate the change.
    1.66 +
    1.67 +
    1.68 +Done.
    1.69 +
    1.70 +
    1.71 +Enjoy the day.  :-)