[Python-checkins] r69712 - in python/branches/py3k: Lib/distutils/command/sdist.py Lib/distutils/tests/test_sdist.py
tarek.ziade
python-checkins at python.org
Tue Feb 17 10:47:25 CET 2009
Author: tarek.ziade
Date: Tue Feb 17 10:47:25 2009
New Revision: 69712
Log:
Merged revisions 69710 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r69710 | tarek.ziade | 2009-02-17 10:42:44 +0100 (Tue, 17 Feb 2009) | 1 line
#2279 added the plain path case for data_files
........
Modified:
python/branches/py3k/ (props changed)
python/branches/py3k/Lib/distutils/command/sdist.py
python/branches/py3k/Lib/distutils/tests/test_sdist.py
Modified: python/branches/py3k/Lib/distutils/command/sdist.py
==============================================================================
--- python/branches/py3k/Lib/distutils/command/sdist.py (original)
+++ python/branches/py3k/Lib/distutils/command/sdist.py Tue Feb 17 10:47:25 2009
@@ -15,7 +15,7 @@
from distutils.errors import *
from distutils.filelist import FileList
from distutils import log
-
+from distutils.util import convert_path
def show_formats ():
"""Print all possible values for the 'formats' option (used by
@@ -303,9 +303,17 @@
# getting distribution.data_files
if self.distribution.has_data_files():
- for dirname, filenames in self.distribution.data_files:
- for filename in filenames:
- self.filelist.append(os.path.join(dirname, filename))
+ for item in self.distribution.data_files:
+ if isinstance(item, str): # plain file
+ item = convert_path(item)
+ if os.path.isfile(item):
+ self.filelist.append(item)
+ else: # a (dirname, filenames) tuple
+ dirname, filenames = item
+ for f in filenames:
+ f = convert_path(os.path.join(dirname, f))
+ if os.path.isfile(f):
+ self.filelist.append(f)
if self.distribution.has_ext_modules():
build_ext = self.get_finalized_command('build_ext')
Modified: python/branches/py3k/Lib/distutils/tests/test_sdist.py
==============================================================================
--- python/branches/py3k/Lib/distutils/tests/test_sdist.py (original)
+++ python/branches/py3k/Lib/distutils/tests/test_sdist.py Tue Feb 17 10:47:25 2009
@@ -26,6 +26,8 @@
setup.py
data%(sep)sdata.dt
scripts%(sep)sscript.py
+some%(sep)sfile.txt
+some%(sep)sother_file.txt
somecode%(sep)s__init__.py
somecode%(sep)sdoc.dat
somecode%(sep)sdoc.txt
@@ -167,7 +169,14 @@
data_dir = join(self.tmp_dir, 'data')
os.mkdir(data_dir)
self.write_file((data_dir, 'data.dt'), '#')
- dist.data_files = [('data', ['data.dt'])]
+ some_dir = join(self.tmp_dir, 'some')
+ os.mkdir(some_dir)
+ self.write_file((some_dir, 'file.txt'), '#')
+ self.write_file((some_dir, 'other_file.txt'), '#')
+
+ dist.data_files = [('data', ['data.dt', 'notexisting']),
+ 'some/file.txt',
+ 'some/other_file.txt']
# adding a script
script_dir = join(self.tmp_dir, 'scripts')
@@ -175,7 +184,6 @@
self.write_file((script_dir, 'script.py'), '#')
dist.scripts = [join('scripts', 'script.py')]
-
cmd.formats = ['zip']
cmd.use_defaults = True
@@ -194,7 +202,7 @@
zip_file.close()
# making sure everything was added
- self.assertEquals(len(content), 8)
+ self.assertEquals(len(content), 10)
# checking the MANIFEST
manifest = open(join(self.tmp_dir, 'MANIFEST')).read()
More information about the Python-checkins
mailing list