Add <target> to one more testcase (see r8206).
[docutils.git] / sandbox / infrastructure / set_version.sh
blob13f91213a554540f389b80a43a96c3425fd544cc
1 #!/bin/bash
3 # set version number and description
5 # Author: engelbert gruber (taken from Lea Wiemann's release.sh)
6 # Contact: grubert@users.sourceforge.net
7 # Revision: $Revision$
8 # Date: $Date$
9 # Copyright: This script has been placed in the public domain.
11 # USAGE see: docutils/docs/dev/release.txt
13 # must be run from docutils trunk/docutils,
14 # because HISTORY and RELEASE_NOTES.txt are modified.
16 set -e
18 echo "Change version identifier"
19 if [ -z "$1" ] ; then
20 echo "USAGE"
21 echo " set_version.sh <new_version-identifier>"
22 echo ""
23 echo "Version identifier: major.minor[.micro][<pre>][.dev]"
24 echo " micro is for bug-fix releases and left out if zero"
25 echo " prereleases get '(a|b|rc[N])#' appended"
26 echo " a '.dev' suffix indicates repository versions (no release)"
27 echo ""
28 echo "Samples"
29 echo " 0.14b.dev 0.14b 0.14rc1.dev 0.14rc1 0.14 0.15b.dev"
30 exit
33 old_ver="`python -c 'import docutils; print docutils.__version__'`"
34 new_ver=$1
36 echo "from current Docutils version ${old_ver} to ${new_ver}"
38 function set_ver()
40 # Parameters: old_version new_version
41 shopt -s extglob
42 echo Determining list of files to be changed...
43 # BUG ls lists directories but does not descend
44 # (try ls --recursive)
45 files="docutils/__init__.py setup.py README.txt `$svn ls test/functional/expected/ | sed 's|^|test/functional/expected/|'`"
46 echo "Now I'll change the version identifier to ${new_ver} in the following files:"
47 echo $files
48 echo 'and update the version_info in docutils/__init__.py.'
49 echo
50 echo 'Press enter to proceed (or enter anything to skip)...'
51 read
52 if [ ! "$REPLY" ]; then
53 echo 'Modifying files with ed...'
54 old_ver_regex="`echo "$1" | sed 's/\./\\\\./g'`"
55 # "ed" returns an error code if there has been no substitution, so
56 # we temporarily deactivate exit-on-error.
57 set +e
58 for F in $files; do
59 (echo ",s/$old_ver_regex/${new_ver}/g"; echo 'wq') | ed "$F"
60 done
61 set -e
62 echo 'Modifying docutils/__init__.py with version_identifier_parsing.py'
63 python ../sandbox/infrastructure/version_identifier_parsing.py --change-version-info=docutils/__init__.py
65 echo 'CAUTION: please look at the diffs carefully, for wrongly'
66 echo ' replaced embedded numbers.'
67 # checkin "set version number to $2" $files
70 set_ver "$old_ver" "$new_ver"
72 #echo "VERIFY: major, minor, micro, releaselevel (candidate,final), prerelease serial, pre/release or checkout"
73 #python -c 'import docutils; print "__version_info__ =", docutils.__version_info__'