diff options
author | Stefan H. Holek <stefan@epy.co.at> | 2012-10-08 19:52:32 +0200 |
---|---|---|
committer | Stefan H. Holek <stefan@epy.co.at> | 2012-10-08 19:52:32 +0200 |
commit | d76ec4bfdf2fe9a2bced5ca2a3610831020453c6 (patch) | |
tree | 77ab3132075646f1755d5c72cd9e95087651dc57 /setuptools/command/sdist.py | |
parent | 6851d4e38e1e4e5a2bbbf2556523fd19675cdbf7 (diff) | |
download | external_python_setuptools-d76ec4bfdf2fe9a2bced5ca2a3610831020453c6.tar.gz external_python_setuptools-d76ec4bfdf2fe9a2bced5ca2a3610831020453c6.tar.bz2 external_python_setuptools-d76ec4bfdf2fe9a2bced5ca2a3610831020453c6.zip |
Read and write manifest in UTF-8 under Python 3. Fixes #303.
--HG--
branch : distribute
extra : rebase_source : 609c654effd2711aa803f6a0e84013294026608f
Diffstat (limited to 'setuptools/command/sdist.py')
-rwxr-xr-x | setuptools/command/sdist.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/setuptools/command/sdist.py b/setuptools/command/sdist.py index a176f635..d5259c2b 100755 --- a/setuptools/command/sdist.py +++ b/setuptools/command/sdist.py @@ -262,7 +262,34 @@ class sdist(_sdist): self.get_finalized_command('egg_info').save_version_info(dest) + def _manifest_is_not_generated(self): + # check for special comment used in 2.7.1 and higher + if not os.path.isfile(self.manifest): + return False + fp = open(self.manifest, 'rbU') + try: + first_line = fp.readline() + finally: + fp.close() + return first_line != '# file GENERATED by distutils, do NOT edit\n'.encode() + + def read_manifest(self): + """Read the manifest file (named by 'self.manifest') and use it to + fill in 'self.filelist', the list of files to include in the source + distribution. + """ + log.info("reading manifest file '%s'", self.manifest) + manifest = open(self.manifest, 'rbU') + for line in manifest: + if sys.version_info >= (3,): + line = line.decode('UTF-8') + # ignore comments and blank lines + line = line.strip() + if line.startswith('#') or not line: + continue + self.filelist.append(line) + manifest.close() |