cpython/Lib
R. David Murray b7deff1ddc #9124: mailbox now accepts binary input and uses binary internally
Although this patch contains API changes and is rather weighty for an
RC phase, the mailbox module was essentially unusable without the patch
since it would produce UnicodeErrors when handling non-ascii input
at arbitrary and somewhat mysterious places, and any non-trivial amount
of email processing will encounter messages with non-ascii bytes.
The release manager approved the patch application.

The changes allow binary input, and reject non-ASCII string input early
with a useful message instead of failing mysteriously later.  Binary
is used internally for reading and writing the mailbox files.  StringIO
and Text file input are deprecated.

Initial patch by Victor Stinner, validated and expanded by R. David Murray.
2011-01-30 06:21:28 +00:00
..
concurrent Issue #10798: Reject supporting concurrent.futures if the system has 2011-01-03 00:07:01 +00:00
ctypes #9424: Replace deprecated assert* methods in the Python test suite. 2010-11-20 19:04:17 +00:00
curses #8861: remove unused variable. 2010-08-02 19:44:48 +00:00
dbm #6045: provide at least get() and setdefault() for all dbm modules. 2010-12-04 09:14:36 +00:00
distutils Bump to 3.2rc1. 2011-01-15 17:08:53 +00:00
email #11019: Make BytesGenerator handle Message with None body. 2011-01-26 21:21:32 +00:00
encodings Issue #10807: Remove base64, bz2, hex, quopri, rot13, uu and zlib codecs from 2011-01-02 19:50:36 +00:00
html Fix Issue10759 - html.parser.unescape() fails on HTML entities with incorrect syntax 2010-12-28 15:55:16 +00:00
http #10983: fix several bugs in the _tunnel implementation that seem to have missed while porting between branches. A unittest is needed! 2011-01-22 22:06:24 +00:00
idlelib Issue 11052: Correct IDLE menu accelerators on Mac OS X for Save 2011-01-29 19:10:26 +00:00
importlib Issue 10899: Remove function type annotations from the stdlib 2011-01-13 19:08:04 +00:00
json Fix JSON docs about loads() accepting only str objects, not bytes. 2011-01-21 21:37:32 +00:00
lib2to3 Merged revisions 85551,86156-86157,86464 via svnmerge from 2010-12-03 23:11:07 +00:00
logging Issue #10949: Improved robustness of rotating file handlers. 2011-01-21 23:35:57 +00:00
msilib remove pointless coding cookies 2010-08-30 14:05:50 +00:00
multiprocessing Issue #10845: Improve compatibility between multiprocessing on Windows and package, zipfile and directory execution (Reviewed by Antoine Pitrou and approved by Georg Brandl) 2011-01-30 01:24:08 +00:00
plat-aix4
plat-darwin
plat-freebsd4
plat-freebsd5
plat-freebsd6
plat-freebsd7
plat-freebsd8
plat-generic
plat-linux2
plat-netbsd1
plat-next3
plat-os2emx
plat-sunos5
plat-unixware7
pydoc_data Update pydoc topics. 2011-01-15 16:44:11 +00:00
site-packages
sqlite3 #9424: Replace deprecated assert* methods in the Python test suite. 2010-11-20 19:04:17 +00:00
test #9124: mailbox now accepts binary input and uses binary internally 2011-01-30 06:21:28 +00:00
tkinter test_tkinter: use a context manager to close directly the pipe 2011-01-03 14:30:43 +00:00
turtledemo Add the missing __main__.py in the turtledemo package. It seems to have been lost during some mass rename action (r86095). 2010-12-30 22:31:10 +00:00
unittest Issue 10573: revert unittest docs to first / second 2011-01-28 19:51:48 +00:00
urllib Add encoding and errors arguments to urllib.parse_qs() and urllib.parse_qsl() 2011-01-14 12:52:12 +00:00
wsgiref Issue #3839: wsgiref should not override a Content-Length header set by 2011-01-06 17:17:04 +00:00
xml #10777: fix iteration over dict keys while mutating the dict. 2010-12-28 10:38:33 +00:00
xmlrpc Fix Issue8194 - Fix incompatible API change in the parse_respones for xmlrpclib. 2010-12-08 08:04:49 +00:00
__future__.py
__phello__.foo.py
_abcoll.py Remove function annotations that slipped into _abcoll. 2011-01-12 20:37:47 +00:00
_compat_pickle.py
_dummy_thread.py Fix bootstrap issues when building without threads 2010-11-05 19:58:28 +00:00
_markupbase.py Take advantage of the frozenset constant optimization. 2010-09-05 23:15:06 +00:00
_pyio.py Issue #10899: Move function type annotations into docstrings. 2011-01-13 18:15:51 +00:00
_strptime.py PEP 8 conformance: class_ -> cls 2010-07-14 13:46:57 +00:00
_threading_local.py Issue #9707: Rewritten reference implementation of threading.local which 2010-09-07 22:06:17 +00:00
_weakrefset.py #10360: catch TypeError in WeakSet.__contains__, just like WeakKeyDictionary does. 2010-12-03 07:55:44 +00:00
abc.py add support for abstract class and static methods #5867 2010-08-17 00:52:52 +00:00
aifc.py
antigravity.py
argparse.py Issue #9509: make argarse properly handle IOErrors raised by argparse.FileType. Approved by Georg in the tracker. 2011-01-24 21:02:50 +00:00
ast.py Issue #11000 ast.parse parses source, not just expressions. 2011-01-24 21:36:03 +00:00
asynchat.py
asyncore.py Fix issue 6706: adds new handle_accepted() method to asyncore.dispatcher 2010-10-04 21:08:36 +00:00
base64.py #1466065: add validate option to base64.b64decode 2010-11-11 20:09:20 +00:00
bdb.py Issue #10492: bdb.Bdb.run() only traces the execution of the code 2011-01-06 00:49:38 +00:00
binhex.py
bisect.py
cProfile.py #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. 2010-08-02 12:20:23 +00:00
calendar.py #10092: Properly reset locale in Locale*Calendar classes. The context manager was buggy because setlocale() returns the *new* locale, not the old. Also add a test for this. 2010-10-19 18:54:25 +00:00
cgi.py cgi: use isinstance(x, list) instead of type(x) == type([]) 2011-01-14 13:08:27 +00:00
cgitb.py
chunk.py
cmd.py Add docstring to cmd.Cmd.do_help() 2010-09-09 03:53:22 +00:00
code.py
codecs.py #7475: add (un)transform method to bytes/bytearray and str, add back codecs that can be used with them from Python 2. 2010-12-02 18:06:51 +00:00
codeop.py
collections.py Supply a reduce method for pickling. 2011-01-03 02:44:14 +00:00
colorsys.py
compileall.py Nits: use a real boolean, make one docstring more similar to the other ones 2010-12-23 18:44:31 +00:00
configparser.py 100% test coverage, better mapping protocol compatibility, some minor bugfixes 2010-12-17 21:56:32 +00:00
contextlib.py Issue #10859: Make `contextlib.GeneratorContextManager` officially 2011-01-08 09:55:31 +00:00
copy.py Fix running the copy module from the command-line (however use{ful,less} it may be). 2010-09-04 17:46:44 +00:00
copyreg.py
csv.py #5975: add unix_dialect to csv module. 2010-10-27 07:27:06 +00:00
datetime.py Issue #1777412: extended year range of strftime down to 1000. 2011-01-08 00:13:34 +00:00
decimal.py Add link to specification. 2010-11-30 20:32:59 +00:00
difflib.py Issue 10534, difflib: tweak doc; test new SequenceMatcher instance attributes; avoid unneeded lists of SM.b2j keys and items in .__chain_b. Do not backport. 2010-12-15 20:18:10 +00:00
dis.py As per python-dev discussion with Eli, properly document and publish dis.show_code 2010-09-10 14:08:04 +00:00
doctest.py Fix test suite to not activate new sigint behavior in pdb. 2010-12-04 17:11:36 +00:00
dummy_threading.py
filecmp.py
fileinput.py #1286: allow using fileinput.FileInput as context manager. 2010-07-31 20:08:15 +00:00
fnmatch.py Re-apply r83871. 2010-08-13 16:26:40 +00:00
formatter.py
fractions.py Make Fraction(-1).__hash__() return -2 rather than -1 (see issue 10356). 2010-11-13 10:27:38 +00:00
ftplib.py fix ftplib resource warnings 2010-10-31 19:58:07 +00:00
functools.py Add comment. 2011-01-11 22:08:55 +00:00
genericpath.py
getopt.py remove pointless coding cookies 2010-08-30 14:05:50 +00:00
getpass.py EasyDialogs was removed in 3.x. fallback_getpass will always be the answer here. 2010-12-16 03:24:49 +00:00
gettext.py update comment 2010-12-23 23:45:39 +00:00
glob.py
gzip.py #10465: fix broken delegation in __getattr__ of _PaddedFile. 2010-11-20 11:25:01 +00:00
hashlib.py Make the type consistent for hashlib algorithm constants. (Reviewed by Benjamin). 2011-01-24 04:52:27 +00:00
heapq.py Remove coding cookie from heapq.py. 2010-07-04 19:23:49 +00:00
hmac.py speed hack can be implemented more cleanly by directly calling __new__ 2010-08-21 02:45:15 +00:00
imaplib.py Issue #10939: Fixed imaplib.Internaldate2tuple(). Thanks Joe Peterson 2011-01-29 17:19:08 +00:00
imghdr.py
inspect.py Issue 10220: switch to using string constants rather than integers for inspect.getgeneratorstate() return values and make debugging friendly str() and repr() for generator states a requirement in the test suite 2010-11-30 06:36:04 +00:00
io.py
keyword.py Use a context manager for some file objects. 2010-09-03 19:52:03 +00:00
linecache.py Issue #10335: Add tokenize.open(), detect the file encoding using 2010-11-09 01:08:59 +00:00
locale.py
macpath.py Issue #767645: Set os.path.supports_unicode_filenames to True on Mac OS X 2010-09-13 19:41:36 +00:00
macurl2path.py
mailbox.py #9124: mailbox now accepts binary input and uses binary internally 2011-01-30 06:21:28 +00:00
mailcap.py
mimetypes.py Fix syntax typo 2010-12-23 23:18:41 +00:00
modulefinder.py Silence ResourceWarnings in modulefinder by using file context managers. 2010-10-30 00:26:48 +00:00
netrc.py #10464: fix netrc handling of lines with embedded '#" characters. 2010-12-02 02:58:07 +00:00
nntplib.py Make `usenetrc` False by default (the old behaviour of having it True by 2010-11-09 18:58:42 +00:00
ntpath.py Issue #5117: Case normalization was needed on ntpath.relpath(). And 2010-10-18 12:13:18 +00:00
nturl2path.py
numbers.py Remove the funky function annotation from numbers.py. 2011-01-12 20:52:39 +00:00
opcode.py #4617: Previously it was illegal to delete a name from the local 2010-09-10 21:39:53 +00:00
optparse.py
os.py Issue 9299 Add exist_ok parameter to os.makedirs to suppress 'File exists' exception. Patch by Ray Allen. 2010-12-02 07:05:56 +00:00
os2emxpath.py #9018: os.path.normcase() now raises a TypeError if the argument is not str or bytes. 2010-06-25 10:56:11 +00:00
pdb.py Add display/undisplay pdb commands. 2010-12-04 16:21:42 +00:00
pickle.py Issue #9410: Various optimizations to the pickle module, leading to 2010-09-09 18:33:21 +00:00
pickletools.py Syntax cleanup. 2010-07-28 16:39:41 +00:00
pipes.py Merged revisions 80030,80067,80069,80080-80081,80084,80432-80433,80465-80470,81059,81065-81067 via svnmerge from 2010-05-19 20:57:08 +00:00
pkgutil.py Have pkgutil properly close files. 2010-10-29 22:36:53 +00:00
platform.py Use a context manager for some file objects. 2010-09-03 19:52:03 +00:00
plistlib.py
poplib.py fix issue #8807: adds a context parameter to POP3_SSL class. 2010-08-17 16:09:53 +00:00
posixpath.py Issue #5117: Case normalization was needed on ntpath.relpath(). And 2010-10-18 12:13:18 +00:00
pprint.py Have pprint() respect the order in an OrderedDict. 2010-09-09 12:31:00 +00:00
profile.py #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. 2010-08-02 12:20:23 +00:00
pstats.py Fix issue10377 - Output from pstats - it is just secs (i.e, wallclock time) and not CPU time. 2010-11-20 17:02:50 +00:00
pty.py
py_compile.py Add an "optimize" parameter to compile() to control the optimization level, and provide an interface to it in py_compile, compileall and PyZipFile. 2010-12-04 10:26:46 +00:00
pyclbr.py Issue #11020: Command-line pyclbr was broken because of missing 2-to-3 2011-01-27 00:06:54 +00:00
pydoc.py pydoc: close the DocServer when done 2011-01-03 16:12:39 +00:00
queue.py Issue 10110: Let Queue.put recognize a full queue when the maxsize parameter has been reduced. 2010-10-31 17:57:52 +00:00
quopri.py
random.py Update whatsnew. Salt the random number seed. 2010-12-08 01:13:53 +00:00
re.py Adopt more descriptive attribute names as suggested on python-dev. 2010-09-04 22:46:06 +00:00
reprlib.py Fix typo. 2011-01-23 21:33:36 +00:00
rlcompleter.py
runpy.py account for the module __dict__ being cleared when its module is 2010-10-13 01:04:36 +00:00
sched.py
shelve.py #7905: Actually respect the keyencoding parameter to shelve.Shelf. 2010-12-04 11:12:43 +00:00
shlex.py Recode modules from latin-1 to utf-8 2010-10-27 18:52:48 +00:00
shutil.py Protect logging call against None argument (fixes #11045). 2011-01-29 20:32:11 +00:00
site.py #5258/#10642: print fn, line, traceback and continue when .pth file is broken 2010-12-26 19:54:29 +00:00
smtpd.py #1745035: add limits for command and data size to smtpd; patch by Savio Sena. 2010-12-03 07:38:22 +00:00
smtplib.py #10321: Add support for sending binary DATA and Message objects to smtplib 2010-11-08 17:15:13 +00:00
sndhdr.py Issue #9243: Fix sndhdr module and add unit tests, contributed by James Lee. 2010-07-13 23:04:56 +00:00
socket.py Issue #7995: When calling accept() on a socket with a timeout, the returned 2011-01-05 21:03:42 +00:00
socketserver.py
sre_compile.py Issue #8990: array.fromstring() and array.tostring() get renamed to 2010-09-01 20:29:34 +00:00
sre_constants.py
sre_parse.py
ssl.py Issue #5639: Add a *server_hostname* argument to `SSLContext.wrap_socket` 2010-10-22 18:19:07 +00:00
stat.py
string.py #9418: first step of moving private string methods to _string module. 2010-10-14 07:04:07 +00:00
stringprep.py
struct.py Issue #8973: Add __all__ to struct module, so that help(struct) correctly 2010-06-12 15:17:02 +00:00
subprocess.py In subprocess, wrap pipe fds before launching the child. Hopefully this 2011-01-04 19:07:07 +00:00
sunau.py Issue #10265: Close file objects explicitly in sunau. Patch by Brian Brazil. 2010-10-31 21:27:04 +00:00
symbol.py
symtable.py
sysconfig.py sys.abiflags may not be defined on all platforms. 2010-11-25 01:34:47 +00:00
tabnanny.py #1513299: cleanup some map() uses where a comprehension works better. 2010-12-04 10:39:14 +00:00
tarfile.py Issue #11014: Make 'filter' argument in tarfile.Tarfile.add() into a 2011-01-26 20:34:14 +00:00
telnetlib.py #10695: use %s not %d so that a string 'port' does not cause a debug traceback 2010-12-14 14:16:20 +00:00
tempfile.py Issue #10188 (partial resolution): tidy up some behaviour in the new tempfile.TemporaryDirectory context manager 2010-12-12 15:24:21 +00:00
textwrap.py
this.py
threading.py Remove out-of-date comment 2011-01-16 09:16:27 +00:00
timeit.py #4810: document "--" option separator in timeit help. 2010-08-01 08:52:32 +00:00
token.py Issue #10386: Added __all__ to token module; this simplifies importing 2010-11-11 14:07:41 +00:00
tokenize.py Issue #10386: Added __all__ to token module; this simplifies importing 2010-11-11 14:07:41 +00:00
trace.py Issue #10371: Deprecated undocumented functions in the trace module. 2010-11-20 18:21:07 +00:00
traceback.py
tty.py
turtle.py Issue #6878: Fixed return type of tkinter methods documented to return lists. 2010-11-22 19:40:51 +00:00
types.py
uu.py Issue #10266: uu.decode didn't close in_file explicitly when it was given 2010-10-31 16:04:14 +00:00
uuid.py Shift the pipe-using code into an else block, then close the pipe 2010-11-05 14:48:35 +00:00
warnings.py Add a new warning gategory, ResourceWarning, as discussed on python-dev. It is silent by default, 2010-10-24 15:11:22 +00:00
wave.py Issue #10783: struct.pack() doesn't encode implicitly unicode to UTF-8 2010-12-28 13:26:42 +00:00
weakref.py Use booleans. 2010-12-03 07:49:09 +00:00
webbrowser.py Issue 10738: Fix webbrowser.Opera.raise_opts value. 2010-12-28 19:30:19 +00:00
wsgiref.egg-info
xdrlib.py
zipfile.py #10801: In zipfile, support different encodings for the header and the filenames. Patch by MvL, test by Eli Bendersky. 2011-01-01 10:09:32 +00:00