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/command/upload_docs.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/command/upload_docs.py')
| -rw-r--r-- | distutils2/command/upload_docs.py | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/distutils2/command/upload_docs.py b/distutils2/command/upload_docs.py index 7f3523f..2f813d3 100644 --- a/distutils2/command/upload_docs.py +++ b/distutils2/command/upload_docs.py @@ -1,6 +1,6 @@ """Upload HTML documentation to a project index.""" -import os, sys +import os import base64 import socket import zipfile @@ -11,7 +11,7 @@ from StringIO import StringIO from distutils2 import logger from distutils2.util import (read_pypirc, DEFAULT_REPOSITORY, DEFAULT_REALM, - encode_multipart) + encode_multipart) from distutils2.errors import PackagingFileError from distutils2.command.cmd import Command @@ -20,13 +20,15 @@ def zip_dir(directory): """Compresses recursively contents of directory into a BytesIO object""" destination = StringIO() zip_file = zipfile.ZipFile(destination, "w") - for root, dirs, files in os.walk(directory): - for name in files: - full = os.path.join(root, name) - relative = root[len(directory):].lstrip(os.path.sep) - dest = os.path.join(relative, name) - zip_file.write(full, dest) - zip_file.close() + try: + for root, dirs, files in os.walk(directory): + for name in files: + full = os.path.join(root, name) + relative = root[len(directory):].lstrip(os.path.sep) + dest = os.path.join(relative, name) + zip_file.write(full, dest) + finally: + zip_file.close() return destination @@ -88,7 +90,8 @@ class upload_docs(Command): content_type, body = encode_multipart(fields, files) credentials = self.username + ':' + self.password - auth = "Basic " + base64.encodebytes(credentials.encode()).strip() + # FIXME should use explicit encoding + auth = "Basic " + base64.encodestring(credentials.encode()).strip() logger.info("Submitting documentation to %s", self.repository) @@ -110,8 +113,8 @@ class upload_docs(Command): conn.endheaders() conn.send(body) - except socket.error: - logger.error(sys.exc_info()[1]) + except socket.error, e: + logger.error(e) return r = conn.getresponse() |
