diff options
| author | Jason R. Coombs <jaraco@jaraco.com> | 2017-11-09 20:16:07 -0500 |
|---|---|---|
| committer | Jason R. Coombs <jaraco@jaraco.com> | 2017-11-09 20:16:07 -0500 |
| commit | 76fefe982d4445248c1933030619eedc764e695b (patch) | |
| tree | de1507d2944422d2f75e716429c0d2fcae387035 /setuptools/command | |
| parent | a5add17b554709e6b808e85a9cdbb1785717d2d5 (diff) | |
| parent | ff9bc4902f32c331d917e8bae9136607e48c2738 (diff) | |
| download | python-setuptools-git-76fefe982d4445248c1933030619eedc764e695b.tar.gz | |
Merge branch 'master' into pr1145
Diffstat (limited to 'setuptools/command')
| -rw-r--r-- | setuptools/command/__init__.py | 1 | ||||
| -rwxr-xr-x | setuptools/command/develop.py | 4 | ||||
| -rw-r--r-- | setuptools/command/dist_info.py | 40 | ||||
| -rwxr-xr-x | setuptools/command/easy_install.py | 2 |
4 files changed, 45 insertions, 2 deletions
diff --git a/setuptools/command/__init__.py b/setuptools/command/__init__.py index c96d33c2..fe619e2e 100644 --- a/setuptools/command/__init__.py +++ b/setuptools/command/__init__.py @@ -3,6 +3,7 @@ __all__ = [ 'easy_install', 'egg_info', 'install', 'install_lib', 'rotate', 'saveopts', 'sdist', 'setopt', 'test', 'install_egg_info', 'install_scripts', 'register', 'bdist_wininst', 'upload_docs', 'upload', 'build_clib', + 'dist_info', ] from distutils.command.bdist import bdist diff --git a/setuptools/command/develop.py b/setuptools/command/develop.py index 85b23c60..959c932a 100755 --- a/setuptools/command/develop.py +++ b/setuptools/command/develop.py @@ -95,7 +95,9 @@ class develop(namespaces.DevelopInstaller, easy_install): path_to_setup = egg_base.replace(os.sep, '/').rstrip('/') if path_to_setup != os.curdir: path_to_setup = '../' * (path_to_setup.count('/') + 1) - resolved = normalize_path(os.path.join(install_dir, egg_path, path_to_setup)) + resolved = normalize_path( + os.path.join(install_dir, egg_path, path_to_setup) + ) if resolved != normalize_path(os.curdir): raise DistutilsOptionError( "Can't get a consistent path to setup script from" diff --git a/setuptools/command/dist_info.py b/setuptools/command/dist_info.py new file mode 100644 index 00000000..c6c6dacb --- /dev/null +++ b/setuptools/command/dist_info.py @@ -0,0 +1,40 @@ +""" +Create a dist_info directory +As defined in the wheel specification +""" + +import os +import shutil + +from distutils.core import Command +from distutils import log + + +class dist_info(Command): + + description = 'create a .dist-info directory' + + user_options = [ + ('egg-base=', 'e', "directory containing .egg-info directories" + " (default: top of the source tree)"), + ] + + def initialize_options(self): + self.egg_base = None + + def finalize_options(self): + pass + + def run(self): + egg_info = self.get_finalized_command('egg_info') + egg_info.run() + dist_info_dir = egg_info.egg_info[:-len('.egg-info')] + '.dist-info' + log.info("creating '{}'".format(os.path.abspath(dist_info_dir))) + + bdist_wheel = self.get_finalized_command('bdist_wheel') + bdist_wheel.egg2dist(egg_info.egg_info, dist_info_dir) + + if self.egg_base: + destination = os.path.join(self.egg_base, dist_info_dir) + log.info("creating '{}'".format(os.path.abspath(destination))) + shutil.move(dist_info_dir, destination) diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index 8fba7b41..71991efa 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -1817,7 +1817,7 @@ def _update_zipimporter_cache(normalized_path, cache, updater=None): # get/del patterns instead. For more detailed information see the # following links: # https://github.com/pypa/setuptools/issues/202#issuecomment-202913420 - # https://bitbucket.org/pypy/pypy/src/dd07756a34a41f674c0cacfbc8ae1d4cc9ea2ae4/pypy/module/zipimport/interp_zipimport.py#cl-99 + # http://bit.ly/2h9itJX old_entry = cache[p] del cache[p] new_entry = updater and updater(p, old_entry) |
