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@297
|
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. :-)
|