diff options
author | PJ Eby <distutils-sig@python.org> | 2005-08-21 23:33:40 +0000 |
---|---|---|
committer | PJ Eby <distutils-sig@python.org> | 2005-08-21 23:33:40 +0000 |
commit | 040f032a1f39038ed3209712b468c356c34a5df5 (patch) | |
tree | 11f9fcaea20998fc98e2560f0613873be4e7859d /setuptools | |
parent | e00f4a87ad767db9ff358ffc773365d5929345fa (diff) | |
download | external_python_setuptools-040f032a1f39038ed3209712b468c356c34a5df5.tar.gz external_python_setuptools-040f032a1f39038ed3209712b468c356c34a5df5.tar.bz2 external_python_setuptools-040f032a1f39038ed3209712b468c356c34a5df5.zip |
Fix problem w/bdist_rpm and setuptools, reported by Walter Doerwald. I
was trying to have setuptools fix distutils' broken filename handling that
assumes people haven't put punctuation in their distribution names,
including '-' (which prevents unambiguous parsing of distribution names).
However, bdist_rpm's attempt to guess a source distribution's filename
isn't compatible with this fix, without making other changes. I decided
therefore to drop the fixes for the sake of backward compatibility, but
monkeypatch bdist_rpm so that it runs "egg_info" first, to ensure that any
--tag-svn-revision or other tagging options take effect.
--HG--
branch : setuptools
extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/trunk/setuptools%4041215
Diffstat (limited to 'setuptools')
-rw-r--r-- | setuptools/command/__init__.py | 2 | ||||
-rwxr-xr-x | setuptools/command/bdist_rpm.py | 11 | ||||
-rwxr-xr-x | setuptools/command/egg_info.py | 12 |
3 files changed, 18 insertions, 7 deletions
diff --git a/setuptools/command/__init__.py b/setuptools/command/__init__.py index 720b7a3f..7294d55c 100644 --- a/setuptools/command/__init__.py +++ b/setuptools/command/__init__.py @@ -1,5 +1,5 @@ __all__ = [ - 'alias', 'bdist_egg', 'build_ext', 'build_py', 'develop', + 'alias', 'bdist_egg', 'bdist_rpm', 'build_ext', 'build_py', 'develop', 'easy_install', 'egg_info', 'install', 'install_lib', 'rotate', 'saveopts', 'sdist', 'setopt', 'test', 'upload', ] diff --git a/setuptools/command/bdist_rpm.py b/setuptools/command/bdist_rpm.py new file mode 100755 index 00000000..004419ce --- /dev/null +++ b/setuptools/command/bdist_rpm.py @@ -0,0 +1,11 @@ +# This is just a kludge so that bdist_rpm doesn't guess wrong about the +# distribution name and version, if the egg_info command is going to alter them + +from distutils.command.bdist_rpm import bdist_rpm as _bdist_rpm + +class bdist_rpm(_bdist_rpm): + + def run(self): + self.run_command('egg_info') # ensure distro name is up-to-date + _bdist_rpm.run(self) + diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py index 8bfc8d42..2c9a953e 100755 --- a/setuptools/command/egg_info.py +++ b/setuptools/command/egg_info.py @@ -60,13 +60,13 @@ class egg_info(Command): self.ensure_dirname('egg_base') self.egg_info = os.path.join(self.egg_base, self.egg_name+'.egg-info') - # Set package version and name for the benefit of dumber commands - # (e.g. sdist, bdist_wininst, etc.) We escape '-' so filenames will - # be more machine-parseable. + # Set package version for the benefit of dumber commands + # (e.g. sdist, bdist_wininst, etc.) # - metadata = self.distribution.metadata - metadata.version = self.egg_version.replace('-','_') - metadata.name = self.egg_name.replace('-','_') + self.distribution.metadata.version = self.egg_version + + + |