diff options
| author | ?ric Araujo <merwok@netwok.org> | 2011-09-18 20:20:13 +0200 |
|---|---|---|
| committer | ?ric Araujo <merwok@netwok.org> | 2011-09-18 20:20:13 +0200 |
| commit | 506cfea8bbd41e865bc36a836bdbc05aae8d74bb (patch) | |
| tree | 3bae418473347324060850aab8d34e162b33ecc9 /distutils2/manifest.py | |
| parent | 8c928044705a70bb845cb45f76edb6eb71393866 (diff) | |
| download | disutils2-506cfea8bbd41e865bc36a836bdbc05aae8d74bb.tar.gz | |
Fix the backport fixes.
Backports:
- sysconfig is now always imported from our backports
- when hashlib is not found, our backport is used instead of the md5
module (debatable; we could just drop hashlib)
Version-dependent features:
- PEP 370 features are only enabled for 2.6+
- the check for sys.dont_write_bytecode was fixed to use getattr
with a default value instead of hasattr
Idioms/syntax:
- octal literals lost their extra 0
- misused try/except blocks have been changed back to try/finally
(it?s legal in 2.4 too, it?s only try/except/finally that isn?t)
- exception catching uses the regular 2.x idiom instead of sys.exc_info
- file objects are closed within finally blocks (this causes much
whitespace changes but actually makes diff with packaging easier)
Renamed modules:
- some missed renamings (_thread, Queue, isAlive, urllib.urlsplit, etc.)
were fixed
Other:
- a few false positive replacements of ?packaging? by ?distutils2? in
comments or docstrings were reverted
- util.is_packaging regained its name
- assorted whitespace/comment/import changes to match packaging
Diffstat (limited to 'distutils2/manifest.py')
| -rw-r--r-- | distutils2/manifest.py | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/distutils2/manifest.py b/distutils2/manifest.py index 0bf0c72..9a8327b 100644 --- a/distutils2/manifest.py +++ b/distutils2/manifest.py @@ -8,13 +8,12 @@ The Manifest class can be used to: # XXX todo: document + add tests import re import os -import sys import fnmatch from distutils2 import logger from distutils2.util import write_file, convert_path from distutils2.errors import (PackagingTemplateError, - PackagingInternalError) + PackagingInternalError) __all__ = ['Manifest'] @@ -90,8 +89,8 @@ class Manifest(object): continue try: self._process_template_line(line) - except PackagingTemplateError: - logger.warning("%s, %s", path_or_file, sys.exc_info()[1]) + except PackagingTemplateError, msg: + logger.warning("%s, %s", path_or_file, msg) def write(self, path): """Write the file list in 'self.filelist' (presumably as filled in @@ -100,8 +99,10 @@ class Manifest(object): """ if os.path.isfile(path): fp = open(path) - first_line = fp.readline() - fp.close() + try: + first_line = fp.readline() + finally: + fp.close() if first_line != '# file GENERATED by distutils2, do NOT edit\n': logger.info("not writing to manually maintained " @@ -122,9 +123,11 @@ class Manifest(object): """ logger.info("reading manifest file %r", path) manifest = open(path) - for line in manifest.readlines(): - self.append(line) - manifest.close() + try: + for line in manifest.readlines(): + self.append(line) + finally: + manifest.close() def exclude_pattern(self, pattern, anchor=True, prefix=None, is_regex=False): |
