Revert "Update to 7.44.0"
[platform/upstream/curl.git] / docs / RELEASE-PROCEDURE
1                                   _   _ ____  _
2                               ___| | | |  _ \| |
3                              / __| | | | |_) | |
4                             | (__| |_| |  _ <| |___
5                              \___|\___/|_| \_\_____|
6
7 curl release procedure - how to do a release
8 ============================================
9
10 in the source code repo
11 -----------------------
12
13 - edit `RELEASE-NOTES` to be accurate
14
15 - update `docs/THANKS`
16
17 - make sure all relevant changes are committed on the master branch
18
19 - tag the git repo in this style: `git tag -a curl-7_34_0`. -a annotates the
20   tag and we use underscores instead of dots in the version number. 
21    
22 - run "./maketgz 7.34.0" to build the release tarballs. It is important that
23   you run this on a machine with the correct set of autotools etc installed
24   as this is what then will be shipped and used by most users on *nix like
25   systems.
26
27 - push the git commits and the new tag
28
29 - gpg sign the 4 tarballs as maketgz suggests
30
31 - upload the 8 resulting files to the primary download directory
32
33 in the curl-www repo
34 --------------------
35
36 - edit `Makefile` (version number and date),
37
38 - edit `_newslog.html` (announce the new release) and
39
40 - edit `_changes.html` (insert changes+bugfixes from RELEASE-NOTES)
41
42 - commit all local changes
43
44 - tag the repo with the same tag as used for the source repo
45
46 - make sure all relevant changes are committed and pushed on the master branch
47
48   (the web site then updates its contents automatically)
49
50 inform
51 ------
52
53 - send an email to curl-users, curl-announce and curl-library. Insert the
54   RELEASE-NOTES into the mail.
55
56 celebrate
57 ---------
58
59 - suitable beverage intake is encouraged for the festivities
60
61 curl release scheduling
62 =======================
63
64 Basics
65 ------
66
67 We do releases every 8 weeks on Wednesdays. If critical problems arise, we can
68 insert releases outside of the schedule or we can move the release date - but
69 this is very rare.
70
71 Each 8 week release cycle is split in two 4-week periods.
72
73 - During the first 4 weeks after a release, we allow new features and changes
74   to curl and libcurl. If we accept any such changes, we bump the minor number
75   used for the next release.
76
77 - During the second 4-week period we do not merge any features or changes, we
78   then only focus on fixing bugs and polishing things to make a solid coming
79   release.
80
81 Coming dates
82 ------------
83
84 Based on the description above, here are some planned release dates (at the
85 time of this writing):
86
87 - November 5, 2014 (version 7.39.0)
88 - December 31, 2014
89 - February 25, 2015
90 - April 22, 2015
91 - June 17, 2015
92 - August 12, 2015
93 - October 7, 2015
94 - December 2, 2015