summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2022-02-06 10:08:21 -0500
committerJason R. Coombs <jaraco@jaraco.com>2022-02-06 11:10:29 -0500
commit988bf129164b8d46985c4d8b150086eedd95e37d (patch)
tree70622383eb8f0c2dd8a1d70bcfae168a0dead3b1 /tools
parent2d6cc80fae6d17455a124391eab39eb4eddfee2f (diff)
downloadpython-setuptools-git-988bf129164b8d46985c4d8b150086eedd95e37d.tar.gz
Update vendoring for importlib_metadata to support vendored dependencies typing_extensions and zipp.
Diffstat (limited to 'tools')
-rw-r--r--tools/vendored.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/vendored.py b/tools/vendored.py
index 57e28d53..74478902 100644
--- a/tools/vendored.py
+++ b/tools/vendored.py
@@ -64,6 +64,16 @@ def rewrite_importlib_resources(pkg_files, new_root):
file.write_text(text)
+def rewrite_importlib_metadata(pkg_files, new_root):
+ """
+ Rewrite imports in importlib_metadata to redirect to vendored copies.
+ """
+ for file in pkg_files.glob('*.py'):
+ text = file.read_text().replace('typing_extensions', '..typing_extensions')
+ text = text.replace('import zipp', 'from .. import zipp')
+ file.write_text(text)
+
+
def clean(vendor):
"""
Remove all files out of the vendor directory except the meta
@@ -105,6 +115,7 @@ def update_setuptools():
rewrite_jaraco_text(vendor / 'jaraco/text', 'setuptools.extern')
rewrite_jaraco(vendor / 'jaraco', 'setuptools.extern')
rewrite_importlib_resources(vendor / 'importlib_resources', 'setuptools.extern')
+ rewrite_importlib_metadata(vendor / 'importlib_metadata', 'setuptools.extern')
__name__ == '__main__' and update_vendored()