Rev 5866: (mbp) _format_version_tuple handles more different input patterns (Martin in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Mon May 16 13:50:04 UTC 2011


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 5866 [merge]
revision-id: pqm at pqm.ubuntu.com-20110516134958-xkhcnr3lt1tc8ogt
parent: pqm at pqm.ubuntu.com-20110516121732-53l9oqrue6bee5qv
parent: mbp at canonical.com-20110516101110-9ycf42c3c023cwgr
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2011-05-16 13:49:58 +0000
message:
  (mbp) _format_version_tuple handles more different input patterns (Martin
   Pool)
modified:
  bzrlib/__init__.py             __init__.py-20050309040759-33e65acf91bbcd5d
  bzrlib/tests/test_plugins.py   plugins.py-20050622075746-32002b55e5e943e9
=== modified file 'bzrlib/__init__.py'
--- a/bzrlib/__init__.py	2011-05-13 16:28:09 +0000
+++ b/bzrlib/__init__.py	2011-05-16 13:49:58 +0000
@@ -81,14 +81,10 @@
     1.4.0
     >>> print _format_version_tuple((1, 4))
     1.4
-    >>> print _format_version_tuple((2, 1, 0, 'final', 1))
-    Traceback (most recent call last):
-    ...
-    ValueError: version_info (2, 1, 0, 'final', 1) not valid
+    >>> print _format_version_tuple((2, 1, 0, 'final', 42))
+    2.1.0.42
     >>> print _format_version_tuple((1, 4, 0, 'wibble', 0))
-    Traceback (most recent call last):
-    ...
-    ValueError: version_info (1, 4, 0, 'wibble', 0) not valid
+    1.4.0.wibble.0
     """
     if len(version_info) == 2:
         main_version = '%d.%d' % version_info[:2]
@@ -100,9 +96,10 @@
     release_type = version_info[3]
     sub = version_info[4]
 
-    # check they're consistent
     if release_type == 'final' and sub == 0:
         sub_string = ''
+    elif release_type == 'final':
+        sub_string = '.' + str(sub)
     elif release_type == 'dev' and sub == 0:
         sub_string = 'dev'
     elif release_type == 'dev':
@@ -114,7 +111,7 @@
     elif release_type == 'candidate':
         sub_string = 'rc' + str(sub)
     else:
-        raise ValueError("version_info %r not valid" % (version_info,))
+        return '.'.join(map(str, version_info))
 
     return main_version + sub_string
 

=== modified file 'bzrlib/tests/test_plugins.py'
--- a/bzrlib/tests/test_plugins.py	2011-05-13 12:51:05 +0000
+++ b/bzrlib/tests/test_plugins.py	2011-05-16 13:49:58 +0000
@@ -452,7 +452,7 @@
     def test_final_fallback__version__with_version_info(self):
         self.setup_plugin("version_info = (1, 2, 3, 'final', 2)")
         plugin = bzrlib.plugin.plugins()['plugin']
-        self.assertEqual("1.2.3.final.2", plugin.__version__)
+        self.assertEqual("1.2.3.2", plugin.__version__)
 
 
 class TestPluginHelp(tests.TestCaseInTempDir):




More information about the bazaar-commits mailing list