diff options
| author | Brian Sutherland <brian@vanguardistas.net> | 2016-11-15 17:20:51 +0100 |
|---|---|---|
| committer | Brian Sutherland <brian@vanguardistas.net> | 2016-11-15 17:20:51 +0100 |
| commit | 0a5748f24b66d982450487f2ef4edd0fe8e4948a (patch) | |
| tree | d413726508cdad26aec0c51d61d78254debb52a3 | |
| parent | bcc55d40382f47784d93606daa174d454436e95a (diff) | |
| download | zope-interface-fix-optimization-imports-under-python3.tar.gz | |
Use relative importsfix-optimization-imports-under-python3
see https://github.com/zopefoundation/zope.interface/issues/60
| -rw-r--r-- | src/zope/interface/adapter.py | 4 | ||||
| -rw-r--r-- | src/zope/interface/declarations.py | 14 | ||||
| -rw-r--r-- | src/zope/interface/interface.py | 6 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_optimizations.py | 12 |
4 files changed, 24 insertions, 12 deletions
diff --git a/src/zope/interface/adapter.py b/src/zope/interface/adapter.py index 625b7be..c36ce72 100644 --- a/src/zope/interface/adapter.py +++ b/src/zope/interface/adapter.py @@ -398,7 +398,7 @@ class LookupBaseFallback(object): LookupBasePy = LookupBaseFallback # BBB try: - from _zope_interface_coptimizations import LookupBase + from ._zope_interface_coptimizations import LookupBase except ImportError: #pragma NO COVER LookupBase = LookupBaseFallback @@ -434,7 +434,7 @@ class VerifyingBaseFallback(LookupBaseFallback): VerifyingBasePy = VerifyingBaseFallback #BBB try: - from _zope_interface_coptimizations import VerifyingBase + from ._zope_interface_coptimizations import VerifyingBase except ImportError: #pragma NO COVER VerifyingBase = VerifyingBaseFallback diff --git a/src/zope/interface/declarations.py b/src/zope/interface/declarations.py index 48e459a..7ccd123 100644 --- a/src/zope/interface/declarations.py +++ b/src/zope/interface/declarations.py @@ -640,11 +640,11 @@ ClassProvidesBase = ClassProvidesBaseFallback # Try to get C base: try: - import _zope_interface_coptimizations + from . import _zope_interface_coptimizations except ImportError: #pragma NO COVERAGE pass else: #pragma NO COVERAGE - from _zope_interface_coptimizations import ClassProvidesBase + from ._zope_interface_coptimizations import ClassProvidesBase class ClassProvides(Declaration, ClassProvidesBase): @@ -917,13 +917,13 @@ def _normalizeargs(sequence, output = None): _empty = Declaration() try: - import _zope_interface_coptimizations + from . import _zope_interface_coptimizations except ImportError: #pragma NO COVER pass else: #pragma NO COVER PyPy - from _zope_interface_coptimizations import implementedBy - from _zope_interface_coptimizations import providedBy - from _zope_interface_coptimizations import getObjectSpecification - from _zope_interface_coptimizations import ObjectSpecificationDescriptor + from ._zope_interface_coptimizations import implementedBy + from ._zope_interface_coptimizations import providedBy + from ._zope_interface_coptimizations import getObjectSpecification + from ._zope_interface_coptimizations import ObjectSpecificationDescriptor objectSpecificationDescriptor = ObjectSpecificationDescriptor() diff --git a/src/zope/interface/interface.py b/src/zope/interface/interface.py index e7eff5d..35d3734 100644 --- a/src/zope/interface/interface.py +++ b/src/zope/interface/interface.py @@ -114,7 +114,7 @@ class SpecificationBasePy(object): SpecificationBase = SpecificationBasePy try: - from _zope_interface_coptimizations import SpecificationBase + from ._zope_interface_coptimizations import SpecificationBase except ImportError: #pragma NO COVER pass @@ -155,14 +155,14 @@ class InterfaceBasePy(object): InterfaceBase = InterfaceBasePy try: - from _zope_interface_coptimizations import InterfaceBase + from ._zope_interface_coptimizations import InterfaceBase except ImportError: #pragma NO COVER pass adapter_hooks = [] try: - from _zope_interface_coptimizations import adapter_hooks + from ._zope_interface_coptimizations import adapter_hooks except ImportError: #pragma NO COVER pass diff --git a/src/zope/interface/tests/test_optimizations.py b/src/zope/interface/tests/test_optimizations.py new file mode 100644 index 0000000..3d41268 --- /dev/null +++ b/src/zope/interface/tests/test_optimizations.py @@ -0,0 +1,12 @@ +from platform import python_implementation +import unittest + +class TestOptimizations(unittest.TestCase): + + def test_optimizations(self): + if python_implementation() != 'CPython': + return + from zope.interface import _zope_interface_coptimizations + from zope.interface.adapter import LookupBase + self.assertTrue(LookupBase is _zope_interface_coptimizations.LookupBase) + |
