Skip to content

Commit f76affe

Browse files
committed
Orange/widgets: Replace use of pkg_resources
1 parent daffaba commit f76affe

File tree

4 files changed

+19
-18
lines changed

4 files changed

+19
-18
lines changed

Orange/widgets/__init__.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,16 @@
44
import os
55
import sysconfig
66

7-
import pkg_resources
8-
97
from orangecanvas.registry import CategoryDescription
108
from orangecanvas.registry.utils import category_from_package_globals
9+
from orangecanvas.utils.pkgmeta import get_distribution
1110
import orangewidget.workflow.discovery
1211

1312

1413
# Entry point for main Orange categories/widgets discovery
1514
def widget_discovery(discovery):
1615
# type: (orangewidget.workflow.discovery.WidgetDiscovery) -> None
17-
dist = pkg_resources.get_distribution("Orange3")
16+
dist = get_distribution("Orange3")
1817
pkgs = [
1918
"Orange.widgets.data",
2019
"Orange.widgets.visualize",

Orange/widgets/data/owpreprocess.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from collections import OrderedDict
2-
import pkg_resources
2+
import importlib.resources
33

44
import numpy
55

@@ -993,7 +993,8 @@ def __init__(self, name, qualname, category, description, viewclass):
993993

994994

995995
def icon_path(basename):
996-
return pkg_resources.resource_filename(__name__, "icons/" + basename)
996+
path = importlib.resources.files(__package__).joinpath("icons/" + basename)
997+
return str(path)
997998

998999

9991000
PREPROCESS_ACTIONS = [

Orange/widgets/evaluate/tests/test_owliftcurve.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
# pylint: disable=protected-access,duplicate-code
22
import copy
3-
import pkg_resources
43
import unittest
54
from unittest.mock import Mock
65

6+
from packaging.version import Version
7+
78
import numpy as np
89
import sklearn
910

@@ -26,8 +27,7 @@
2627
# scikit-learn==1.1.1 does not support read the docs, therefore
2728
# we can not make it a requirement for now. When the minimum required
2829
# version is >=1.1.1, delete these exceptions.
29-
OK_SKLEARN = pkg_resources.parse_version(sklearn.__version__) >= \
30-
pkg_resources.parse_version("1.1.1")
30+
OK_SKLEARN = Version(sklearn.__version__) >= Version("1.1.1")
3131
SKIP_REASON = "Only test precision-recall with scikit-learn>=1.1.1"
3232

3333

Orange/widgets/tests/test_workflows.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@
22
from os import listdir, environ
33
from os.path import isfile, join, dirname
44
import unittest
5-
import pkg_resources
5+
from unittest import mock
66

77
from AnyQt.QtTest import QTest
88

99
from orangecanvas.registry import WidgetRegistry
10+
from orangecanvas.config import EntryPoint
1011
from orangewidget.workflow import widgetsscheme
1112

1213
from Orange.canvas.config import Config
@@ -63,17 +64,17 @@ def test_scheme_examples(self):
6364
QTest.qWait(0)
6465

6566
def test_examples_order(self):
66-
# register test entrypoints
67-
dist_orange = pkg_resources.working_set.by_key['orange3']
68-
ep_map = dist_orange.get_entry_map()
69-
ep_first = pkg_resources.EntryPoint('!Testname', 'orangecontrib.any_addon.tutorials')
70-
ep_last = pkg_resources.EntryPoint('exampletutorials', 'orangecontrib.other_addon.tutorials')
71-
ep_map['orange.widgets.tutorials'] = {ep_first.name: ep_first, ep_last.name: ep_last}
67+
ep_first = EntryPoint(
68+
'!Testname', 'orangecontrib.any_addon.tutorials', '')
69+
ep_last = EntryPoint(
70+
'exampletutorials', 'orangecontrib.other_addon.tutorials', '')
7271

73-
ep_names = [point.name for point in Config.examples_entry_points()]
72+
def entry_points(*_, **__):
73+
return ep_first, ep_last
74+
75+
with mock.patch("Orange.canvas.config.entry_points", entry_points):
76+
ep_names = [point.name for point in Config.examples_entry_points()]
7477
self.assertLess(ep_names.index(ep_first.name),
7578
ep_names.index("000-Orange3"))
7679
self.assertLess(ep_names.index("000-Orange3"),
7780
ep_names.index(ep_last.name))
78-
79-
del ep_map['orange.widgets.tutorials']

0 commit comments

Comments
 (0)