annotate docs/howto-release @ 323:29de6a1c4538

Fixed an important bug with folded headers! g_strconcat() returns a *copy* of the string, but hdr->value still pointed to the old header (which probably was a memory leak, too). If the folded part had been quite small it was likely that the new string was at the same position as the old one, thus making everything go well. But if pretty long headers were folded several times it was likely that the new string was allocated somewhere else in memory, thus breaking things. In result mails to lots of recipients (folded header) were frequently only sent to the ones in the first line. Sorry for the inconvenience.
author meillo@marmaro.de
date Fri, 03 Jun 2011 09:47:27 +0200
parents b639e97feda3
children 2c3242a360f0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
297
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
1 How to do a masqmail release
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
2 ============================
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
3 meillo 2010-12-09
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
4
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
5
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
6 This document helps me to not forget any steps and to document how I
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
7 did it for any new maintainer who might come after me. This document
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
8 was inspired by docs/README.developers of the nmh project.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
9
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
10
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
11 (1) Be sure that the current state of the project is ready to
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
12 release. Test if it compiles. Test if it works (this should be done
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
13 automatically with a better test suite).
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
14
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
15 (2) Update ChangeLog and NEWS based on the VCS log. Don't forget to
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
16 update the time of the ChangeLog entry. Check if contributions from
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
17 others are acknowledged adequately (ChangeLog, THANKS).
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
18
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
19 (3) Remove the -dev suffix from the version number in configure.ac. Run
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
20 autoconf afterwards to transfer the change to the configure script. Build
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
21 masqmail and run it with -bV to check the version.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
22
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
23 (4) Run devel/list-versions and devel/update-manpage-date afterwards to
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
24 have the right version and date in the man pages.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
25
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
26 (5) Is everything checked in?
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
27
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
28 (6) Run `make distclean', check for remaining files (just in case). `hg
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
29 st' is helpful. Build anew: `./configure ... && make && sudo make
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
30 install'. Check if everything went well. If so, `make distclean again'.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
31
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
32
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
33 Now we should be ready to release.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
34
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
35
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
36 (7) Run `devel/gen-release ../masqmail-0.x.y.tar.gz'. An md5sum will
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
37 be generated automatically and a detached gpg signature will be created
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
38 (this requires gnupg with a secret key).
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
39
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
40 (8) Unpack the generated tarball and examine its contents (-t or
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
41 -xv). Build masqmail anew from the tarball, see (6).
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
42
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
43 (9) Check the md5sum and the signature.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
44
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
45
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
46 Let's release.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
47
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
48
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
49 (10) Upload the tarball, the md5sum and the signature to the website.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
50
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
51 (11) Write a release announcement to the mailing list. Preferably, the
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
52 announcement should contain the MD5 hash generated above, and should be
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
53 PGP-signed. It should include the URL for the tarball as well as the URL
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
54 of the website. It should contain a brief summary of visible changes, as
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
55 well as the URL of the webpage that would show a detailed list of changes.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
56
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
57 (12) Submit a release info to freshmeat.net.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
58
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
59 (13) Add a version tag to the VCS.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
60
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
61 (14) Change the version number in configure.ac: Increment it and add
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
62 -dev to it. Run autoconf afterwards to propagate the change.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
63
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
64
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
65 Done.
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
66
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
67
b639e97feda3 added a description of how I create a masqmail release
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
68 Enjoy the day. :-)