Back to Cpython

3.5.0a4

Misc/NEWS.d/3.5.0a4.rst

3.15.0a812.1 KB
Original Source

.. bpo: 22980 .. date: 9109 .. nonce: Lu_y6y .. release date: 2015-04-19 .. section: Core and Builtins

Under Linux, GNU/KFreeBSD and the Hurd, C extensions now include the architecture triplet in the extension name, to make it easy to test builds for different ABIs in the same working tree. Under OS X, the extension name now includes :pep:3149-style information.

..

.. bpo: 22631 .. date: 9108 .. nonce: nTx_ZF .. section: Core and Builtins

Added Linux-specific socket constant CAN_RAW_FD_FRAMES. Patch courtesy of Joe Jevnik.

..

.. bpo: 23731 .. date: 9107 .. nonce: FOXb37 .. section: Core and Builtins

Implement :pep:488: removal of .pyo files.

..

.. bpo: 23726 .. date: 9106 .. nonce: ZopTQ0 .. section: Core and Builtins

Don't enable GC for user subclasses of non-GC types that don't add any new fields. Patch by Eugene Toder.

..

.. bpo: 23309 .. date: 9105 .. nonce: Wfnsnz .. section: Core and Builtins

Avoid a deadlock at shutdown if a daemon thread is aborted while it is holding a lock to a buffered I/O object, and the main thread tries to use the same I/O object (typically stdout or stderr). A fatal error is emitted instead.

..

.. bpo: 22977 .. date: 9104 .. nonce: hutEse .. section: Core and Builtins

Fixed formatting Windows error messages on Wine. Patch by Martin Panter.

..

.. bpo: 23466 .. date: 9103 .. nonce: KhMltK .. section: Core and Builtins

%c, %o, %x, and %X in bytes formatting now raise TypeError on non-integer input.

..

.. bpo: 24044 .. date: 9102 .. nonce: H7vb6- .. section: Core and Builtins

Fix possible null pointer dereference in list.sort in out of memory conditions.

..

.. bpo: 21354 .. date: 9101 .. nonce: ZZTe1E .. section: Core and Builtins

PyCFunction_New function is exposed by python DLL again.

..

.. bpo: 23840 .. date: 9100 .. nonce: mtSbqO .. section: Library

tokenize.open() now closes the temporary binary file on error to fix a resource warning.

..

.. bpo: 16914 .. date: 9099 .. nonce: GrP2Jr .. section: Library

new debuglevel 2 in smtplib adds timestamps to debug output.

..

.. bpo: 7159 .. date: 9098 .. nonce: KCgOUm .. section: Library

urllib.request now supports sending auth credentials automatically after the first 401. This enhancement is a superset of the enhancement from issue #19494 and supersedes that change.

..

.. bpo: 23703 .. date: 9097 .. nonce: kYybxm .. section: Library

Fix a regression in urljoin() introduced in 901e4e52b20a. Patch by Demian Brecht.

..

.. bpo: 4254 .. date: 9096 .. nonce: eUC_2H .. section: Library

Adds _curses.update_lines_cols(). Patch by Arnon Yaari

..

.. bpo: 19933 .. date: 9095 .. nonce: Qq8utk .. section: Library

Provide default argument for ndigits in round. Patch by Vajrasky Kok.

..

.. bpo: 23193 .. date: 9094 .. nonce: n5ahcG .. section: Library

Add a numeric_owner parameter to tarfile.TarFile.extract and tarfile.TarFile.extractall. Patch by Michael Vogt and Eric Smith.

..

.. bpo: 23342 .. date: 9093 .. nonce: CbSzYI .. section: Library

Add a subprocess.run() function than returns a CalledProcess instance for a more consistent API than the existing call* functions.

..

.. bpo: 21217 .. date: 9092 .. nonce: TkFTlk .. section: Library

inspect.getsourcelines() now tries to compute the start and end lines from the code object, fixing an issue when a lambda function is used as decorator argument. Patch by Thomas Ballinger and Allison Kaptur.

..

.. bpo: 24521 .. date: 9091 .. nonce: bn4U-y .. section: Library

Fix possible integer overflows in the pickle module.

..

.. bpo: 22931 .. date: 9090 .. nonce: 4CuWYD .. section: Library

Allow '[' and ']' in cookie values.

..

.. bpo: 0 .. date: 9089 .. nonce: fgX8Qe .. section: Library

The keywords attribute of functools.partial is now always a dictionary.

..

.. bpo: 23811 .. date: 9088 .. nonce: B6tzf9 .. section: Library

Add missing newline to the PyCompileError error message. Patch by Alex Shkop.

..

.. bpo: 21116 .. date: 9087 .. nonce: Orft3K .. section: Library

Avoid blowing memory when allocating a multiprocessing shared array that's larger than 50% of the available RAM. Patch by Médéric Boquien.

..

.. bpo: 22982 .. date: 9086 .. nonce: xYmG62 .. section: Library

Improve BOM handling when seeking to multiple positions of a writable text file.

..

.. bpo: 23464 .. date: 9085 .. nonce: _XGkBk .. section: Library

Removed deprecated asyncio JoinableQueue.

..

.. bpo: 23529 .. date: 9084 .. nonce: Hr7AHH .. section: Library

Limit the size of decompressed data when reading from GzipFile, BZ2File or LZMAFile. This defeats denial of service attacks using compressed bombs (i.e. compressed payloads which decompress to a huge size). Patch by Martin Panter and Nikolaus Rath.

..

.. bpo: 21859 .. date: 9083 .. nonce: GYrUNP .. section: Library

Added Python implementation of io.FileIO.

..

.. bpo: 23865 .. date: 9082 .. nonce: PtSLgU .. section: Library

close() methods in multiple modules now are idempotent and more robust at shutdown. If they need to release multiple resources, all are released even if errors occur.

..

.. bpo: 23400 .. date: 9081 .. nonce: JSh9Z3 .. section: Library

Raise same exception on both Python 2 and 3 if sem_open is not available. Patch by Davin Potts.

..

.. bpo: 10838 .. date: 9080 .. nonce: p9tSPC .. section: Library

The subprocess now module includes SubprocessError and TimeoutError in its list of exported names for the users wild enough to use from subprocess import *.

..

.. bpo: 23411 .. date: 9079 .. nonce: 0im3Qw .. section: Library

Added DefragResult, ParseResult, SplitResult, DefragResultBytes, ParseResultBytes, and SplitResultBytes to urllib.parse.all. Patch by Martin Panter.

..

.. bpo: 23881 .. date: 9078 .. nonce: yZjl4b .. section: Library

urllib.request.ftpwrapper constructor now closes the socket if the FTP connection failed to fix a ResourceWarning.

..

.. bpo: 23853 .. date: 9077 .. nonce: mNY1eI .. section: Library

:meth:socket.socket.sendall does no more reset the socket timeout each time data is sent successfully. The socket timeout is now the maximum total duration to send all data.

..

.. bpo: 22721 .. date: 9076 .. nonce: MVfBL9 .. section: Library

An order of multiline pprint output of set or dict containing orderable and non-orderable elements no longer depends on iteration order of set or dict.

..

.. bpo: 15133 .. date: 9075 .. nonce: C0QfV8 .. section: Library

_tkinter.tkapp.getboolean() now supports Tcl_Obj and always returns bool. tkinter.BooleanVar now validates input values (accepted bool, int, str, and Tcl_Obj). tkinter.BooleanVar.get() now always returns bool.

..

.. bpo: 10590 .. date: 9074 .. nonce: nkxXfU .. section: Library

xml.sax.parseString() now supports string argument.

..

.. bpo: 23338 .. date: 9073 .. nonce: ZYMGN1 .. section: Library

Fixed formatting ctypes error messages on Cygwin. Patch by Makoto Kato.

..

.. bpo: 15582 .. date: 9072 .. nonce: 26wJNk .. section: Library

inspect.getdoc() now follows inheritance chains.

..

.. bpo: 2175 .. date: 9071 .. nonce: cHiVOp .. section: Library

SAX parsers now support a character stream of InputSource object.

..

.. bpo: 16840 .. date: 9070 .. nonce: kKIhPm .. section: Library

Tkinter now supports 64-bit integers added in Tcl 8.4 and arbitrary precision integers added in Tcl 8.5.

..

.. bpo: 23834 .. date: 9069 .. nonce: fX3TF4 .. section: Library

Fix socket.sendto(), use the C Py_ssize_t type to store the result of sendto() instead of the C int type.

..

.. bpo: 23618 .. date: 9068 .. nonce: Of_q5t .. section: Library

:meth:socket.socket.connect now waits until the connection completes instead of raising :exc:InterruptedError if the connection is interrupted by signals, signal handlers don't raise an exception and the socket is blocking or has a timeout. :meth:socket.socket.connect still raise :exc:InterruptedError for non-blocking sockets.

..

.. bpo: 21526 .. date: 9067 .. nonce: QQEXrR .. section: Library

Tkinter now supports new boolean type in Tcl 8.5.

..

.. bpo: 23836 .. date: 9066 .. nonce: zrEmlR .. section: Library

Fix the faulthandler module to handle reentrant calls to its signal handlers.

..

.. bpo: 23838 .. date: 9065 .. nonce: IX6FPX .. section: Library

linecache now clears the cache and returns an empty result on MemoryError.

..

.. bpo: 10395 .. date: 9064 .. nonce: fi_lZp .. section: Library

Added os.path.commonpath(). Implemented in posixpath and ntpath. Based on patch by Rafik Draoui.

..

.. bpo: 23611 .. date: 9063 .. nonce: QkBJVB .. section: Library

Serializing more "lookupable" objects (such as unbound methods or nested classes) now are supported with pickle protocols < 4.

..

.. bpo: 13583 .. date: 9062 .. nonce: -MPBjZ .. section: Library

sqlite3.Row now supports slice indexing.

..

.. bpo: 18473 .. date: 9061 .. nonce: 89RHm- .. section: Library

Fixed 2to3 and 3to2 compatible pickle mappings. Fixed ambiguous reverse mappings. Added many new mappings. Import mapping is no longer applied to modules already mapped with full name mapping.

..

.. bpo: 23485 .. date: 9060 .. nonce: kQWN6L .. section: Library

select.select() is now retried automatically with the recomputed timeout when interrupted by a signal, except if the signal handler raises an exception. This change is part of the :pep:475.

..

.. bpo: 23752 .. date: 9059 .. nonce: 5fbVNb .. section: Library

When built from an existing file descriptor, io.FileIO() now only calls fstat() once. Before fstat() was called twice, which was not necessary.

..

.. bpo: 23704 .. date: 9058 .. nonce: Ggjvm8 .. section: Library

collections.deque() objects now support add, mul, and imul().

..

.. bpo: 23171 .. date: 9057 .. nonce: b6PBzM .. section: Library

csv.Writer.writerow() now supports arbitrary iterables.

..

.. bpo: 23745 .. date: 9056 .. nonce: E00Bml .. section: Library

The new email header parser now handles duplicate MIME parameter names without error, similar to how get_param behaves.

..

.. bpo: 22117 .. date: 9055 .. nonce: bTO0xx .. section: Library

Fix os.utime(), it now rounds the timestamp towards minus infinity (-inf) instead of rounding towards zero.

..

.. bpo: 23310 .. date: 9054 .. nonce: GXmFMR .. section: Library

Fix MagicMock's initializer to work with methods, just like configure_mock(). Patch by Kasia Jachim.

..

.. bpo: 23817 .. date: 9053 .. nonce: DTmVan .. section: Build

FreeBSD now uses "1.0" in the SOVERSION as other operating systems, instead of just "1".

..

.. bpo: 23501 .. date: 9052 .. nonce: iz10e6 .. section: Build

Argument Clinic now generates code into separate files by default.

..

.. bpo: 23799 .. date: 9051 .. nonce: XU2xDw .. section: Tests

Added test.support.start_threads() for running and cleaning up multiple threads.

..

.. bpo: 22390 .. date: 9050 .. nonce: UPVFnq .. section: Tests

test.regrtest now emits a warning if temporary files or directories are left after running a test.

..

.. bpo: 18128 .. date: 9049 .. nonce: lx2V5a .. section: Tools/Demos

pygettext now uses standard +NNNN format in the POT-Creation-Date header.

..

.. bpo: 23935 .. date: 9048 .. nonce: JSYowT .. section: Tools/Demos

Argument Clinic's understanding of format units accepting bytes, bytearrays, and buffers is now consistent with both the documentation and the implementation.

..

.. bpo: 23944 .. date: 9047 .. nonce: Q8ZL2s .. section: Tools/Demos

Argument Clinic now wraps long impl prototypes at column 78.

..

.. bpo: 20586 .. date: 9046 .. nonce: 7BiEkx .. section: Tools/Demos

Argument Clinic now ensures that functions without docstrings have signatures.

..

.. bpo: 23492 .. date: 9045 .. nonce: kjIcQW .. section: Tools/Demos

Argument Clinic now generates argument parsing code with PyArg_Parse instead of PyArg_ParseTuple if possible.

..

.. bpo: 23500 .. date: 9044 .. nonce: H6_dX_ .. section: Tools/Demos

Argument Clinic is now smarter about generating the "#ifndef" (empty) definition of the methoddef macro: it's only generated once, even if Argument Clinic processes the same symbol multiple times, and it's emitted at the end of all processing rather than immediately after the first use.

..

.. bpo: 23998 .. date: 9043 .. nonce: z7mlLW .. section: C API

PyImport_ReInitLock() now checks for lock allocation error