diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2013-12-01 05:24:31 -0500 |
---|---|---|
committer | Jason R. Coombs <jaraco@jaraco.com> | 2013-12-01 05:24:31 -0500 |
commit | 051b809052ca5531320cdfbfa5161b4afe9d6b2f (patch) | |
tree | c4bccc4420bc207c7bb7a6efa5627ba252197e77 /pkg_resources.py | |
parent | f9bfe4d3011feff382adfbd8ee87a3701e03ce28 (diff) | |
download | external_python_setuptools-051b809052ca5531320cdfbfa5161b4afe9d6b2f.tar.gz external_python_setuptools-051b809052ca5531320cdfbfa5161b4afe9d6b2f.tar.bz2 external_python_setuptools-051b809052ca5531320cdfbfa5161b4afe9d6b2f.zip |
Remove internal implementation of ImpImporter and ImpLoader as comments indicate they're only required for Python 2.4.
Diffstat (limited to 'pkg_resources.py')
-rw-r--r-- | pkg_resources.py | 76 |
1 files changed, 1 insertions, 75 deletions
diff --git a/pkg_resources.py b/pkg_resources.py index 3334bdfa..71f46f60 100644 --- a/pkg_resources.py +++ b/pkg_resources.py @@ -1701,81 +1701,7 @@ class EggMetadata(ZipProvider): self.module_path = importer.archive self._setup_prefix() - -class ImpWrapper: - """PEP 302 Importer that wraps Python's "normal" import algorithm""" - - def __init__(self, path=None): - self.path = path - - def find_module(self, fullname, path=None): - subname = fullname.split(".")[-1] - if subname != fullname and self.path is None: - return None - if self.path is None: - path = None - else: - path = [self.path] - try: - file, filename, etc = imp.find_module(subname, path) - except ImportError: - return None - return ImpLoader(file, filename, etc) - - -class ImpLoader: - """PEP 302 Loader that wraps Python's "normal" import algorithm""" - - def __init__(self, file, filename, etc): - self.file = file - self.filename = filename - self.etc = etc - - def load_module(self, fullname): - try: - mod = imp.load_module(fullname, self.file, self.filename, self.etc) - finally: - if self.file: self.file.close() - # Note: we don't set __loader__ because we want the module to look - # normal; i.e. this is just a wrapper for standard import machinery - return mod - - -def get_importer(path_item): - """Retrieve a PEP 302 "importer" for the given path item - - If there is no importer, this returns a wrapper around the builtin import - machinery. The returned importer is only cached if it was created by a - path hook. - """ - try: - importer = sys.path_importer_cache[path_item] - except KeyError: - for hook in sys.path_hooks: - try: - importer = hook(path_item) - except ImportError: - pass - else: - break - else: - importer = None - - sys.path_importer_cache.setdefault(path_item,importer) - if importer is None: - try: - importer = ImpWrapper(path_item) - except ImportError: - pass - return importer - -try: - from pkgutil import get_importer, ImpImporter -except ImportError: - pass # Python 2.3 or 2.4, use our own implementation -else: - ImpWrapper = ImpImporter # Python 2.5, use pkgutil's implementation - del ImpLoader, ImpImporter +from pkgutil import get_importer, ImpImporter as ImpWrapper _declare_state('dict', _distribution_finders = {}) |