diff options
| author | Jason R. Coombs <jaraco@jaraco.com> | 2022-01-23 22:36:13 -0500 |
|---|---|---|
| committer | Jason R. Coombs <jaraco@jaraco.com> | 2022-01-29 21:18:18 -0500 |
| commit | b4f1bf1cb8b3285d0620b27f316d7e83470f7d68 (patch) | |
| tree | e6c789c9abdfff94720776ae3c0dd088cc1cf192 /tools | |
| parent | fb4a1f79f497920c3aa5b95cdfba134cc72e1dfd (diff) | |
| download | python-setuptools-git-b4f1bf1cb8b3285d0620b27f316d7e83470f7d68.tar.gz | |
Include all the dependencies needed to run on Python 3.7 and patch all of them to work in a vendored environment.
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/vendored.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tools/vendored.py b/tools/vendored.py index ee34dc0f..a5f3b9f1 100644 --- a/tools/vendored.py +++ b/tools/vendored.py @@ -29,6 +29,37 @@ def rewrite_packaging(pkg_files, new_root): file.write_text(text) +def rewrite_jaraco_text(pkg_files, new_root): + """ + Rewrite imports in jaraco.text to redirect to vendored copies. + """ + for file in pkg_files.glob('*.py'): + text = file.read_text() + text = re.sub(r' (jaraco\.)', rf' {new_root}.\1', text) + text = re.sub(r' (importlib_resources)', rf' {new_root}.\1', text) + file.write_text(text) + + +def rewrite_jaraco(pkg_files, new_root): + """ + Rewrite imports in jaraco.functools to redirect to vendored copies. + """ + for file in pkg_files.glob('*.py'): + text = file.read_text() + text = re.sub(r' (more_itertools)', rf' {new_root}.\1', text) + file.write_text(text) + + +def rewrite_importlib_resources(pkg_files, new_root): + """ + Rewrite imports in importlib_resources to redirect to vendored copies. + """ + for file in pkg_files.glob('*.py'): + text = file.read_text().replace('importlib_resources.abc', '.abc') + text = text.replace('zipp', '..zipp') + file.write_text(text) + + def clean(vendor): """ Remove all files out of the vendor directory except the meta @@ -58,6 +89,9 @@ def update_pkg_resources(): vendor = Path('pkg_resources/_vendor') install(vendor) rewrite_packaging(vendor / 'packaging', 'pkg_resources.extern') + rewrite_jaraco_text(vendor / 'jaraco/text', 'pkg_resources.extern') + rewrite_jaraco(vendor / 'jaraco', 'pkg_resources.extern') + rewrite_importlib_resources(vendor / 'importlib_resources', 'pkg_resources.extern') def update_setuptools(): |
