9 To make a public release of mmh (we'll use version 1.0 as example
12 1. % echo 1.0 > VERSION
13 % date +"%Y-%m-%d" > DATE
16 2. % git commit VERSION DATE NEWS
20 4. Untar mmh-1.0.tar.gz and `diff -r' it vs. your workspace. Make
21 sure no files got left out of the distribution that should be in
22 it (due to someone forgetting to update the DIST variables in the
25 5. If you have root access on your machine, it's good at this point
28 % chown -R 0:0 mmh-1.0
29 % tar cvf - mmh-1.0 | gzip -c > mmh-1.0.tar.gz
31 If you leave the files in the archive as being owned by yourself,
32 your UID may coincide with one of a user on a machine where mmh is
33 being installed, making it possible for that user to Trojan the mmh
34 code before the system administrator finishes installing it.
36 6. Make sure your new tarball uncompresses and untars with no problem.
37 Make sure you can configure, make, and install mmh from it.
39 7. If all is well and your tarball is final, go back to your workspace
42 % git tag -a mmh-1.0 -m 'Releasing mmh-1.0'
44 8. Then bump the version number:
46 % echo 1.0+dev > VERSION
48 9. % git commit VERSION
50 10. Generate an MD5 hash and a PGP signature of the tarball:
52 % md5sum mmh-1.0.tar.gz > mmh-1.0.tar.gz.md5sum
53 % gpg -ab mmh-1.0.tar.gz
55 You can verify the hash and signature with:
57 % md5sum -c mmh-1.0.tar.gz.md5sum
58 % gpg --verify mmh-1.0.tar.gz.asc
60 11. Upload the files to the web space:
62 % scp -p mmh-1.0.tar.gz* marmaro.de:.../prog/mmh/
64 12. Update the <http://marmaro.de/prog/mmh/> homepage.
66 13. Add a news item to relevant websites.
68 14. Send the release announcement email to the following places:
70 <nmh-workers@nongnu.org>
71 <nmh-announce@nongnu.org>
72 <mh-users@ics.uci.edu> *or* <comp.mail.mh> (bidirectional gateway)
74 If the release fixes significant security holes, also send an
75 announcement to <bugtraq@securityfocus.com>.
77 Preferably, the announcement should contain:
78 - the URL for the tarball
80 - the URL of the website
81 - a brief summary of visible changes
82 - the URL of the git diff page that shows a detailed list of
83 changes. The changes between 0.9 and 1.0 would be shown by:
84 <http://git.marmaro.de/?p=mmh;a=commitdiff;hp=mmh-0.9;h=mmh-1.0>
86 Further more, the message should be PGP-signed.