File tree 2 files changed +13
-3
lines changed
src/virtualenv/run/plugin
2 files changed +13
-3
lines changed Original file line number Diff line number Diff line change @@ -40,7 +40,6 @@ project_urls =
40
40
[options]
41
41
packages = find:
42
42
install_requires =
43
- backports.entry-points-selectable>=1.0.4
44
43
distlib>=0.3.1,<1
45
44
filelock>=3.2,<4
46
45
platformdirs>=2,<3
Original file line number Diff line number Diff line change 1
1
from __future__ import absolute_import , unicode_literals
2
2
3
+ import sys
3
4
from collections import OrderedDict
4
5
5
- from backports .entry_points_selectable import entry_points
6
+ if sys .version_info >= (3 , 8 ):
7
+ from importlib .metadata import entry_points
8
+
9
+ importlib_metadata_version = tuple ()
10
+ else :
11
+ from importlib_metadata import entry_points , version
12
+
13
+ importlib_metadata_version = tuple (int (i ) for i in version ("importlib_metadata" ).split ("." )[:2 ])
6
14
7
15
8
16
class PluginLoader (object ):
@@ -11,7 +19,10 @@ class PluginLoader(object):
11
19
12
20
@classmethod
13
21
def entry_points_for (cls , key ):
14
- return OrderedDict ((e .name , e .load ()) for e in cls .entry_points ().select (group = key ))
22
+ if sys .version_info >= (3 , 10 ) or importlib_metadata_version >= (3 , 6 ):
23
+ return OrderedDict ((e .name , e .load ()) for e in cls .entry_points ().select (group = key ))
24
+ else :
25
+ return OrderedDict ((e .name , e .load ()) for e in cls .entry_points ().get (key , {}))
15
26
16
27
@staticmethod
17
28
def entry_points ():
You can’t perform that action at this time.
0 commit comments