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