Changes between Version 37 and Version 38 of Release/Procedure/New

Show
Ignore:
Timestamp:
11/13/06 05:56:10 (7 years ago)
Author:
euzuro
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Release/Procedure/New

    v37 v38  
    1 = !OpenLayers Release Procedure = 
    2  
    3 ''Let us say that for the release in question, '''x''' is the API Version and '''y''' the incremental release number.'' 
    4  
    5  1. Push all remaining open tickets out of the current release's milestone. A Release procedure must be started with all the milestone's tickets closed.  
    6  1. A [wiki:SteeringCommittee#DetailedProcess vote] must be passed by the SteeringCommittee to start a new release procedure. 
    7  1. Create a new branch 
    8 {{{ 
    9   svn copy /trunk/openlayers /branches/openlayers/x.y 
    10 }}} 
    11  1. Make a Trac query to see a list of all the tickets that were closed for this release's milestone. 
    12 {{{ 
    13 http://trac.openlayers.org/query?milestone=x.y+Release&resolution=fixed&order=component 
    14 }}} 
    15  1. Based on the list from the previous step, create a new ReleaseNotes wiki for the new release. The wiki should be named ''Release/x.y/Notes''. [[br]]''For a good example, see [wiki:Release/2.2/Notes]''[[br]][[br]] 
    16  1. '''Release Candidate (RC) Cycle''' [[br]]''Let us say that for the RC in question, '''Z''' is the incremental release candidate number (starting with 1)''[[br]][[br]] 
    17    1. Compile a Release Announcement. The announcement should be located at ''Release/x.y/Announce/RCZ'' and should include one of the following: 
    18      * If this is the first RC (Z is 1): A link to the ''Release/x.y/Notes'' wiki, and a brief summary of its contents. 
    19      * If this is ''not'' the first RC, then: A brief summary of all of the tickets that were fixed in the last RC.[[br]] ''This should be a summary of the following trac query (where we let W be the previous RC number, i.e. Z-1):'' 
    20 {{{  
    21 http://trac.openlayers.org/query?status=closed&version=x.y+RCW&milestone=x.y+Release&resolution=fixed&order=priority 
    22 }}} 
    23    1. Give the Release Announcement and the Release Candidate to the official MetaCartaOpenLayersRepresentative for inspection. [[br]]''(Until !MetaCarta transfers !OpenLayers copyright to a community host.)'' 
    24      * If approval is not granted, the conflicting code must be removed. Do not release the RC. Restart entire release process from beginning.[[br]][[br]] 
    25    1. Replace all instances in the lib directory of "!http://svn.openlayers.org/trunk/openlayers/repository-license.txt"  with "!http://svn.openlayers.org/trunk/openlayers/release-license.txt" [[br]][[br]] 
    26    1. Tag the release: 
    27 {{{ 
    28   svn cp http://svn.openlayers.org/branches/openlayers/x.y http://svn.openlayers.org/tags/openlayers/release-x.y-rcZ 
    29 }}} 
    30    1. Export and Build the single file version:  
    31 {{{ 
    32   svn export http://svn.openlayers.org/tags/openlayers/release-x.y-rcZ OpenLayers-x.y-rcZ 
    33   cd OpenLayers-x.y-rcZ/build 
    34   ./build.sh 
    35 }}} 
    36    1. Create a new API release directory on openlayers.org and install the build 
    37 {{{ 
    38   mkdir /www/openlayers/htdocs/api/x.y-rcZ 
    39   cd .. 
    40   cp build/OpenLayers.js /www/openlayers/htdocs/api/x.y-rcZ 
    41   cp -a img/ /www/openlayers/htdocs/api/x.y-rcZ 
    42   cp -a theme/ /www/openlayers/htdocs/api/x.y-rcZ 
    43 }}} 
    44    1. Build the tarball and copy it up to openlayers.org 
    45 {{{ 
    46   # First remove all .pyc files from the directory. 
    47   rm tools/*.pyc 
    48   cd .. 
    49   tar cvfz OpenLayers-x.y-rcZ.tar.gz OpenLayers-x.y-rcZ/ 
    50   cp OpenLayers-x.y-rcZ.tar.gz /www/openlayers/htdocs/download 
    51 }}} 
    52    1. Email the Release Announcement to the dev list[[br]][[br]] 
    53    1. '''Testing Cycle''' -- in which users and developers: 
    54       * Report new tickets  
    55         1. Milestone: ''x.y Release''  
    56         1. Version: ''x.y RCZ'' 
    57       * Fix outstanding tickets: 
    58         1. Commit only to trunk 
    59         1. Mark keyword ''pullup'' as they still need to be pulled up to the branch 
    60         1. Do not mark as ''closed'' (i.e. leave them open) 
    61       * Run all tests in both Firefox 1.5 and IE 6. 
    62         * If any tests fail, return to '''Testing Cycle''' and report a new ticket. 
    63         * If all tests pass, a committer may send a proposal email to the dev list calling for: 
    64           * A new RC: 
    65             1. The support of at least one other committer must be obtained. 
    66             1. The committer chooses which patches to include in the the new RC or Final Release. [[br]] ''These should be taken from the the results of the following trac query:'' 
    67 {{{ 
    68 http://trac.openlayers.org/query?milestone=x.y+Release&keywords=%7Epullup&order=priority 
    69 }}} 
    70               1. Bring up each ticket's patch from trunk into the branch 
    71               1. Remove ''pullup'' keyword from ticket 
    72               1. Add brief summary of the change to the ''Release/x.y/Notes'' wiki 
    73               1. Mark ticket ''closed'' 
    74             1. Committer exits '''Testing Cycle''', starts new '''Release Candidate Cycle''' 
    75           * The Final Release: 
    76             1. All tickets for the milestone must be closed in the previous RC and no new tickets opened in the current one. 
    77             1. A successful [wiki:SteeringCommittee#DetailedProcess voting] round must pass the SteeringCommittee. 
    78             1. SteeringCommittee member exits the '''Testing Cycle''' and '''Release Candidate Cycle''' and proceeds to the next step, '''Install the new API code on openlayers.org'''[[br]][[br]] 
    79  1. Review the ''Release/x.y/Notes'' wiki and make sure it contains important info from all the closed tickets for the ''Release x.y'' milestone: 
    80 {{{ 
    81 http://trac.openlayers.org/query?group=component&milestone=x.y+Release&resolution=fixed&order=priority 
    82 }}} 
    83  1. Give the Final Release Candidate to the official MetaCartaOpenLayersRepresentative for inspection. [[br]]''(Until !MetaCarta transfers !OpenLayers copyright to a community host.)'' 
    84    * If approval is not granted, the conflicting code must be removed. Do not release the RC. Restart entire release process from beginning.[[br]][[br]] 
    85  1. Replace all instances in the lib directory of "!http://svn.openlayers.org/trunk/openlayers/repository-license.txt"  with "!http://svn.openlayers.org/trunk/openlayers/release-license.txt" [[br]][[br]] 
    86  1. Tag the release: 
    87 {{{ 
    88   svn cp http://svn.openlayers.org/branches/openlayers/x.y http://svn.openlayers.org/tags/openlayers/release-x.y 
    89 }}} 
    90  1. Export and Build the single file version:  
    91 {{{ 
    92   svn export http://svn.openlayers.org/tags/openlayers/release-x.y OpenLayers-x.y 
    93   cd OpenLayers-x.y/build 
    94   ./build.sh 
    95 }}} 
    96  1. Create a new API release directory on openlayers.org and install the build 
    97 {{{ 
    98   mkdir /www/openlayers/htdocs/api/x.y 
    99   cd .. 
    100   cp build/OpenLayers.js /www/openlayers/htdocs/api/x.y 
    101   cp -a img/ /www/openlayers/htdocs/api/x.y 
    102   cp -a theme/ /www/openlayers/htdocs/api/x.y 
    103 }}} 
    104  1. Build the tarball and copy it up to openlayers.org 
    105 {{{ 
    106   # First remove all .pyc files from the directory. 
    107   rm tools/*.pyc 
    108   cd .. 
    109   tar cvfz OpenLayers-x.y.tar.gz OpenLayers-x.y/ 
    110   cp OpenLayers-x.y.tar.gz /www/openlayers/htdocs/download 
    111 }}} 
    112  1. Install the new API code on openlayers.org 
    113 {{{   
    114   ln -sf /www/openlayers.org/htdocs/api/x.y/OpenLayers.js /www/openlayers/htdocs/api 
    115   ln -sf /www/openlayers.org/htdocs/api/x.y/img /www/openlayers/htdocs/api 
    116   ln -sf /www/openlayers.org/htdocs/api/x.y/theme /www/openlayers/htdocs/api 
    117   ln -s /www/openlayers.org/htdocs/api/x.y/ /www/openlayers.org/htdocs/api/x/ 
    118 }}} 
    119  1. Update API documentation -- This process still needs to be flushed out[[br]][[br]] 
    120  1. Email the dev and users lists and announce the release containing: 
    121    * A link to the ''Release/x.y/Notes'' wiki  
    122    * A summary of the major features and bug fixes for the release 
     1see [wiki:Release/Procedure]