release_mgr_checklist.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Language" content="en-us">
  4. <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
  5. <meta name="ProgId" content="FrontPage.Editor.Document">
  6. <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  7. <title>Release Manager's Checklist</title>
  8. </head>
  9. <body bgcolor="#FFFFFF">
  10. <table border="1" bgcolor="#007F7F" cellpadding="2">
  11. <tr>
  12. <td bgcolor="#FFFFFF">
  13. <img src="../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td>
  14. <td><a href="../index.htm"><font face="Arial,Helvetica" color="#FFFFFF"><big>Home</big></font></a></td>
  15. <td><a href="../libs/libraries.htm"><font face="Arial,Helvetica" color="#FFFFFF"><big>Libraries</big></font></a></td>
  16. <td><a href="../people/people.htm"><font face="Arial,Helvetica" color="#FFFFFF"><big>People</big></font></a></td>
  17. <td><a href="../more/faq.htm"><font face="Arial,Helvetica" color="#FFFFFF"><big>FAQ</big></font></a></td>
  18. <td><a href="../more/index.htm"><font face="Arial,Helvetica" color="#FFFFFF"><big>More</big></font></a></td>
  19. </tr>
  20. </table>
  21. <h1>Release Manager's Checklist</h1>
  22. <p><a href="#Introduction">Introduction</a><br>
  23. <a href="#Pre-release">Pre-release activities</a><br>
  24. <a href="#Branch-for-release">CVS Branch for release</a><br>
  25. <a href="#CVS-release">CVS Release</a><br>
  26. <a href="#Distribution">Distribution</a></p>
  27. <h2><a name="Introduction">Introduction</a></h2>
  28. <p>Historically, items on this checklist were accomplished by scripts written
  29. in Perl, Python, Bash, C++, and as Windows command files, or by point-and-click
  30. on a FrontPage or other GUI based program. Long term the plan is to move as much
  31. as possible of these to C++, as
  32. the one language all Boost developers are comfortable with. </p>
  33. <h2><a name="Pre-release">Pre-release</a> activities</h2>
  34. <ul>
  35. <li>After discussion on the main list, post the release schedule.<br>
  36. &nbsp;</li>
  37. <li>Verify the <i><b>root/index.htm</b></i>, <i><b>root/boost/version.hpp</b></i>, and
  38. <i><b>root/Jamrules</b></i>
  39. release numbers are correct and agree. <br>
  40. &nbsp;</li>
  41. <li>Verify via <a href="mailto:jamboost@yahoogroups.com">jamboost@yahoogroups.com</a>
  42. that bjam pre-built executables up-to-date.<br>
  43. &nbsp;</li>
  44. <li>Remove the oldest &quot;Latest News&quot; from root/index.htm.<br>
  45. &nbsp;</li>
  46. <li>For each new library added this release:</li>
  47. </ul>
  48. <blockquote>
  49. <ul>
  50. <li>Verify root/index.htm Latest News entry has been made and reads well.<br>
  51. &nbsp;</li>
  52. <li>Verify root/libs/libraries.htm entry has been made, both in the
  53. alphabetic list and in the category lists.<br>
  54. &nbsp;</li>
  55. <li>Verify the root/libs/xxx directory contains an index.htm or index.html
  56. file; either the main docs or a redirection to the main docs. <b><i>To do:
  57. automate this.</i></b><br>
  58. &nbsp;</li>
  59. <li>Skim read the primary docs pages to make sure they meet Boost
  60. requirements and guidelines. <b><i>Don't leave this until too late; it has
  61. turned up lots of issues in the past.<br>
  62. &nbsp;</i></b></li>
  63. <li>Generate the header dependency table and update the CVS.<b><i> To do:
  64. coordinate with John Maddock's new dependency tools.</i></b></li>
  65. </ul>
  66. </blockquote>
  67. <ul>
  68. <li>Monitor
  69. <a href="http://boost.sourceforge.net/regression-logs/inspection_report.html">
  70. http://boost.sourceforge.net/regression-logs/inspection_report.html</a> to
  71. verify problems are actively being reduced. Make sure none of the problems are
  72. in files the release manager is responsible for.<br>
  73. &nbsp;</li>
  74. <li>Monitor regression tests (<a href="http://boost.sourceforge.net/regression-logs/inspection_report.html">http://boost.sourceforge.net/regression-logs</a>)
  75. to verify that errors are actively being reduced or accounted for on key
  76. platforms and compilers.<br>
  77. &nbsp;<ul>
  78. <li>Boost errors are being actively worked on by library maintainers.</li>
  79. <li>Compiler or standard library errors are at least identified, and
  80. preferably reported to the supplier.</li>
  81. <li>No errors remain uninvestigated or unclassified.<br>
  82. &nbsp;</li>
  83. </ul>
  84. </li>
  85. <li>Monitor the developer and user mailing lists to verify that all posted
  86. patches are being applied, rejected, or otherwise dealt with.<br>
  87. &nbsp;</li>
  88. <li>Monitor the developer and user mailing lists, and the SourceForge bug
  89. tracker, to verify that all posted bug reports are being investigated, fixed,
  90. rejected, or otherwise dealt with.<br>
  91. &nbsp;</li>
  92. <li>Monitor CVS commits to verify that all the expected and/or promised
  93. content actually gets committed. Try to get developers to avoid last minute
  94. commits of major changes.</li>
  95. </ul>
  96. <h2><a name="Branch-for-release">CVS Branch for release</a></h2>
  97. <ul>
  98. <li>Pre-release activities complete enough to justify branch-for-release?<br>
  99. &nbsp;</li>
  100. <li>Everybody happy?<br>
  101. &nbsp;</li>
  102. <li>Branch for release:<ul>
  103. <li>Tag the main trunk&nbsp; <code>merged_to_RC_n_n_n</code>.</li>
  104. <li>Branch the main trunk with the tag <code>RC_n_n_n</code>.<br>
  105. &nbsp;</li>
  106. </ul>
  107. </li>
  108. <li>Post notice on main list.&nbsp;Remind developers that fixes which apply
  109. to both Main Trunk and Branch have to be committed separately to both.</li>
  110. </ul>
  111. <h2><a name="CVS-release">CVS Release</a></h2>
  112. <ul>
  113. <li>Pre-release activities all complete?<br>
  114. &nbsp;</li>
  115. <li>Post notice to make sure all developers ready.<br>
  116. &nbsp;</li>
  117. <li>Tag: WinCVS: Select site, then tag (Modify|Create tag..., toolbar T on doc). New
  118. tag name: Version_1_21_2 (or whatever). If prior release failed, select
  119. &quot;overwrite existing tags with the same name&quot;.</li>
  120. </ul>
  121. <h2><a name="Distribution">Distribution</a></h2>
  122. <p>These procedures are given for a particular release manager's machine. The
  123. plan is to replace them with more generic procedures over time.</p>
  124. <ul>
  125. <li>Create folders for export:<br>
  126. <br>
  127. &nbsp;&nbsp;&nbsp; c:\boost\boost_1_28_0<br>
  128. &nbsp;&nbsp;&nbsp; c:\boost\temp\boost_1_28_0<br>
  129. <br>
  130. Note that several batch files assume these locations and naming schemes.<br>
  131. &nbsp;</li>
  132. <li>Export Win32 distribution: WinCVS | Remote | Checkout Module<br>
  133. <br>
  134. Checkout settings: module name and path on the server: boost, local folder to
  135. checkout to: c:\boost\boost_1_28_0<br>
  136. <b><i>[for 1.29.0 export, put everything in a boost_1_29_0/boost subdirectory.&nbsp;
  137. Experiments with 1.30.0 tried boost/boost as the path on server, but that just
  138. resulted in getting the boost header subdirectory only.]</i></b><br>
  139. <br>
  140. Checkout options: (check) By revision/tab/branch: Version_1_28_0, (check) Do
  141. not create CVS directories (export)<br>
  142. <br>
  143. This results in the follow command: cvs -z9 export -r Version_1_28_0 boost (in
  144. directory C:\boost\boost_1_28_0)<br>
  145. <br>
  146. (takes about ten minutes)<br>
  147. <br>
  148. (rename boost-root if needed !!!!!!!!!!!!!!!!!!!)<br>
  149. &nbsp;</li>
  150. <li>Export Unix distribution: similar to above, except target is c:\boost\temp\boost_1_28_0
  151. and set global for UNIX nl.<br>
  152. &nbsp;</li>
  153. <li>!!!!!! VERY IMPORTANT: WinCVS | Set Preferences | Global back to non-UNIX nl.
  154. !!!!!!!!!!!!!!!<br>
  155. &nbsp;</li>
  156. <li>General ZIP and TAR.GZ files<br>
  157. <br>
  158. n_n_n is 1_28_0 or whatever<br>
  159. <br>
  160. cd \boost<br>
  161. boost_zip 1_21_2 (creates zip.log) <br>
  162. boost_tar_gz 1_21_2<br>
  163. bash<br>
  164. &nbsp;&nbsp;&nbsp;
  165. gunzip -c boost_1_21_2.tar.gz | bzip2 &gt; boost_1_21_2.tar.bz2<br>
  166. &nbsp;&nbsp;&nbsp; exit<br>
  167. &nbsp;</li>
  168. <li>Upload and unpack the .zip release candidate to a SourceForge web services
  169. sub-directory. Post a message to the main list asking developers to check
  170. contents. (Daniel Frey has volunteered to help check).<br>
  171. &nbsp;</li>
  172. <li>Upload files for SourceForge release incoming directory<b><i>
  173. </i></b>using WS_FTP Pro<ul>
  174. <li>Start keep_isdn_awake</li>
  175. <li>Connection: SourceForge Release Upload | connect</li>
  176. <li>Select Local system: c:\boost</li>
  177. <li>Select Remote system: /incoming</li>
  178. <li>Drag-and-drop the three release files from Local system to Remote system</li>
  179. <li>Disconnect</li>
  180. <li>Stop keep_isdn_awake<br>
  181. &nbsp;</li>
  182. </ul>
  183. </li>
  184. <li>Complete the SourceForge
  185. <a href="http://sourceforge.net/docman/display_doc.php?docid=6445&group_id=1#createrelease">
  186. release procedure</a>.<ul>
  187. <li>Admin | File Releases | Add Release for package name boost</li>
  188. <li>New release name: 1.21.2 | create this release</li>
  189. <li>Step 1: paste in release notes (in HTML). <b>Be sure to note difference
  190. between .zip and .gz/bz2 files.</b> Submit/Refresh</li>
  191. <li>Step 2: Check appropriate files. Add Files and/or Refresh View</li>
  192. <li>Step 3: For each file, select Processor and File Type, Update/Refresh</li>
  193. <li>Setp 4: Email Release Notice: I'm sure. Send Notice.</li>
  194. <li>Wait up to 30 minutes.</li>
  195. <li>Check SourceForge release page and release notes with web browser.<br>
  196. &nbsp;</li>
  197. </ul>
  198. </li>
  199. <li><i><b>Consider putting up a temporary &quot;Update in progress&quot; root/index.html
  200. during site update<br>
  201. &nbsp;</b></i></li>
  202. <li>Update the web site:<pre>cd ...\boost_1_28_0
  203. tar -cf site.tar *
  204. bzip2 -k site.tar
  205. dir site.tar.bz2
  206. pscp site.tar.bz2 beman_dawes@shell1.sourceforge.net:/home/groups/b/bo/boost/htdocs/
  207. keep_idsn_awake in another window.
  208. c:\bgd\util\putty\plink.exe beman_dawes@shell.sourceforge.net
  209. cd /home/groups/b/bo/boost/htdocs
  210. pwd
  211. ls -l site.tar.bz2
  212. rm -fr boost
  213. rm -fr doc
  214. rm -fr libs
  215. rm -fr more
  216. rm -fr people
  217. rm -fr status
  218. rm -fr tools
  219. bunzip2 -kc site.tar.bz2 | tar -x
  220. ls
  221. exit
  222. stop keep_isdn_awake</pre>
  223. </li>
  224. <li>Check actual <a href="http://www.boost.org">www.boost.org</a> site with
  225. browser. Look at a bunch of files that should have been updated to make sure
  226. the updates actually &quot;took&quot;.<br>
  227. &nbsp;</li>
  228. <li>Post a message announcing the release and recapping &quot;Latest News&quot;.&nbsp;
  229. Post as separate messages to: boost, boost-announce, boost-users,
  230. comp.lang.c++.moderated,
  231. <a href="mailto:c++std-news@research.att.com">c++std-news@research.att.com</a><br>
  232. &nbsp;</li>
  233. <li>Using the SourceForge shell services (sf_shell_svc.bat), cd /home/groups/b/bo/boost/htdocs,
  234. and rename regression tests as necessary.<br>
  235. &nbsp;</li>
  236. <li>Burn &quot;Key Directories&quot; CD for off-site backup.<br>
  237. &nbsp;</li>
  238. <li>Make sure CVS working copy is updated to main branch!<br>
  239. &nbsp;</li>
  240. <li>Ready <i><b>root/index.htm</b></i>, <i><b>root/boost/version.hpp</b></i>, and
  241. <i><b>root/Jamrules</b></i> for the
  242. next release and commit to CVS so developers have a place to add &quot;Latest news&quot;
  243. blurbs.<br>
  244. &nbsp;</li>
  245. <li>Delete obsolete files from yahoogroups files section.</li>
  246. </ul>
  247. <hr>
  248. <p>Revised:
  249. <!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->04 February, 2004<!--webbot bot="Timestamp" endspan i-checksum="40405" --></p>
  250. <p>© Copyright Beman Dawes 2001</p>
  251. <p>Use, modification, and distribution are subject to the Boost Software License,
  252. Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or copy at
  253. <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</p>
  254. </body>
  255. </html>
粤ICP备19079148号