Back to Cpython

3.7.0b3

Misc/NEWS.d/3.7.0b3.rst

3.15.0a811.1 KB
Original Source

.. bpo: 33136 .. date: 2018-03-25-12-05-43 .. nonce: TzSN4x .. release date: 2018-03-29 .. section: Security

Harden ssl module against LibreSSL :cve:2018-8970. X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test ensures that NULL bytes are not allowed.

..

.. bpo: 33001 .. date: 2018-03-05-10-09-51 .. nonce: elj4Aa .. section: Security

Minimal fix to prevent buffer overrun in os.symlink on Windows

..

.. bpo: 32981 .. date: 2018-03-02-10-24-52 .. nonce: O_qDyj .. section: Security

Regexes in difflib and poplib were vulnerable to catastrophic backtracking. These regexes formed potential DOS vectors (REDOS). They have been refactored. This resolves :cve:2018-1060 and :cve:2018-1061. Patch by Jamie Davis.

..

.. bpo: 33053 .. date: 2018-03-25-19-49-06 .. nonce: V3xlsH .. section: Core and Builtins

When using the -m switch, sys.path[0] is now explicitly expanded as the starting working directory, rather than being left as the empty path (which allows imports from the current working directory at the time of the import)

..

.. bpo: 33018 .. date: 2018-03-22-23-09-06 .. nonce: 0ncEJV .. section: Core and Builtins

Improve consistency of errors raised by issubclass() when called with a non-class and an abstract base class as the first and second arguments, respectively. Patch by Josh Bronson.

..

.. bpo: 33041 .. date: 2018-03-18-13-56-14 .. nonce: XwPhI2 .. section: Core and Builtins

Fixed jumping when the function contains an async for loop.

..

.. bpo: 33026 .. date: 2018-03-08-09-48-38 .. nonce: QZA3Ba .. section: Core and Builtins

Fixed jumping out of "with" block by setting f_lineno.

..

.. bpo: 33005 .. date: 2018-03-06-12-19-19 .. nonce: LP-V2U .. section: Core and Builtins

Fix a crash on fork when using a custom memory allocator (ex: using PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() now use the default RAW memory allocator to allocate a new interpreters mutex on fork.

..

.. bpo: 17288 .. date: 2018-02-27-13-36-21 .. nonce: Gdj24S .. section: Core and Builtins

Prevent jumps from 'return' and 'exception' trace events.

..

.. bpo: 32836 .. date: 2018-02-14-12-35-47 .. nonce: bThJnx .. section: Core and Builtins

Don't use temporary variables in cases of list/dict/set comprehensions

..

.. bpo: 33141 .. date: 2018-03-26-12-33-13 .. nonce: 23wlxf .. section: Library

Have Field objects pass through set_name to their default values, if they have their own set_name.

..

.. bpo: 33096 .. date: 2018-03-25-13-18-16 .. nonce: ofdbe7 .. section: Library

Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note iid=0 and iid=False would be same. Patch by Garvit Khatri.

..

.. bpo: 32873 .. date: 2018-03-24-19-54-48 .. nonce: cHyoAm .. section: Library

Treat type variables and special typing forms as immutable by copy and pickle. This fixes several minor issues and inconsistencies, and improves backwards compatibility with Python 3.6.

..

.. bpo: 33134 .. date: 2018-03-24-19-34-26 .. nonce: hbVeIX .. section: Library

When computing dataclass's hash, use the lookup table to contain the function which returns the hash value. This is an improvement over looking up a string, and then testing that string to see what to do.

..

.. bpo: 33127 .. date: 2018-03-24-15-08-24 .. nonce: olJmHv .. section: Library

The ssl module now compiles with LibreSSL 2.7.1.

..

.. bpo: 32505 .. date: 2018-03-22-16-05-56 .. nonce: YK1N8v .. section: Library

Raise TypeError if a member variable of a dataclass is of type Field, but doesn't have a type annotation.

..

.. bpo: 33078 .. date: 2018-03-21-17-59-39 .. nonce: PQOniT .. section: Library

Fix the failure on OSX caused by the tests relying on sem_getvalue

..

.. bpo: 33116 .. date: 2018-03-21-16-52-26 .. nonce: Tvzerj .. section: Library

Add 'Field' to dataclasses.all.

..

.. bpo: 32896 .. date: 2018-03-20-20-53-21 .. nonce: ewW3Ln .. section: Library

Fix an error where subclassing a dataclass with a field that uses a default_factory would generate an incorrect class.

..

.. bpo: 33100 .. date: 2018-03-19-20-47-00 .. nonce: chyIO4 .. section: Library

Dataclasses: If a field has a default value that's a MemberDescriptorType, then it's from that field being in slots, not an actual default value.

..

.. bpo: 32953 .. date: 2018-03-18-17-38-48 .. nonce: t8WAWN .. section: Library

If a non-dataclass inherits from a frozen dataclass, allow attributes to be added to the derived class. Only attributes from the frozen dataclass cannot be assigned to. Require all dataclasses in a hierarchy to be either all frozen or all non-frozen.

..

.. bpo: 33061 .. date: 2018-03-16-16-07-33 .. nonce: TRTTek .. section: Library

Add missing NoReturn to __all__ in typing.py

..

.. bpo: 33078 .. date: 2018-03-15-07-38-00 .. nonce: RmjUF5 .. section: Library

Fix the size handling in multiprocessing.Queue when a pickling error occurs.

..

.. bpo: 33064 .. date: 2018-03-12-19-58-25 .. nonce: LO2KIY .. section: Library

lib2to3 now properly supports trailing commas after *args and **kwargs in function signatures.

..

.. bpo: 33056 .. date: 2018-03-12-16-40-00 .. nonce: lNN9Eh .. section: Library

FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor.

..

.. bpo: 33021 .. date: 2018-03-12-00-27-56 .. nonce: m19B9T .. section: Library

Release the GIL during fstat() calls, avoiding hang of all threads when calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer.

..

.. bpo: 31804 .. date: 2018-03-11-19-03-52 .. nonce: i8KUMp .. section: Library

Avoid failing in multiprocessing.Process if the standard streams are closed or None at exit.

..

.. bpo: 33037 .. date: 2018-03-09-23-07-07 .. nonce: nAJ3at .. section: Library

Skip sending/receiving data after SSL transport closing.

..

.. bpo: 27683 .. date: 2018-03-07-22-28-17 .. nonce: 572Rv4 .. section: Library

Fix a regression in :mod:ipaddress that result of :meth:hosts is empty when the network is constructed by a tuple containing an integer mask and only 1 bit left for addresses.

..

.. bpo: 32999 .. date: 2018-03-06-20-30-20 .. nonce: lgFXWl .. section: Library

Fix C implementation of ABC.__subclasscheck__(cls, subclass) crashed when subclass is not a type object.

..

.. bpo: 33009 .. date: 2018-03-06-11-54-59 .. nonce: -Ekysb .. section: Library

Fix inspect.signature() for single-parameter partialmethods.

..

.. bpo: 32969 .. date: 2018-03-06-00-19-41 .. nonce: rGTKa0 .. section: Library

Expose several missing constants in zlib and fix corresponding documentation.

..

.. bpo: 32056 .. date: 2018-03-01-17-49-56 .. nonce: IlpfgE .. section: Library

Improved exceptions raised for invalid number of channels and sample width when read an audio file in modules :mod:!aifc, :mod:wave and :mod:!sunau.

..

.. bpo: 32844 .. date: 2018-02-28-13-08-00 .. nonce: u8tnAe .. section: Library

Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess if another low descriptor is closed.

..

.. bpo: 32857 .. date: 2018-02-16-14-37-14 .. nonce: -XljAx .. section: Library

In :mod:tkinter, after_cancel(None) now raises a :exc:ValueError instead of canceling the first scheduled function. Patch by Cheryl Sabella.

..

.. bpo: 31639 .. date: 2017-12-27-21-55-19 .. nonce: l3avDJ .. section: Library

http.server now exposes a ThreadedHTTPServer class and uses it when the module is run with -m to cope with web browsers pre-opening sockets.

..

.. bpo: 27645 .. date: 2017-10-05-20-41-48 .. nonce: 1Y_Wag .. section: Library

:class:sqlite3.Connection now exposes a :class:~sqlite3.Connection.backup method, if the underlying SQLite library is at version 3.6.11 or higher. Patch by Lele Gaifax.

..

.. bpo: 33126 .. date: 2018-03-28-17-03-17 .. nonce: 5UGkNv .. section: Documentation

Document PyBuffer_ToContiguous().

..

.. bpo: 27212 .. date: 2018-03-22-19-23-04 .. nonce: wrE5KR .. section: Documentation

Modify documentation for the :func:islice recipe to consume initial values up to the start index.

..

.. bpo: 28247 .. date: 2018-03-20-20-11-05 .. nonce: -V-WS- .. section: Documentation

Update :mod:zipapp documentation to describe how to make standalone applications.

..

.. bpo: 18802 .. date: 2018-03-11-18-53-47 .. nonce: JhAqH3 .. section: Documentation

Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag.

..

.. bpo: 27428 .. date: 2018-03-11-00-16-56 .. nonce: B7A8FT .. section: Documentation

Update documentation to clarify that WindowsRegistryFinder implements MetaPathFinder. (Patch by Himanshu Lakhara)

..

.. bpo: 32872 .. date: 2018-03-28-01-35-02 .. nonce: J5NDUj .. section: Tests

Avoid regrtest compatibility issue with namespace packages.

..

.. bpo: 32517 .. date: 2018-03-09-07-05-12 .. nonce: ugc1iW .. section: Tests

Fix failing test_asyncio on macOS 10.12.2+ due to transport of KqueueSelector loop was not being closed.

..

.. bpo: 19417 .. date: 2018-01-08-13-33-47 .. nonce: 2asoXy .. section: Tests

Add test_bdb.py.

..

.. bpo: 33163 .. date: 2018-03-28-04-15-03 .. nonce: hfpWuU .. section: Build

Upgrade pip to 9.0.3 and setuptools to v39.0.1.

..

.. bpo: 33016 .. date: 2018-03-07-01-33-33 .. nonce: Z_Med0 .. section: Windows

Fix potential use of uninitialized memory in nt._getfinalpathname

..

.. bpo: 32903 .. date: 2018-02-28-11-03-24 .. nonce: 1SXY4t .. section: Windows

Fix a memory leak in os.chdir() on Windows if the current directory is set to a UNC path.

..

.. bpo: 32726 .. date: 2018-03-29-06-56-12 .. nonce: urS9uX .. section: macOS

Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ installer. The 10.9+ installer variant already does this. This means that the Python 3.7 provided by the python.org macOS installers no longer need or use any external versions of Tcl/Tk, either system-provided or user-installed, such as ActiveTcl.

..

.. bpo: 32984 .. date: 2018-03-05-01-29-05 .. nonce: NGjgT4 .. section: IDLE

Set __file__ while running a startup file. Like Python, IDLE optionally runs one startup file in the Shell window before presenting the first interactive input prompt. For IDLE, -s runs a file named in environmental variable :envvar:IDLESTARTUP or :envvar:PYTHONSTARTUP; -r file runs file. Python sets __file__ to the startup file name before running the file and unsets it before the first prompt. IDLE now does the same when run normally, without the -n option.

..

.. bpo: 32940 .. date: 2018-02-24-18-20-50 .. nonce: ZaJ1Rf .. section: IDLE

Simplify and rename StringTranslatePseudoMapping in pyparse.

..

.. bpo: 32885 .. date: 2018-02-20-12-16-47 .. nonce: dL5x7C .. section: Tools/Demos

Add an -n flag for Tools/scripts/pathfix.py to disable automatic backup creation (files with ~ suffix).

..

.. bpo: 33042 .. date: 2018-03-20-21-43-09 .. nonce: FPFp64 .. section: C API

Embedding applications may once again call PySys_ResetWarnOptions, PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize.

..

.. bpo: 32374 .. date: 2018-01-09-17-03-54 .. nonce: SwwLoz .. section: C API

Document that m_traverse for multi-phase initialized modules can be called with m_state=NULL, and add a sanity check