Rev 3396: (mbp) Add symbol_versioning.deprecated_in in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu May 1 08:03:19 BST 2008


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

------------------------------------------------------------
revno: 3396
revision-id:pqm at pqm.ubuntu.com-20080501070304-s4tdgkmt0ghea1i1
parent: pqm at pqm.ubuntu.com-20080501045531-3hkmq9qzoeequw1s
parent: mbp at sourcefrog.net-20080430085242-hdwj8zyp7m41vm41
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2008-05-01 08:03:04 +0100
message:
  (mbp) Add symbol_versioning.deprecated_in
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/__init__.py             __init__.py-20050309040759-33e65acf91bbcd5d
  bzrlib/symbol_versioning.py    symbol_versioning.py-20060105104851-9ecf8af605d15a80
  bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
    ------------------------------------------------------------
    revno: 3388.1.3
    revision-id:mbp at sourcefrog.net-20080430085242-hdwj8zyp7m41vm41
    parent: mbp at sourcefrog.net-20080430080517-bk00bm4j6jk3gcgn
    committer: Martin Pool <mbp at sourcefrog.net>
    branch nick: deprecated-in
    timestamp: Wed 2008-04-30 18:52:42 +1000
    message:
      Add deprecated_in to NEWS
    modified:
      NEWS                           NEWS-20050323055033-4e00b5db738777ff
    ------------------------------------------------------------
    revno: 3388.1.2
    revision-id:mbp at sourcefrog.net-20080430080517-bk00bm4j6jk3gcgn
    parent: mbp at sourcefrog.net-20080430080411-imrex2wtwpb9eivj
    committer: Martin Pool <mbp at sourcefrog.net>
    branch nick: controlfiles
    timestamp: Wed 2008-04-30 18:05:17 +1000
    message:
      Add new symbol_versioning.deprecated_in
    modified:
      bzrlib/symbol_versioning.py    symbol_versioning.py-20060105104851-9ecf8af605d15a80
      bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
    ------------------------------------------------------------
    revno: 3388.1.1
    revision-id:mbp at sourcefrog.net-20080430080411-imrex2wtwpb9eivj
    parent: pqm at pqm.ubuntu.com-20080428205328-bvr1g467xfx7rz9w
    committer: Martin Pool <mbp at sourcefrog.net>
    branch nick: controlfiles
    timestamp: Wed 2008-04-30 18:04:11 +1000
    message:
      _format_version_tuple can take a 3-tuple
    modified:
      bzrlib/__init__.py             __init__.py-20050309040759-33e65acf91bbcd5d
=== modified file 'NEWS'
--- a/NEWS	2008-04-30 22:58:40 +0000
+++ b/NEWS	2008-05-01 07:03:04 +0000
@@ -91,6 +91,9 @@
 
     * Implement xml8 serializer.  (Aaron Bentley)
 
+    * New form ``@deprecated_method(deprecated_in(1, 5, 0))`` for making 
+      deprecation wrappers.  (Martin Pool)
+
   API BREAKS:
 
     * Repository.get_data_stream, Repository.get_data_stream_for_search(),

=== modified file 'bzrlib/__init__.py'
--- a/bzrlib/__init__.py	2008-04-28 03:52:09 +0000
+++ b/bzrlib/__init__.py	2008-04-30 08:04:11 +0000
@@ -47,7 +47,7 @@
 api_minimum_version = (0, 18, 0)
 
 def _format_version_tuple(version_info):
-    """Turn a version number 5-tuple into a short string.
+    """Turn a version number 3-tuple or 5-tuple into a short string.
 
     This format matches <http://docs.python.org/dist/meta-data.html>
     and the typical presentation used in Python output.
@@ -61,11 +61,15 @@
     1.2dev
     >>> print _format_version_tuple((1, 1, 1, 'candidate', 2))
     1.1.1rc2
+    >>> print _format_version_tuple((1, 4, 0))
+    1.4
     """
     if version_info[2] == 0:
         main_version = '%d.%d' % version_info[:2]
     else:
         main_version = '%d.%d.%d' % version_info[:3]
+    if len(version_info) <= 3:
+        return main_version
 
     __release_type = version_info[3]
     __sub = version_info[4]

=== modified file 'bzrlib/symbol_versioning.py'
--- a/bzrlib/symbol_versioning.py	2008-04-30 13:21:07 +0000
+++ b/bzrlib/symbol_versioning.py	2008-05-01 07:03:04 +0000
@@ -21,6 +21,7 @@
 """
 
 __all__ = ['deprecated_function',
+           'deprecated_in',
            'deprecated_list',
            'deprecated_method',
            'DEPRECATED_PARAMETER',
@@ -51,6 +52,8 @@
 
 from warnings import warn
 
+import bzrlib
+
 
 DEPRECATED_PARAMETER = "A deprecated parameter marker."
 zero_seven = "%s was deprecated in version 0.7."
@@ -76,6 +79,16 @@
 one_four = "%s was deprecated in version 1.4."
 one_five = "%s was deprecated in version 1.5."
 
+
+def deprecated_in(version_tuple):
+    """Generate a message that something was deprecated in a release.
+
+    >>> deprecated_in((1, 4, 0))
+    '%s was deprecated in version 1.4'
+    """
+    return ("%s was deprecated in version "
+            + bzrlib._format_version_tuple(version_tuple))
+
 def set_warning_method(method):
     """Set the warning method to be used by this module.
 

=== modified file 'bzrlib/tests/__init__.py'
--- a/bzrlib/tests/__init__.py	2008-04-07 04:44:56 +0000
+++ b/bzrlib/tests/__init__.py	2008-04-30 08:05:17 +0000
@@ -2839,6 +2839,7 @@
         'bzrlib.merge3',
         'bzrlib.option',
         'bzrlib.store',
+        'bzrlib.symbol_versioning',
         'bzrlib.tests',
         'bzrlib.timestamp',
         'bzrlib.version_info_formats.format_custom',




More information about the bazaar-commits mailing list