1                                  _   _ ____  _
2                              ___| | | |  _ \| |
3                             / __| | | | |_) | |
4                            | (__| |_| |  _ <| |___
5                             \___|\___/|_| \_\_____|
6
7curl release procedure - how to do a release
8============================================
9
10[in the source code repo]
11
12- edit RELEASE-NOTES to be accurate
13
14- update docs/THANKS
15
16- make sure all relevant changes are committed on the master branch
17
18- tag the git repo in this style: 'git tag -a curl-7_34_0'. -a annotates the
19  tag and we use underscores instead of dots in the version number. 
20   
21- run "./maketgz 7.34.0" to build the release tarballs. It is important that
22  you run this on a machine with the correct set of autotools etc installed
23  as this is what then will be shipped and used by most users on *nix like
24  systems.
25
26- push the git commits and the new tag
27
28- gpg sign the 4 tarballs as maketgz suggests
29
30- upload the 8 resulting files to the primary download directory
31
32[data in the curl-www repo]
33
34- edit Makefile (version number and date),
35  _newslog.html (announce the new release) and
36  _changes.html (insert changes+bugfixes from RELEASE-NOTES)
37
38- commit all local changes
39
40- tag the repo with the same tag as used for the source repo
41
42- make sure all relevant changes are committed and pushed on the master branch
43
44  (the web site then updates its contents automatically)
45
46[inform]
47
48- send an email to curl-users, curl-announce and curl-library. Insert the
49  RELEASE-NOTES into the mail.
50
51[celebrate]
52
53- suitable beverage intake is encouraged for the festivities
54