123456789101112131415161718192021222324252627282930313233343536 |
- import sys
- def disable_importlib_metadata_finder(metadata):
- """
- Ensure importlib_metadata doesn't provide older, incompatible
- Distributions.
- Workaround for #3102.
- """
- try:
- import importlib_metadata
- except ImportError:
- return
- if importlib_metadata is metadata:
- return
- to_remove = [
- ob
- for ob in sys.meta_path
- if isinstance(ob, importlib_metadata.MetadataPathFinder)
- ]
- for item in to_remove:
- sys.meta_path.remove(item)
- if sys.version_info < (3, 10):
- from setuptools.extern import importlib_metadata as metadata
- disable_importlib_metadata_finder(metadata)
- else:
- import importlib.metadata as metadata # noqa: F401
- if sys.version_info < (3, 9):
- from setuptools.extern import importlib_resources as resources
- else:
- import importlib.resources as resources # noqa: F401
|