RELEASE-PROCEDURE 2.6 KB

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