diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2018-03-17 14:23:38 -0400 |
---|---|---|
committer | Jason R. Coombs <jaraco@jaraco.com> | 2018-03-17 14:24:26 -0400 |
commit | 7dd1e4e68899f7f5543dabe81363b95ad907446c (patch) | |
tree | d4a4b8240fac2dc3cc9a6275b6cb1f82d89eb4b4 /pavement.py | |
parent | 929acc4e551448a68411968fb50336ad51ed4d3c (diff) | |
download | external_python_setuptools-7dd1e4e68899f7f5543dabe81363b95ad907446c.tar.gz external_python_setuptools-7dd1e4e68899f7f5543dabe81363b95ad907446c.tar.bz2 external_python_setuptools-7dd1e4e68899f7f5543dabe81363b95ad907446c.zip |
Extract common functionality into reusable functions
Diffstat (limited to 'pavement.py')
-rw-r--r-- | pavement.py | 43 |
1 files changed, 17 insertions, 26 deletions
diff --git a/pavement.py b/pavement.py index ca54e61f..84e5825d 100644 --- a/pavement.py +++ b/pavement.py @@ -25,6 +25,18 @@ def rewrite_packaging(pkg_files, new_root): file.write_text(text) +def clean(vendor): + """ + Remove all files out of the vendor directory except the meta + data (as pip uninstall doesn't support -t). + """ + remove_all( + path + for path in vendor.glob('*') + if path.basename() != 'vendored.txt' + ) + + def install(vendor): clean(vendor) install_args = [ @@ -35,37 +47,16 @@ def install(vendor): pip.main(install_args) remove_all(vendor.glob('*.dist-info')) remove_all(vendor.glob('*.egg-info')) + (vendor / '__init__.py').write_text('') + def update_pkg_resources(): vendor = Path('pkg_resources/_vendor') - # pip uninstall doesn't support -t, so do it manually - remove_all(vendor.glob('packaging*')) - remove_all(vendor.glob('six*')) - remove_all(vendor.glob('pyparsing*')) - remove_all(vendor.glob('appdirs*')) - install_args = [ - 'install', - '-r', str(vendor / 'vendored.txt'), - '-t', str(vendor), - ] - pip.main(install_args) - rewrite_packaging(vendor / 'packaging', 'pkg_resources.extern.') - remove_all(vendor.glob('*.dist-info')) - remove_all(vendor.glob('*.egg-info')) + install(vendor) + rewrite_packaging(vendor / 'packaging', 'pkg_resources.extern') def update_setuptools(): vendor = Path('setuptools/_vendor') - # pip uninstall doesn't support -t, so do it manually - remove_all(vendor.glob('packaging*')) - remove_all(vendor.glob('six*')) - remove_all(vendor.glob('pyparsing*')) - install_args = [ - 'install', - '-r', str(vendor / 'vendored.txt'), - '-t', str(vendor), - ] - pip.main(install_args) + install(vendor) rewrite_packaging(vendor / 'packaging', 'setuptools.extern') - remove_all(vendor.glob('*.dist-info')) - remove_all(vendor.glob('*.egg-info')) |