Changeset 2127


Ignore:
Timestamp:
Mar 14, 2011 5:09:42 PM (10 years ago)
Author:
lou
Message:

Change handling of Dependencies so that it specifies stable branches.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prepare_new_release

    r2071 r2127  
    1717#       Adapt to new script architecture pioneered in *_new_stable; major
    1818#       rewrite.
     19# Modified: Lou Hafer          SFU      2011-03-14
     20#       Change handling of externals so the svn:externals is left pointing to
     21#       releases but Dependencies is left pointing to stable branches.
    1922
    2023#set -x -v
     
    7679
    7780# stableExternals specifies externals for which we are doing simultaneous
    78 # releases. We will use the stable branch of the external while preparing and
    79 # testing this release candidate, changing the Dependencies file to specify a
     81# releases. We will use the stable branch of the external while preparing
     82# and testing this release candidate, changing svn:externals to specify a
    8083# (nonexistent) release of the external at the last moment.
    8184
     
    449452fi
    450453
    451 # Look for a file specifying externals.
     454# The Dependencies file in a stable branch should contain only stable
     455# and release references (trunk is flagged as an error below). The overall
     456# algorithm is to convert svn:externals to use releases but leave Dependencies
     457# with stables. In practice, this is accomplished by backing up Dependencies,
     458# using Dependencies to assemble and set svn:externals, and finally restoring
     459# Dependencies from the backup after all else is done.
     460
     461# Look for a file specifying externals. Preferably Dependencies, but check for
     462# Externals just in case this is an unconverted project.
    452463
    453464srcDepFile=
     
    459470done
    460471
    461 # Now generate a proper Dependencies file for the release.  Each line
    462 # in a Dependencies file has the format <ext_name> <ext_url>.  Normally,
    463 # each <ext_url> should be a stable branch.  References to stable branches
    464 # will be converted to references to releases unless the reference is to
    465 # a project in the stableExternals list (in which case it'll be converted
    466 # at the very end). References to releases are not changed. References to
    467 # trunk are an error. Failure to find a release for an external not in the
    468 # stableExternals list is an error. Save the existing externals and srcDepFile,
    469 # as we'll probably change both.
     472# Now generate the proper externals for the release.  Each line in a
     473# Dependencies file has the format <ext_name> <ext_url>.  Normally, each
     474# <ext_url> should be a stable branch.  References to stable branches will be
     475# converted to references to releases unless the reference is to a project
     476# in the stableExternals list (in which case it'll be converted at the very
     477# end). References to releases are not changed. References to trunk are an
     478# error. Failure to find a release for an external not in the stableExternals
     479# list is an error. Save the existing externals and srcDepFile, as we'll
     480# probably change both.
    470481
    471482if test -n "$srcDepFile" ; then
     
    750761fi
    751762
     763# If we had a Dependencies file to begin with, it contained references to
     764# stable branches, and perhaps releases. This is the set of dependencies that
     765# we want to commit in Dependencies, so reload $srcDepFile.bak into
     766# Dependencies, now that we have svn:externals set to releases.
     767
     768if test -n "$srcDepFile" ; then
     769  cp $srcDepFile.bak Dependencies
     770fi
     771
    752772if test -r Dependencies ; then
    753773  echo 'Also, please confirm the externals are correct:'
Note: See TracChangeset for help on using the changeset viewer.