Skip to content

Commit e99302b

Browse files
committed
Rework parts of import_tools to work around changes to importlib_metadata's API
1 parent 2e54704 commit e99302b

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

domdf_python_tools/import_tools.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
import importlib.machinery
4949
import importlib.util
5050
import inspect
51+
import itertools
5152
import pkgutil
5253
from types import ModuleType
5354
from typing import Any, Callable, Dict, Iterator, List, Optional, Type, overload
@@ -214,7 +215,11 @@ def discover_entry_points_by_name(
214215

215216
matching_objects = {}
216217

217-
for entry_point in importlib_metadata.entry_points().get(group_name, ()):
218+
eps = itertools.chain.from_iterable(dist.entry_points for dist in importlib_metadata.distributions())
219+
220+
for entry_point in eps:
221+
if entry_point.group != group_name:
222+
continue
218223

219224
if name_match_func is not None and not name_match_func(entry_point.name):
220225
continue

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
importlib-metadata<3.5.0,>=1.5.0; python_version < "3.9"
1+
importlib-metadata>=1.5.0; python_version < "3.9"
22
importlib-resources>=3.0.0; python_version < "3.7"
33
natsort>=7.1.0
44
pydash>=4.7.4

tests/test_import_tools.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
# 3rd party
77
import pytest
8-
from coincidence import AdvancedDataRegressionFixture
98
from pytest_regressions.data_regression import DataRegressionFixture
109

1110
# this package

0 commit comments

Comments
 (0)