1 curl release procedure - how to do a release 2 ============================================ 3 4 in 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 27 in 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 44 inform 45 ------ 46 47 - send an email to curl-users, curl-announce and curl-library. Insert the 48 RELEASE-NOTES into the mail. 49 50 celebrate 51 --------- 52 53 - suitable beverage intake is encouraged for the festivities 54 55 curl release scheduling 56 ======================= 57 58 Basics 59 ------ 60 61 We do releases every 8 weeks on Wednesdays. If critical problems arise, we can 62 insert releases outside of the schedule or we can move the release date - but 63 this is very rare. 64 65 Each 8 week release cycle is split in two 4-week periods. 66 67 - During the first 4 weeks after a release, we allow new features and changes 68 to curl and libcurl. If we accept any such changes, we bump the minor number 69 used for the next release. 70 71 - During the second 4-week period we do not merge any features or changes, we 72 then only focus on fixing bugs and polishing things to make a solid coming 73 release. 74 75 Coming dates 76 ------------ 77 78 Based on the description above, here are some planned release dates (at the 79 time of this writing): 80 81 - June 17, 2015 (version 7.43.0) 82 - August 12, 2015 83 - October 7, 2015 84 - December 2, 2015 85 - January 27, 2016 86 - March 23, 2016 87 - May 18, 2016 88 - July 13, 2016 89 - September 7, 2016 90