Changes between Version 4 and Version 5 of ReleaseProcedure


Ignore:
Timestamp:
Aug 16, 2007, 10:04:05 AM (15 years ago)
Author:
Jari Häkkinen
Comment:

Working on ticket:656. This is the last draft before actually trying the procedures.

Legend:

Unmodified
Added
Removed
Modified
  • ReleaseProcedure

    v4 v5  
    9494svn co http://lev.thep.lu.se/repository/base/branches/A.B-stable A.B
    9595}}}
    96   i. Update version number in `build.xml`. Locate and change to the
     96  i. Update version number in `build.xml`. Locate and change the
    9797     below line
    9898{{{
     
    136136This section describes what to do when publishing a patch release A.B.C.
    137137
    138  1. Make sure that all commits are performed into to the branch, such
    139     as bumping version number(s) (`configure.ac`), acknowledge
    140     contributions (`THANKS`), update files `NEWS` and
    141     `ChangeLog`. [[br]][[br]]
    142   i. Update version number in `configure.ac`. Locate and change the
    143      below line
    144 {{{
    145 AC_INIT([svndigest],[A.B.C],[jari.at.thep.lu.se])
    146 }}}
    147   i. Update `THANKS`. [[br]][[br]]
    148   i. Set the date for the new release in `NEWS`
    149 {{{
    150 version A.B.C (released 27 June 2007)
    151 }}}
    152     Make sure that the items in `NEWS` cover all important bug fixes of the
    153     release. [[br]][[br]]
    154   i. Finalize the links to trac in `ChangeLog`
    155 {{{
    156 version A.B.C:
    157         - http://trac.thep.lu.se/trac/svndigest/log/branches/A.B-stable?rev=N&stop_rev=M
    158         - http://trac.thep.lu.se/trac/svndigest/query?milestone=A.B.C&order=id
    159 }}}
    160   where `N` is given by
    161 {{{
    162 $ svn update
    163 N-2
    164 }}}
    165   and `M` should have been set at previous release.[[br]][[br]]
     138 1. Make sure that all commits are performed into to the trunk, such
     139    as bumping version number(s) ([source:trunk/build.xml build.xml]),
     140    acknowledge contributions ([source:trunk/credits.txt credits.txt]),
     141    API changes that may affect backwards compatibility
     142    ([http://base.thep.lu.se/chrome/site/doc/html/appendix/appendix.incompatible.html API changes]),
     143    and other files as necessary.
     144    [[br]][[br]]
     145  i. Update version number in `build.xml`. Locate and change the
     146     below line
     147{{{
     148<property name="base.maintenanceversion" value="C" />
     149}}}
     150  i. Update `credits.txt`. [[br]][[br]]
     151  i. Make sure that the API incompatibility list is up to date
     152     [http://base.thep.lu.se/chrome/site/doc/html/appendix/appendix.incompatible.html API changes].
     153     This document should really be changed as the API changes, please do not leave this task to be
     154     done at the last minute of release. [[br]][[br]]
     155  i. Make other changes as needed. If items are missing from this list, please add them with proper
     156     instructions for the items changes maintenance. [[br]][[br]]
    166157  i. Commit changes to the repository, `svn ci -m "Preparing release A.B.C"`
    167158     [[br]][[br]]
    168  1. Update copyright statements with commands
    169 {{{
    170 ./bootstrap
    171 make all
    172 make check
     159 1. Update copyright statements with
     160{{{
    173161./bin/svndigest --copyright
    174162}}}
    175  Examine the updates and commit changes with `svn ci -m "updating copyright statements"`.[[br]][[br]]
     163    Examine the updates and commit changes with `svn ci -m "updating copyright statements"`. For
     164    this step [http://trac.thep.lu.se/trac/svndigest svndigest] is obviously needed. [[br]][[br]]
    176165 1. Needless to say, make sure that the program is in a state to be
    177166    released; make sure that all the tests pass, test the distribution
     
    179168    appropriate:
    180169{{{
    181 ./bootstrap
    182 make check
    183 make distcheck
    184 }}}
     170Please add test command sequence here
     171}}}
     172    If you fail in this step, please resolve the issues and restart these procedures. [[br]][[br]]
    185173 1. Create a tag using a one liner like
    186174{{{
    187 svn copy http://lev.thep.lu.se/repository/svndigest/branches/A.B-stable \
    188     http://lev.thep.lu.se/repository/svndigest/tags/A.B.C \
     175svn copy http://lev.thep.lu.se/repository/BASE/branches/A.B-stable \
     176    http://lev.thep.lu.se/repository/base/tags/A.B.C \
    189177    -m "Tagging version A.B.C"
    190178}}}
    191179 1. Update the version list in Trac using the
    192     [http://lev.thep.lu.se/trac/svndigest/admin trac-admin tool].
     180    [http://lev.thep.lu.se/trac/base/admin trac-admin tool].
    193181    [[br]][[br]]
    194182 1. Create a distribution package:
    195183{{{
    196 svn co http://lev.thep.lu.se/repository/svndigest/tags/A.B.C A.B.C_dist
     184svn co http://lev.thep.lu.se/repository/base/tags/A.B.C A.B.C_dist
    197185cd A.B.C_dist
    198 ./bootstrap
    199 ./configure [OPTION]...
    200 make dist
    201 }}}
    202     Attach the new package to the DownloadPage. Remove `A.B.C_dist`
    203     directory. [[br]][[br]]
    204  1. Update DownloadPage and [wiki:WikiStart WikiStart][[br]][[br]]
     186ant package
     187}}}
     188    Upload the new packages to the download are (Currently `~jari/www/base` directory).
     189    Remove `A.B.C_dist` directory. [[br]][[br]]
     190 1. Prepare the minor branch for the next patch release [[br]][[br]]
     191  i. Update version number in `build.xml`. Locate and change the
     192     below line
     193{{{
     194<property name="base.maintenanceversion" value="[C+1]" />
     195}}}
     196  i. Commit changes to the repository,
     197     `svn ci -m "Changes for future release A.B.[C+1]"` [[br]][[br]]
     198 1. Update DownloadPage [[br]][[br]]
    205199  i. Update the section '''Latest stable release''' to reflect the new
    206200     version, that is [[br]][[br]]
    207201   * Change the version number [[br]][[br]]
    208    * Update the package link to the new version [[br]][[br]]
    209    * Update link to NEWS file to `source:tags/A.B.C/NEWS` [[br]][[br]]
    210   i. In section '''svndigest ''latest release'' ''' update link to
    211      `[source:tags/A.B.C/NEWS NEWS]` and modify the svn command to
    212 {{{
    213 svn checkout http://lev.thep.lu.se/repository/svndigest/tags/A.B.C svndigest-A.B.C
    214 }}}
    215   i. In section '''svndigest ''stable'' ''' update link to
     202   * Update the package links to the new version [[br]][[br]]
     203  i. In section '''base ''latest release'' ''' modify the svn command to
     204{{{
     205svn checkout http://lev.thep.lu.se/repository/base/tags/A.B.C base-A.B.C
     206}}}
     207  i. In section '''base ''stable'' ''' update link to
    216208     `[milestone:A.B.[C+1] A.B.[C+1]]`.[[br]][[br]]
    217   i. On WikiStart update links `[source:tags/A.B/doc/readme.txt Manual]`, `[source:tags/A.B/NEWS NEWS]`, and `[source:tags/A.B/INSTALL Install]`, .[[br]][[br]]
    218  1. Prepare the minor branch for the next patch release [[br]][[br]]
    219   i. Update version number in `configure.ac`. Locate and change the
    220      below line
    221 {{{
    222 AC_INIT([svndigest],[preA.B.[C+1]],[jari.at.thep.lu.se])
    223 }}}
    224   i. Add an entry in `NEWS`
    225 {{{
    226 version A.B.[C+1] (released DATE)
    227 }}}
    228      The date is set when version A.B.[C+1] is released. [[br]][[br]]
    229   i. Add an entry in `ChangeLog`
    230 {{{
    231 version A.B.[C+1]:
    232         - http://trac.thep.lu.se/trac/svndigest/log/branches/A.B-stable?rev=HEAD&stop_rev=[M+1]
    233         - http://trac.thep.lu.se/trac/svndigest/query?milestone=A.B.[C+1]&order=id
    234 }}}
    235   i. Commit changes to the repository,
    236      `svn ci -m "Changes for future release A.B.[C+1]"` [[br]][[br]]
    237209 1. Merge the patch release into the trunk. To avoid confusion and
    238210    minimize the risk of loosing fixes, this step is only performed by
    239     the Merge Master. [[br]][[br]]
     211    the Merge Master. (Johan Enell is currently Merge Master and as the master
     212    he knows what he is doing.) [[br]][[br]]
    240213  i. Checkout a pristine version of the trunk.
    241214{{{
    242 svn checkout http://lev.thep.lu.se/repository/svndigest/trunk trunk_merge
     215svn checkout http://lev.thep.lu.se/repository/base/trunk trunk_merge
    243216}}}
    244217  i. Merge changes into trunk. In this example the diffence between a
     
    252225  i. Resolve all conflicts. Run tests and perform all other
    253226     appropriate tests to make sure that the merge does not create
    254      havoc. [[br]][[br]]
     227     havoc. (run !TestAll and perform an installation.) [[br]][[br]]
    255228  i. Commit changes to the trunk branch.
    256229{{{
    257230svn commit -m "Merged patch release A.B.1 to the trunk. Delta A.B.1 - A.B"
    258231}}}
    259  1. Close the milestone associated with the release and replace `head` with appropriate revision in log link. Add a new
    260     milestone as needed (with a log link).
     232 1. ''Performing this step is to acnkowledge that the merge has been performed.'' [[br]]
     233    Close the milestone associated with the release and replace `head` with appropriate
     234    revision in log link. Add a new milestone as needed (with an associated log link like
     235    ''Revision Log: log:branches/webservices@3001:head'' in the description field).