cpython/Misc/NEWS.d/3.6.0a2.rst

793 lines
14 KiB
ReStructuredText

.. 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.