Merging the py3k-pep3137 branch back into the py3k branch.
No detailed change log; just check out the change log for the py3k-pep3137
branch. The most obvious changes:
- str8 renamed to bytes (PyString at the C level);
- bytes renamed to buffer (PyBytes at the C level);
- PyString and PyUnicode are no longer compatible.
I.e. we now have an immutable bytes type and a mutable bytes type.
The behavior of PyString was modified quite a bit, to make it more
bytes-like. Some changes are still on the to-do list.
diff --git a/Lib/mailbox.py b/Lib/mailbox.py
index a37bec9..13e3eb7 100755
--- a/Lib/mailbox.py
+++ b/Lib/mailbox.py
@@ -333,7 +333,7 @@
def get_file(self, key):
"""Return a file-like representation or raise a KeyError."""
- f = open(os.path.join(self._path, self._lookup(key)), 'rb')
+ f = open(os.path.join(self._path, self._lookup(key)), 'r')
return _ProxyFile(f)
def iterkeys(self):
@@ -936,7 +936,7 @@
def get_file(self, key):
"""Return a file-like representation or raise a KeyError."""
try:
- f = open(os.path.join(self._path, str(key)), 'rb')
+ f = open(os.path.join(self._path, str(key)), 'r')
except IOError as e:
if e.errno == errno.ENOENT:
raise KeyError('No message with key: %s' % key)
@@ -1762,11 +1762,11 @@
def read(self, size=None):
"""Read bytes."""
- return str(self._read(size, self._file.read))
+ return self._read(size, self._file.read)
def readline(self, size=None):
"""Read a line."""
- return str(self._read(size, self._file.readline))
+ return self._read(size, self._file.readline)
def readlines(self, sizehint=None):
"""Read multiple lines."""