Rather than silently producing a class that doesn't support zero-argument
super() in methods, failing to pass the new __classcell__ namespace
entry up to type.__new__ now results in a DeprecationWarning and a
class that supports zero-argument super().
Modifying the class __dict__ inside the __set_name__ method of a descriptor that is used inside that class no longer prevents calling the __set_name__ method of other descriptors.
Fix a bug in the implementation yield from when checking if the next
instruction is YIELD_FROM. Regression introduced by WORDCODE (issue #26647).
Unknown escapes in re.sub() replacement template are allowed again. But they still are deprecated and will be disabled in 3.7.
Fix a regression introduced in warnings.catch_warnings(): call warnings.showwarning() if it was overridden inside the context manager.
To assist with upgrades from 2.7, the previously documented deprecation of
inspect.getfullargspec() has been reversed. This decision may be
revisited again after the Python 2.7 branch is no longer officially
supported.
Add new :const:`socket.TCP_CONGESTION` (Linux 2.6.13) and :const:`socket.TCP_USER_TIMEOUT` (Linux 2.6.37) constants. Patch written by Omar Sandoval.
Reading a corrupt config file left configparser in an invalid state. Original patch by Florian Höch.
Fix asyncio C Task to handle exceptions __traceback__.
PyUnicode_CompareWithASCIIString() now never raises exceptions.
The data model reference and the porting section in the What's New guide now
cover the additional __classcell__ handling needed for custom
metaclasses to fully support PEP 487 and zero-argument super().
Fix python-gdb.py didn't support new dict implementation.