diff options
author | Spencer Chang <schang412@gmail.com> | 2023-02-13 09:56:14 -0800 |
---|---|---|
committer | Spencer Chang <schang412@gmail.com> | 2023-02-13 09:56:14 -0800 |
commit | 497263d605afec2510a1ac63df2db094e0ab4a9c (patch) | |
tree | 763de588af86dfb2c66bf1f11697854df4863ef4 | |
parent | 1ba446f053d6fd9197c96b16ac1c18f4b9ecc954 (diff) | |
download | setuptools-scm-497263d605afec2510a1ac63df2db094e0ab4a9c.tar.gz |
combine try catch for EntryPoint with entry_points
-rw-r--r-- | src/setuptools_scm/_entrypoints.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/setuptools_scm/_entrypoints.py b/src/setuptools_scm/_entrypoints.py index 4f4ba8b..358a91f 100644 --- a/src/setuptools_scm/_entrypoints.py +++ b/src/setuptools_scm/_entrypoints.py @@ -46,9 +46,11 @@ def _version_from_entrypoints( try: from importlib.metadata import entry_points # type: ignore + from importlib.metadata import EntryPoint except ImportError: try: from importlib_metadata import entry_points + from importlib_metadata import EntryPoint except ImportError: from collections import defaultdict @@ -60,6 +62,11 @@ except ImportError: return defaultdict(list) + class EntryPoint: + def __init__(self, *args, **kwargs): + pass # entry_points() already provides the warning + + def iter_entry_points( group: str, name: str | None = None ) -> Iterator[_t.EntrypointProtocol]: @@ -85,10 +92,6 @@ def _get_ep(group: str, name: str) -> Any | None: def _get_from_object_reference_str(path: str) -> Any | None: try: - from importlib.metadata import EntryPoint - except ImportError: - from importlib_metadata import EntryPoint - try: return EntryPoint(path, path, None).load() except (AttributeError, ModuleNotFoundError): return None |