[Checkins] SVN: keas.build/trunk/ Add --force-version option.
Adam Groszer
agroszer at gmail.com
Tue Dec 8 07:17:32 EST 2009
Log message for revision 106277:
Add --force-version option.
Changed:
U keas.build/trunk/CHANGES.txt
U keas.build/trunk/src/keas/build/base.py
U keas.build/trunk/src/keas/build/build.py
U keas.build/trunk/src/keas/build/package.py
-=-
Modified: keas.build/trunk/CHANGES.txt
===================================================================
--- keas.build/trunk/CHANGES.txt 2009-12-08 11:51:55 UTC (rev 106276)
+++ keas.build/trunk/CHANGES.txt 2009-12-08 12:17:31 UTC (rev 106277)
@@ -4,6 +4,8 @@
0.1.7 (unreleased)
------------------
+- Improvement: Add ``--force-version`` option.
+
- Improvement: Add version to svn log comment. That makes life easier (at least
with TortoiseSVN)
Modified: keas.build/trunk/src/keas/build/base.py
===================================================================
--- keas.build/trunk/src/keas/build/base.py 2009-12-08 11:51:55 UTC (rev 106276)
+++ keas.build/trunk/src/keas/build/base.py 2009-12-08 12:17:31 UTC (rev 106277)
@@ -147,6 +147,11 @@
help="When set, the system guesses the next version to generate.")
parser.add_option(
+ "--force-version", action="store",
+ dest="forceVersion", default="", metavar="VERSION",
+ help="Force one common version through all packages and configs.")
+
+parser.add_option(
"-b", "--use-branch", action="store",
dest="branch", metavar="BRANCH", default=None,
help="When specified, this branch will be always used.")
Modified: keas.build/trunk/src/keas/build/build.py
===================================================================
--- keas.build/trunk/src/keas/build/build.py 2009-12-08 11:51:55 UTC (rev 106276)
+++ keas.build/trunk/src/keas/build/build.py 2009-12-08 12:17:31 UTC (rev 106277)
@@ -125,6 +125,11 @@
defaultVersion = projectVersions[-1]
if options.nextVersion or configVersion == '+':
defaultVersion = base.guessNextVersion(defaultVersion)
+ if options.forceVersion:
+ if options.forceVersion in projectVersions:
+ logger.error('Forced version %s already exists' % forceVersion)
+ else:
+ defaultVersion = forceVersion
projectVersion = base.getInput(
'Project Version', defaultVersion, options.useDefaults)
Modified: keas.build/trunk/src/keas/build/package.py
===================================================================
--- keas.build/trunk/src/keas/build/package.py 2009-12-08 11:51:55 UTC (rev 106276)
+++ keas.build/trunk/src/keas/build/package.py 2009-12-08 12:17:31 UTC (rev 106277)
@@ -320,14 +320,25 @@
if ':' in pkg:
self.customPath = pkg.split(':')[1]
break
+
# 2. Find all versions.
versions = self.findVersions()
logger.info('Existing %s versions: %s' % (
self.pkg, ' | '.join(reversed(versions))))
+
# 3. Determine the default version to suggest.
defaultVersion = None
- if versions:
- # 3.1. If the branch was specified, check whether it changed since
+
+ # 3.1 Set default version based on forceVersion
+ forceVersion = self.options.forceVersion
+ if forceVersion:
+ if forceVersion in versions:
+ logger.error('Forced version %s already exists' % forceVersion)
+ else:
+ defaultVersion = forceVersion
+
+ if versions and not defaultVersion:
+ # 3.2. If the branch was specified, check whether it changed since
# the last release.
changed = False
if self.options.branch:
@@ -338,7 +349,7 @@
logger.info("No changes detected.")
else:
logger.info("Not checking for changes since version %s because no branch was specified.", versions[-1])
- # 3.2. If the branch changed and the next version should be
+ # 3.3. If the branch changed and the next version should be
# suggested, let's find the next version.
if self.options.nextVersion and changed:
defaultVersion = base.guessNextVersion(versions[-1])
More information about the checkins
mailing list