summaryrefslogtreecommitdiff
path: root/setuptools/command/upload_docs.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2013-06-19 15:11:01 -0500
committerJason R. Coombs <jaraco@jaraco.com>2013-06-19 15:11:01 -0500
commit1f98cb2880de5d716933ada52604044cbe5b3cbc (patch)
tree468d8b819af1ef8c90304ef65fba985b85487c1e /setuptools/command/upload_docs.py
parent48b0d2bfbd4aee6cc34ae6656d7c7033298f5ac0 (diff)
parent1c5400fd8216c101b7d120e1b079e46add869ade (diff)
downloadpython-setuptools-git-1f98cb2880de5d716933ada52604044cbe5b3cbc.tar.gz
Merged in vinay.sajip/setuptools/single-codebase (pull request #5)
Additional changes relating to single codebase support
Diffstat (limited to 'setuptools/command/upload_docs.py')
-rw-r--r--setuptools/command/upload_docs.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/setuptools/command/upload_docs.py b/setuptools/command/upload_docs.py
index a75c3b7e..12bc916b 100644
--- a/setuptools/command/upload_docs.py
+++ b/setuptools/command/upload_docs.py
@@ -23,15 +23,21 @@ try:
except ImportError:
from setuptools.command.upload import upload
-from setuptools.compat import httplib, urlparse
+from setuptools.compat import httplib, urlparse, unicode, iteritems
_IS_PYTHON3 = sys.version > '3'
+if _IS_PYTHON3:
+ errors = 'surrogateescape'
+else:
+ errors = 'strict'
+
+
# This is not just a replacement for byte literals
# but works as a general purpose encoder
def b(s, encoding='utf-8'):
if isinstance(s, unicode):
- return s.encode(encoding)
+ return s.encode(encoding, errors)
return s
@@ -127,7 +133,7 @@ class upload_docs(upload):
sep_boundary = b('\n--') + b(boundary)
end_boundary = sep_boundary + b('--')
body = []
- for key, values in data.iteritems():
+ for key, values in iteritems(data):
title = '\nContent-Disposition: form-data; name="%s"' % key
# handle multiple entries for the same name
if type(values) != type([]):