File tree 2 files changed +24
-0
lines changed
2 files changed +24
-0
lines changed Original file line number Diff line number Diff line change
1
+ Prevent vendored importlib_metadata from loading distributions from older importlib_metadata.
Original file line number Diff line number Diff line change 1
1
import sys
2
2
3
3
4
+ def disable_importlib_metadata_finder (metadata ):
5
+ """
6
+ Ensure importlib_metadata doesn't provide older, incompatible
7
+ Distributions.
8
+
9
+ Workaround for #3102.
10
+ """
11
+ try :
12
+ import importlib_metadata
13
+ except ImportError :
14
+ return
15
+ if importlib_metadata is metadata :
16
+ return
17
+ to_remove = [
18
+ ob
19
+ for ob in sys .meta_path
20
+ if isinstance (ob , importlib_metadata .MetadataPathFinder )
21
+ ]
22
+ for item in to_remove :
23
+ sys .meta_path .remove (item )
24
+
25
+
4
26
if sys .version_info < (3 , 10 ):
5
27
from setuptools .extern import importlib_metadata as metadata
28
+ disable_importlib_metadata_finder (metadata )
6
29
else :
7
30
import importlib .metadata as metadata # noqa: F401
8
31
You can’t perform that action at this time.
0 commit comments