Core and Builtins
-----------------
-- Issue #14761: Fix potential leak on an error case in the import machinery.
+- Issue #14624: UTF-16 decoding is now 3x to 4x faster on various inputs.
+ Patch by Serhiy Storchaka.
-- Issue #14699: Fix calling the classmethod descriptor directly.
-
-- Issue #14433: Prevent msvcrt crash in interactive prompt when stdin
- is closed.
+- asdl_seq and asdl_int_seq are now Py_ssize_t sized.
-- Issue #11603 (again): Setting __repr__ to __str__ now raises a RuntimeError
- when repr() or str() is called on such an object.
+- Issue #14133 (PEP 415): Implement suppression of __context__ display with an
+ attribute on BaseException. This replaces the original mechanism of PEP 409.
-- Issue #14658: Fix binding a special method to a builtin implementation of a
- special method with a different name.
+- Issue #14417: Mutating a dict during lookup now restarts the lookup instead
+ of raising a RuntimeError (undoes issue #14205).
-- Issue #14630: Fix a memory access bug for instances of a subclass of int
- with value 0.
+- Issue #14738: Speed-up UTF-8 decoding on non-ASCII data. Patch by Serhiy
+ Storchaka.
-- Issue #14612: Fix jumping around with blocks by setting f_lineno.
+- Issue #14700: Fix two broken and undefined-behaviour-inducing overflow checks
+ in old-style string formatting.
-- Issue #14607: Fix keyword-only arguments which started with ``__``.
+- Issue #14705: The PyArg_Parse() family of functions now support the 'p' format
+ unit, which accepts a "boolean predicate" argument. It converts any Python
+ value into an integer--0 if it is "false", and 1 otherwise.
-- Issue #13889: Check and (if necessary) set FPU control word before calling
- any of the dtoa.c string <-> float conversion functions, on MSVC builds of
- Python. This fixes issues when embedding Python in a Delphi app.
+Library
+-------
-- Issue #14474: Save and restore exception state in thread.start_new_thread()
- while writing error message if the thread leaves a unhandled exception.
++- Issue #14777: tkinter may return undecoded UTF-8 bytes as a string when
++ accessing the Tk clipboard. Modify clipboad_get() to first request type
++ UTF8_STRING when no specific type is requested in an X11 windowing
++ environment, falling back to the current default type STRING if that fails.
++ Original patch by Thomas Kluyver.
+
-- Issue #13019: Fix potential reference leaks in bytearray.extend(). Patch
- by Suman Saha.
+- Issue #14773: Fix os.fwalk() failing on dangling symlinks.
-- Issue #14378: Fix compiling ast.ImportFrom nodes with a "__future__" string as
- the module name that was not interned.
+- Issue #12541: Be lenient with quotes around Realm field of HTTP Basic
+ Authentation in urllib2.
-- Issue #14331: Use significantly less stack space when importing modules by
- allocating path buffers on the heap instead of the stack.
+- Issue #14807: move undocumented tarfile.filemode() to stat.filemode() and add
+ doc entry. Add tarfile.filemode alias with deprecation warning.
-- Issue #14334: Prevent in a segfault in type.__getattribute__ when it was not
- passed strings.
+- Issue #13815: TarFile.extractfile() now returns io.BufferedReader objects.
-- Issue #1469629: Allow cycles through an object's __dict__ slot to be
- collected. (For example if ``x.__dict__ is x``).
+- Issue #14532: Add a secure_compare() helper to the hmac module, to mitigate
+ timing attacks. Patch by Jon Oberheide.
-- Issue #14172: Fix reference leak when marshalling a buffer-like object
- (other than a bytes object).
+- Add importlib.util.resolve_name().
-- Issue #13521: dict.setdefault() now does only one lookup for the given key,
- making it "atomic" for many purposes. Patch by Filip GruszczyĆski.
+- Issue #14366: Support lzma compression in zip files.
+ Patch by Serhiy Storchaka.
-- Issue #14471: Fix a possible buffer overrun in the winreg module.
+- Issue #13959: Introduce importlib.find_loader() and document
+ imp.find_module/load_module as deprecated.
-Library
--------
+- Issue #14082: shutil.copy2() now copies extended attributes, if possible.
+ Patch by Hynek Schlawack.
-- Issue #14777: tkinter may return undecoded UTF-8 bytes as a string when
- accessing the Tk clipboard. Modify clipboad_get() to first request type
- UTF8_STRING when no specific type is requested in an X11 windowing
- environment, falling back to the current default type STRING if that fails.
- Original patch by Thomas Kluyver.
+- Issue #13959: Make importlib.abc.FileLoader.load_module()/get_filename() and
+ importlib.machinery.ExtensionFileLoader.load_module() have their single
+ argument be optional. Allows for the replacement (and thus deprecation) of
+ imp.load_source()/load_package()/load_compiled().
-- Issue #12541: Be lenient with quotes around Realm field of HTTP Basic
- Authentation in urllib2.
+- Issue #13959: imp.get_suffixes() has been deprecated in favour of the new
+ attributes on importlib.machinery: SOURCE_SUFFIXES, DEBUG_BYTECODE_SUFFIXES,
+ OPTIMIZED_BYTECODE_SUFFIXES, BYTECODE_SUFFIXES, and EXTENSION_SUFFIXES. This
+ led to an indirect deprecation of inspect.getmoduleinfo().
- Issue #14662: Prevent shutil failures on OS X when destination does not
support chflag operations. Patch by Hynek Schlawack.