aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2015-06-08 13:22:43 -0400
committerJason R. Coombs <jaraco@jaraco.com>2015-06-08 13:22:43 -0400
commitc1044e3706ed28a6913e0dfcb4f7eec713af34c1 (patch)
tree5effa7ffd4fb5f0b36a3734a78ce8af5f78b5595
parentcd79379c95051b94a7facf56ac09c99f7cd31da0 (diff)
downloadexternal_python_setuptools-c1044e3706ed28a6913e0dfcb4f7eec713af34c1.tar.gz
external_python_setuptools-c1044e3706ed28a6913e0dfcb4f7eec713af34c1.tar.bz2
external_python_setuptools-c1044e3706ed28a6913e0dfcb4f7eec713af34c1.zip
Backed out unintended changes made in f572ec9, restoring use of 'imp' module for dynamic module creation originally committed in 06ac3674 and 4c121bd24f.
-rw-r--r--pkg_resources/__init__.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/pkg_resources/__init__.py b/pkg_resources/__init__.py
index 4ed71329..c3b3d7af 100644
--- a/pkg_resources/__init__.py
+++ b/pkg_resources/__init__.py
@@ -21,7 +21,7 @@ import os
import io
import time
import re
-import imp
+import types
import zipfile
import zipimport
import warnings
@@ -39,6 +39,12 @@ import tempfile
import textwrap
from pkgutil import get_importer
+try:
+ import _imp
+except ImportError:
+ # Python 3.2 compatibility
+ import imp as _imp
+
PY3 = sys.version_info > (3,)
PY2 = not PY3
@@ -2163,7 +2169,7 @@ def _handle_ns(packageName, path_item):
return None
module = sys.modules.get(packageName)
if module is None:
- module = sys.modules[packageName] = imp.new_module(packageName)
+ module = sys.modules[packageName] = types.ModuleType(packageName)
module.__path__ = []
_set_parent_ns(packageName)
elif not hasattr(module,'__path__'):
@@ -2182,7 +2188,7 @@ def _handle_ns(packageName, path_item):
def declare_namespace(packageName):
"""Declare that package 'packageName' is a namespace package"""
- imp.acquire_lock()
+ _imp.acquire_lock()
try:
if packageName in _namespace_packages:
return
@@ -2209,18 +2215,18 @@ def declare_namespace(packageName):
_handle_ns(packageName, path_item)
finally:
- imp.release_lock()
+ _imp.release_lock()
def fixup_namespace_packages(path_item, parent=None):
"""Ensure that previously-declared namespace packages include path_item"""
- imp.acquire_lock()
+ _imp.acquire_lock()
try:
for package in _namespace_packages.get(parent,()):
subpath = _handle_ns(package, path_item)
if subpath:
fixup_namespace_packages(subpath, package)
finally:
- imp.release_lock()
+ _imp.release_lock()
def file_ns_handler(importer, path_item, packageName, module):
"""Compute an ns-package subpath for a filesystem or zipfile importer"""