Back to Cpython

3.6.0a2

Misc/NEWS.d/3.6.0a2.rst

3.15.0a814.4 KB
Original Source

.. release date: 2016-06-13 .. bpo: 26556 .. date: 9316 .. nonce: v5j2uL .. original section: Library .. section: Security

Update expat to 2.1.1, fixes :cve:2015-1283.

..

.. bpo: 0 .. date: 9315 .. nonce: PHOAdg .. original section: Library .. section: Security

Fix TLS stripping vulnerability in smtplib, :cve:2016-0772. Reported by Team Oststrom.

..

.. bpo: 26839 .. date: 9303 .. nonce: yVvy7R .. original section: Library .. section: Security

On Linux, :func:os.urandom now calls getrandom() with GRND_NONBLOCK to fall back on reading /dev/urandom if the urandom entropy pool is not initialized yet. Patch written by Colm Buckley.

..

.. bpo: 27095 .. date: 9332 .. nonce: 92UoyH .. section: Core and Builtins

Simplified MAKE_FUNCTION and removed MAKE_CLOSURE opcodes. Patch by Demur Rumed.

..

.. bpo: 27190 .. date: 9331 .. nonce: DHDFeD .. section: Core and Builtins

Raise NotSupportedError if sqlite3 is older than 3.3.1. Patch by Dave Sawyer.

..

.. bpo: 27286 .. date: 9330 .. nonce: U8q6B1 .. section: Core and Builtins

Fixed compiling BUILD_MAP_UNPACK_WITH_CALL opcode. Calling function with generalized unpacking (PEP 448) and conflicting keyword names could cause undefined behavior.

..

.. bpo: 27140 .. date: 9329 .. nonce: uc39-1 .. section: Core and Builtins

Added BUILD_CONST_KEY_MAP opcode.

..

.. bpo: 27186 .. date: 9328 .. nonce: EAnCS7 .. section: Core and Builtins

Add support for os.PathLike objects to open() (part of :pep:519).

..

.. bpo: 27066 .. date: 9327 .. nonce: SNExZi .. section: Core and Builtins

Fixed SystemError if a custom opener (for open()) returns a negative number without setting an exception.

..

.. bpo: 26983 .. date: 9326 .. nonce: A0f3fK .. section: Core and Builtins

float() now always return an instance of exact float. The deprecation warning is emitted if float returns an instance of a strict subclass of float. In a future versions of Python this can be an error.

..

.. bpo: 27097 .. date: 9325 .. nonce: woRKey .. section: Core and Builtins

Python interpreter is now about 7% faster due to optimized instruction decoding. Based on patch by Demur Rumed.

..

.. bpo: 26647 .. date: 9324 .. nonce: DLSzRi .. section: Core and Builtins

Python interpreter now uses 16-bit wordcode instead of bytecode. Patch by Demur Rumed.

..

.. bpo: 23275 .. date: 9323 .. nonce: YGPb_y .. section: Core and Builtins

Allow assigning to an empty target list in round brackets: () = iterable.

..

.. bpo: 27243 .. date: 9322 .. nonce: U36M4E .. section: Core and Builtins

Update the aiter protocol: instead of returning an awaitable that resolves to an asynchronous iterator, the asynchronous iterator should be returned directly. Doing the former will trigger a PendingDeprecationWarning.

..

.. bpo: 0 .. date: 9321 .. nonce: nBpVM1 .. section: Library

Comment out socket (SO_REUSEPORT) and posix (O_SHLOCK, O_EXLOCK) constants exposed on the API which are not implemented on GNU/Hurd. They would not work at runtime anyway.

..

.. bpo: 27025 .. date: 9320 .. nonce: ffzxpX .. section: Library

Generated names for Tkinter widgets are now more meaningful and recognizable.

..

.. bpo: 25455 .. date: 9319 .. nonce: k10GoO .. section: Library

Fixed crashes in repr of recursive ElementTree.Element and functools.partial objects.

..

.. bpo: 27294 .. date: 9318 .. nonce: XPCURr .. section: Library

Improved repr for Tkinter event objects.

..

.. bpo: 20508 .. date: 9317 .. nonce: 3NMbT2 .. section: Library

Improve exception message of IPv{4,6}Network.getitem. Patch by Gareth Rees.

..

.. bpo: 21386 .. date: 9314 .. nonce: DjV72U .. section: Library

Implement missing IPv4Address.is_global property. It was documented since 07a5610bae9d. Initial patch by Roger Luethi.

..

.. bpo: 27029 .. date: 9313 .. nonce: dmycvw .. section: Library

Removed deprecated support of universal newlines mode from ZipFile.open().

..

.. bpo: 27030 .. date: 9312 .. nonce: p29J7m .. section: Library

Unknown escapes consisting of '\' and an ASCII letter in regular expressions now are errors. The re.LOCALE flag now can be used only with bytes patterns.

..

.. bpo: 27186 .. date: 9311 .. nonce: UYiwoh .. section: Library

Add os.PathLike support to DirEntry (part of :pep:519). Initial patch by Jelle Zijlstra.

..

.. bpo: 20900 .. date: 9310 .. nonce: H5YQPR .. section: Library

distutils register command now decodes HTTP responses correctly. Initial patch by ingrid.

..

.. bpo: 27186 .. date: 9309 .. nonce: Xo4c_F .. section: Library

Add os.PathLike support to pathlib, removing its provisional status (part of PEP 519). Initial patch by Dusty Phillips.

..

.. bpo: 27186 .. date: 9308 .. nonce: ZD1wpp .. section: Library

Add support for os.PathLike objects to os.fsencode() and os.fsdecode() (part of :pep:519).

..

.. bpo: 27186 .. date: 9307 .. nonce: y7YRfj .. section: Library

Introduce os.PathLike and os.fspath() (part of :pep:519).

..

.. bpo: 0 .. date: 9306 .. nonce: iYIeng .. section: Library

A new version of typing.py provides several new classes and features: @overload outside stubs, Reversible, DefaultDict, Text, ContextManager, Type[], NewType(), TYPE_CHECKING, and numerous bug fixes (note that some of the new features are not yet implemented in mypy or other static analyzers). Also classes for :pep:492 (Awaitable, AsyncIterable, AsyncIterator) have been added (in fact they made it into 3.5.1 but were never mentioned).

..

.. bpo: 25738 .. date: 9305 .. nonce: mED9w4 .. section: Library

Stop http.server.BaseHTTPRequestHandler.send_error() from sending a message body for 205 Reset Content. Also, don't send Content header fields in responses that don't have a body. Patch by Susumu Koshiba.

..

.. bpo: 21313 .. date: 9304 .. nonce: W30MBr .. section: Library

Fix the "platform" module to tolerate when sys.version contains truncated build information.

..

.. bpo: 23883 .. date: 9302 .. nonce: tsZUiM .. section: Library

Added missing APIs to all to match the documented APIs for the following modules: cgi, mailbox, mimetypes, plistlib and smtpd. Patches by Jacek Kołodziej.

..

.. bpo: 27164 .. date: 9301 .. nonce: 6wmjx2 .. section: Library

In the zlib module, allow decompressing raw Deflate streams with a predefined zdict. Based on patch by Xiang Zhang.

..

.. bpo: 24291 .. date: 9300 .. nonce: Ac6HvL .. section: Library

Fix wsgiref.simple_server.WSGIRequestHandler to completely write data to the client. Previously it could do partial writes and truncate data. Also, wsgiref.handler.ServerHandler can now handle stdout doing partial writes, but this is deprecated.

..

.. bpo: 21272 .. date: 9299 .. nonce: unScIG .. section: Library

Use _sysconfigdata.py to initialize distutils.sysconfig.

..

.. bpo: 19611 .. date: 9298 .. nonce: MT-Qga .. section: Library

:mod:inspect now reports the implicit .0 parameters generated by the compiler for comprehension and generator expression scopes as if they were positional-only parameters called implicit0. Patch by Jelle Zijlstra.

..

.. bpo: 26809 .. date: 9297 .. nonce: ya7JMb .. section: Library

Add __all__ to :mod:string. Patch by Emanuel Barry.

..

.. bpo: 26373 .. date: 9296 .. nonce: P6qz6o .. section: Library

subprocess.Popen.communicate now correctly ignores BrokenPipeError when the child process dies before .communicate() is called in more/all circumstances.

..

.. bpo: 0 .. date: 9295 .. nonce: eKchPz .. section: Library

signal, socket, and ssl module IntEnum constant name lookups now return a consistent name for values having multiple names. Ex: signal.Signals(6) now refers to itself as signal.SIGALRM rather than flipping between that and signal.SIGIOT based on the interpreter's hash randomization seed.

..

.. bpo: 27167 .. date: 9294 .. nonce: orA_j0 .. section: Library

Clarify the subprocess.CalledProcessError error message text when the child process died due to a signal.

..

.. bpo: 25931 .. date: 9293 .. nonce: W7h6Am .. section: Library

Don't define socketserver.Forking* names on platforms such as Windows that do not support os.fork().

..

.. bpo: 21776 .. date: 9292 .. nonce: 04eQfa .. section: Library

distutils.upload now correctly handles HTTPError. Initial patch by Claudiu Popa.

..

.. bpo: 26526 .. date: 9291 .. nonce: ScewjJ .. section: Library

Replace custom parse tree validation in the parser module with a simple DFA validator.

..

.. bpo: 27114 .. date: 9290 .. nonce: bGCuAM .. section: Library

Fix SSLContext._load_windows_store_certs fails with PermissionError

..

.. bpo: 18383 .. date: 9289 .. nonce: jr-b0l .. section: Library

Avoid creating duplicate filters when using filterwarnings and simplefilter. Based on patch by Alex Shkop.

..

.. bpo: 23026 .. date: 9288 .. nonce: V2rgYX .. section: Library

winreg.QueryValueEx() now return an integer for REG_QWORD type.

..

.. bpo: 26741 .. date: 9287 .. nonce: fsbb42 .. section: Library

subprocess.Popen destructor now emits a ResourceWarning warning if the child process is still running.

..

.. bpo: 27056 .. date: 9286 .. nonce: rk-BBL .. section: Library

Optimize pickle.load() and pickle.loads(), up to 10% faster to deserialize a lot of small objects.

..

.. bpo: 21271 .. date: 9285 .. nonce: bHIfFA .. section: Library

New keyword only parameters in reset_mock call.

..

.. bpo: 5124 .. date: 9284 .. nonce: 4kwBvM .. section: IDLE

Paste with text selected now replaces the selection on X11. This matches how paste works on Windows, Mac, most modern Linux apps, and ttk widgets. Original patch by Serhiy Storchaka.

..

.. bpo: 24750 .. date: 9283 .. nonce: wA-pc9 .. section: IDLE

Switch all scrollbars in IDLE to ttk versions. Where needed, minimal tests are added to cover changes.

..

.. bpo: 24759 .. date: 9282 .. nonce: 76HB4w .. section: IDLE

IDLE requires tk 8.5 and availability ttk widgets. Delete now unneeded tk version tests and code for older versions. Add test for IDLE syntax colorizer.

..

.. bpo: 27239 .. date: 9281 .. nonce: fToURh .. section: IDLE

idlelib.macosx.isXyzTk functions initialize as needed.

..

.. bpo: 27262 .. date: 9280 .. nonce: t7ckly .. section: IDLE

move Aqua unbinding code, which enable context menus, to macosx.

..

.. bpo: 24759 .. date: 9279 .. nonce: ccmySu .. section: IDLE

Make clear in idlelib.idle_test.init that the directory is a private implementation of test.test_idle and tool for maintainers.

..

.. bpo: 27196 .. date: 9278 .. nonce: 3yp8TF .. section: IDLE

Stop 'ThemeChanged' warnings when running IDLE tests. These persisted after other warnings were suppressed in #20567. Apply Serhiy Storchaka's update_idletasks solution to four test files. Record this additional advice in idle_test/README.txt

..

.. bpo: 20567 .. date: 9277 .. nonce: hhT32b .. section: IDLE

Revise idle_test/README.txt with advice about avoiding tk warning messages from tests. Apply advice to several IDLE tests.

..

.. bpo: 24225 .. date: 9276 .. nonce: NxQCka .. section: IDLE

Update idlelib/README.txt with new file names and event handlers.

..

.. bpo: 27156 .. date: 9275 .. nonce: j1N9br .. section: IDLE

Remove obsolete code not used by IDLE.

..

.. bpo: 27117 .. date: 9274 .. nonce: YrLPf4 .. section: IDLE

Make colorizer htest and turtledemo work with dark themes. Move code for configuring text widget colors to a new function.

..

.. bpo: 24225 .. date: 9273 .. nonce: RbyFuV .. section: IDLE

Rename many idlelib/*.py and idle_test/test_*.py files. Edit files to replace old names with new names when the old name referred to the module rather than the class it contained. See the issue and IDLE section in What's New in 3.6 for more.

..

.. bpo: 26673 .. date: 9272 .. nonce: dh0_Ij .. section: IDLE

When tk reports font size as 0, change to size 10. Such fonts on Linux prevented the configuration dialog from opening.

..

.. bpo: 21939 .. date: 9271 .. nonce: pWz-OK .. section: IDLE

Add test for IDLE's percolator. Original patch by Saimadhav Heblikar.

..

.. bpo: 21676 .. date: 9270 .. nonce: hqy6Qh .. section: IDLE

Add test for IDLE's replace dialog. Original patch by Saimadhav Heblikar.

..

.. bpo: 18410 .. date: 9269 .. nonce: DLSPZo .. section: IDLE

Add test for IDLE's search dialog. Original patch by Westley Martínez.

..

.. bpo: 21703 .. date: 9268 .. nonce: bEU8sP .. section: IDLE

Add test for undo delegator. Patch mostly by Saimadhav Heblikar .

..

.. bpo: 27044 .. date: 9267 .. nonce: 4y7tyM .. section: IDLE

Add ConfigDialog.remove_var_callbacks to stop memory leaks.

..

.. bpo: 23977 .. date: 9266 .. nonce: miDjj8 .. section: IDLE

Add more asserts to test_delegator.

..

.. bpo: 16484 .. date: 9265 .. nonce: ITzcGg .. section: Documentation

Change the default PYTHONDOCS URL to "https:", and fix the resulting links to use lowercase. Patch by Sean Rodman, test by Kaushik Nadikuditi.

..

.. bpo: 24136 .. date: 9264 .. nonce: MUK0zK .. section: Documentation

Document the new :pep:448 unpacking syntax of 3.5.

..

.. bpo: 22558 .. date: 9263 .. nonce: Pk02YC .. section: Documentation

Add remaining doc links to source code for Python-coded modules. Patch by Yoni Lavi.

..

.. bpo: 25285 .. date: 9262 .. nonce: 6CxIBo .. section: Tests

regrtest now uses subprocesses when the -j1 command line option is used: each test file runs in a fresh child process. Before, the -j1 option was ignored.

..

.. bpo: 25285 .. date: 9261 .. nonce: ENYqUQ .. section: Tests

Tools/buildbot/test.bat script now uses -j1 by default to run each test file in fresh child process.

..

.. bpo: 27064 .. date: 9260 .. nonce: xeY1WF .. section: Windows

The py.exe launcher now defaults to Python 3. The Windows launcher py.exe no longer prefers an installed Python 2 version over Python 3 by default when used interactively.

..

.. bpo: 17500 .. date: 9257 .. nonce: QTZbRV .. section: Windows

Remove unused and outdated icons. (See also: https://github.com/python/pythondotorg/issues/945)

..

.. bpo: 27229 .. date: 9259 .. nonce: C2NDch .. section: Build

Fix the cross-compiling pgen rule for in-tree builds. Patch by Xavier de Gaye.

..

.. bpo: 26930 .. date: 9258 .. nonce: Sqz2O3 .. section: Build

Update OS X 10.5+ 32-bit-only installer to build and link with OpenSSL 1.0.2h.

..

.. bpo: 27186 .. date: 9256 .. nonce: Ll8R-t .. section: C API

Add the PyOS_FSPath() function (part of :pep:519).

..

.. bpo: 26282 .. date: 9255 .. nonce: Rp-R6L .. section: C API

PyArg_ParseTupleAndKeywords() now supports positional-only parameters.

..

.. bpo: 26282 .. date: 9254 .. nonce: DRRV-- .. section: Tools/Demos

Argument Clinic now supports positional-only and keyword parameters in the same function.