Rev 6281: (mbp) restore old api name bzrlib.tests.Features to unbreak some plugins in file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/

Patch Queue Manager pqm at pqm.ubuntu.com
Mon Nov 21 00:32:54 UTC 2011


At file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 6281 [merge]
revision-id: pqm at pqm.ubuntu.com-20111121003254-321qb4a08o2a3cji
parent: pqm at pqm.ubuntu.com-20111118155750-apia0a5k1mnt8qm8
parent: mbp at canonical.com-20111121000630-31w6wh8jednnnxaw
committer: Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2011-11-21 00:32:54 +0000
message:
  (mbp) restore old api name bzrlib.tests.Features to unbreak some plugins
   (Martin Pool)
modified:
  bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
  bzrlib/tests/features.py       features.py-20090820042958-jglgza3wrn03ha9e-1
=== modified file 'bzrlib/tests/__init__.py'
--- a/bzrlib/tests/__init__.py	2011-11-16 15:57:14 +0000
+++ b/bzrlib/tests/__init__.py	2011-11-20 02:08:16 +0000
@@ -100,6 +100,7 @@
     )
 from bzrlib.ui import NullProgressView
 from bzrlib.ui.text import TextUIFactory
+from bzrlib.tests.features import _CompatabilityThunkFeature
 
 # Mark this python module as being part of the implementation
 # of unittest: this gives us better tracebacks where the last
@@ -4462,8 +4463,28 @@
     pass
 
 
- at deprecated_function(deprecated_in((2, 5, 0)))
-def ModuleAvailableFeature(name):
-    from bzrlib.tests import features
-    return features.ModuleAvailableFeature(name)
-    
+# API compatibility for old plugins; see bug 892622.
+for name in [
+    'Feature',
+    'HTTPServerFeature', 
+    'ModuleAvailableFeature',
+    'HTTPSServerFeature', 'SymlinkFeature', 'HardlinkFeature',
+    'OsFifoFeature', 'UnicodeFilenameFeature',
+    'ByteStringNamedFilesystem', 'UTF8Filesystem',
+    'BreakinFeature', 'CaseInsCasePresFilenameFeature',
+    'CaseInsensitiveFilesystemFeature', 'case_sensitive_filesystem_feature',
+    'posix_permissions_feature',
+    ]:
+    globals()[name] = _CompatabilityThunkFeature(
+        symbol_versioning.deprecated_in((2, 5, 0)),
+        'bzrlib.tests', name,
+        name, 'bzrlib.tests.features')
+
+
+for (old_name, new_name) in [
+    ('UnicodeFilename', 'UnicodeFilenameFeature'),
+    ]:
+    globals()[name] = _CompatabilityThunkFeature(
+        symbol_versioning.deprecated_in((2, 5, 0)),
+        'bzrlib.tests', old_name,
+        new_name, 'bzrlib.tests.features')

=== modified file 'bzrlib/tests/features.py'
--- a/bzrlib/tests/features.py	2011-08-23 09:29:27 +0000
+++ b/bzrlib/tests/features.py	2011-11-21 00:06:30 +0000
@@ -26,7 +26,6 @@
 from bzrlib import (
     osutils,
     symbol_versioning,
-    tests,
     )
 
 
@@ -290,6 +289,8 @@
         if CaseInsCasePresFilenameFeature.available():
             return False
 
+        from bzrlib import tests
+
         if tests.TestCaseWithMemoryTransport.TEST_ROOT is None:
             root = osutils.mkdtemp(prefix='testbzr-', suffix='.tmp')
             tests.TestCaseWithMemoryTransport.TEST_ROOT = root
@@ -490,26 +491,3 @@
 
 
 win32_feature = Win32Feature()
-
-
-for name in ['HTTPServerFeature', 
-    'HTTPSServerFeature', 'SymlinkFeature', 'HardlinkFeature',
-    'OsFifoFeature', 'UnicodeFilenameFeature',
-    'ByteStringNamedFilesystem', 'UTF8Filesystem',
-    'BreakinFeature', 'CaseInsCasePresFilenameFeature',
-    'CaseInsensitiveFilesystemFeature', 'case_sensitive_filesystem_feature',
-    'posix_permissions_feature',
-    ]:
-    setattr(tests, name, _CompatabilityThunkFeature(
-        symbol_versioning.deprecated_in((2, 5, 0)),
-        'bzrlib.tests', name,
-        name, 'bzrlib.tests.features'))
-
-
-for (old_name, new_name) in [
-    ('UnicodeFilename', 'UnicodeFilenameFeature'),
-    ]:
-    setattr(tests, name, _CompatabilityThunkFeature(
-        symbol_versioning.deprecated_in((2, 5, 0)),
-        'bzrlib.tests', old_name,
-        new_name, 'bzrlib.tests.features'))




More information about the bazaar-commits mailing list