.. bpo: 27066
.. date: 9673
.. nonce: SNExZi
.. release date: 2016-06-12
.. section: Core and Builtins

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

..

.. bpo: 20041
.. date: 9672
.. nonce: TypyGp
.. section: Core and Builtins

Fixed TypeError when frame.f_trace is set to None. Patch by Xavier de Gaye.

..

.. bpo: 26168
.. date: 9671
.. nonce: -nPBL6
.. section: Core and Builtins

Fixed possible refleaks in failing Py_BuildValue() with the "N" format unit.

..

.. bpo: 26991
.. date: 9670
.. nonce: yWGNhz
.. section: Core and Builtins

Fix possible refleak when creating a function with annotations.

..

.. bpo: 27039
.. date: 9669
.. nonce: Zj7tV7
.. section: Core and Builtins

Fixed bytearray.remove() for values greater than 127.  Patch by Joe Jevnik.

..

.. bpo: 23640
.. date: 9668
.. nonce: kvNC4c
.. section: Core and Builtins

int.from_bytes() no longer bypasses constructors for subclasses.

..

.. bpo: 26811
.. date: 9667
.. nonce: oNzUWt
.. section: Core and Builtins

gc.get_objects() no longer contains a broken tuple with NULL pointer.

..

.. bpo: 20120
.. date: 9666
.. nonce: c-FZZc
.. section: Core and Builtins

Use RawConfigParser for .pypirc parsing, removing support for interpolation
unintentionally added with move to Python 3. Behavior no longer does any
interpolation in .pypirc files, matching behavior in Python 2.7 and
Setuptools 19.0.

..

.. bpo: 26659
.. date: 9665
.. nonce: 5PRa83
.. section: Core and Builtins

Make the builtin slice type support cycle collection.

..

.. bpo: 26718
.. date: 9664
.. nonce: K5PQ8j
.. section: Core and Builtins

super.__init__ no longer leaks memory if called multiple times. NOTE: A
direct call of super.__init__ is not endorsed!

..

.. bpo: 25339
.. date: 9663
.. nonce: ZcaC2E
.. section: Core and Builtins

PYTHONIOENCODING now has priority over locale in setting the error handler
for stdin and stdout.

..

.. bpo: 26494
.. date: 9662
.. nonce: G6eXIi
.. section: Core and Builtins

Fixed crash on iterating exhausting iterators. Affected classes are generic
sequence iterators, iterators of str, bytes, bytearray, list, tuple, set,
frozenset, dict, OrderedDict, corresponding views and os.scandir() iterator.

..

.. bpo: 26581
.. date: 9661
.. nonce: yNA7nm
.. section: Core and Builtins

If coding cookie is specified multiple times on a line in Python source code
file, only the first one is taken to account.

..

.. bpo: 26464
.. date: 9660
.. nonce: 7BreGz
.. section: Core and Builtins

Fix str.translate() when string is ASCII and first replacements removes
character, but next replacement uses a non-ASCII character or a string
longer than 1 character. Regression introduced in Python 3.5.0.

..

.. bpo: 22836
.. date: 9659
.. nonce: cimt1y
.. section: Core and Builtins

Ensure exception reports from PyErr_Display() and PyErr_WriteUnraisable()
are sensible even when formatting them produces secondary errors.  This
affects the reports produced by sys.__excepthook__() and when __del__()
raises an exception.

..

.. bpo: 26302
.. date: 9658
.. nonce: UD9XQt
.. section: Core and Builtins

Correct behavior to reject comma as a legal character for cookie names.

..

.. bpo: 4806
.. date: 9657
.. nonce: i9m3hj
.. section: Core and Builtins

Avoid masking the original TypeError exception when using star (``*``)
unpacking in function calls.  Based on patch by Hagen Fürstenau and Daniel
Urban.

..

.. bpo: 27138
.. date: 9656
.. nonce: ifYEro
.. section: Core and Builtins

Fix the doc comment for FileFinder.find_spec().

..

.. bpo: 26154
.. date: 9655
.. nonce: MtnRAH
.. section: Core and Builtins

Add a new private _PyThreadState_UncheckedGet() function to get the current
Python thread state, but don't issue a fatal error if it is NULL. This new
function must be used instead of accessing directly the
_PyThreadState_Current variable.  The variable is no more exposed since
Python 3.5.1 to hide the exact implementation of atomic C types, to avoid
compiler issues.

..

.. bpo: 26194
.. date: 9654
.. nonce: j9zand
.. section: Core and Builtins

Deque.insert() gave odd results for bounded deques that had reached their
maximum size.  Now an IndexError will be raised when attempting to insert
into a full deque.

..

.. bpo: 25843
.. date: 9653
.. nonce: t2kGug
.. section: Core and Builtins

When compiling code, don't merge constants if they are equal but have a
different types. For example, ``f1, f2 = lambda: 1, lambda: 1.0`` is now
correctly compiled to two different functions: ``f1()`` returns ``1``
(``int``) and ``f2()`` returns ``1.0`` (``int``), even if ``1`` and ``1.0``
are equal.

..

.. bpo: 22995
.. date: 9652
.. nonce: KYNKvs
.. section: Core and Builtins

[UPDATE] Comment out the one of the pickleability tests in
_PyObject_GetState() due to regressions observed in Cython-based projects.

..

.. bpo: 25961
.. date: 9651
.. nonce: Hdjjw0
.. section: Core and Builtins

Disallowed null characters in the type name.

..

.. bpo: 25973
.. date: 9650
.. nonce: Ud__ZP
.. section: Core and Builtins

Fix segfault when an invalid nonlocal statement binds a name starting with
two underscores.

..

.. bpo: 22995
.. date: 9649
.. nonce: Wq0E86
.. section: Core and Builtins

Instances of extension types with a state that aren't subclasses of list or
dict and haven't implemented any pickle-related methods (__reduce__,
__reduce_ex__, __getnewargs__, __getnewargs_ex__, or __getstate__), can no
longer be pickled.  Including memoryview.

..

.. bpo: 20440
.. date: 9648
.. nonce: GCwOfH
.. section: Core and Builtins

Massive replacing unsafe attribute setting code with special macro
Py_SETREF.

..

.. bpo: 25766
.. date: 9647
.. nonce: jn93Yu
.. section: Core and Builtins

Special method __bytes__() now works in str subclasses.

..

.. bpo: 25421
.. date: 9646
.. nonce: c47YEL
.. section: Core and Builtins

__sizeof__ methods of builtin types now use dynamic basic size. This allows
sys.getsize() to work correctly with their subclasses with __slots__
defined.

..

.. bpo: 25709
.. date: 9645
.. nonce: WwGm2k
.. section: Core and Builtins

Fixed problem with in-place string concatenation and utf-8 cache.

..

.. bpo: 27147
.. date: 9644
.. nonce: tCCgmH
.. section: Core and Builtins

Mention PEP 420 in the importlib docs.

..

.. bpo: 24097
.. date: 9643
.. nonce: Vt4E-i
.. section: Core and Builtins

Fixed crash in object.__reduce__() if slot name is freed inside __getattr__.

..

.. bpo: 24731
.. date: 9642
.. nonce: h9-hnz
.. section: Core and Builtins

Fixed crash on converting objects with special methods __bytes__, __trunc__,
and __float__ returning instances of subclasses of bytes, int, and float to
subclasses of bytes, int, and float correspondingly.

..

.. bpo: 26478
.. date: 9641
.. nonce: n0dB8e
.. section: Core and Builtins

Fix semantic bugs when using binary operators with dictionary views and
tuples.

..

.. bpo: 26171
.. date: 9640
.. nonce: 8SaQEa
.. section: Core and Builtins

Fix possible integer overflow and heap corruption in zipimporter.get_data().

..

.. bpo: 25660
.. date: 9639
.. nonce: 93DzBo
.. section: Core and Builtins

Fix TAB key behaviour in REPL with readline.

..

.. bpo: 25887
.. date: 9638
.. nonce: PtVIX7
.. section: Core and Builtins

Raise a RuntimeError when a coroutine object is awaited more than once.

..

.. bpo: 27243
.. date: 9637
.. 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: 26556
.. date: 9636
.. nonce: v5j2uL
.. original section: Library
.. section: Security

Update expat to 2.1.1, fixes CVE-2015-1283.

..

.. bpo: 0
.. date: 9635
.. nonce: E4ochz
.. original section: Library
.. section: Security

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

..

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

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

..

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

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

..

.. bpo: 0
.. date: 9632
.. 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: 9631
.. 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: 9630
.. nonce: W30MBr
.. section: Library

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

..

.. bpo: 26839
.. date: 9629
.. 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: 27164
.. date: 9628
.. 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: 9627
.. 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: 26809
.. date: 9626
.. nonce: ya7JMb
.. section: Library

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

..

.. bpo: 26373
.. date: 9625
.. 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: 21776
.. date: 9624
.. nonce: 04eQfa
.. section: Library

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

..

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

Fix SSLContext._load_windows_store_certs fails with PermissionError

..

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

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

..

.. bpo: 27057
.. date: 9621
.. nonce: YzTA_Q
.. section: Library

Fix os.set_inheritable() on Android, ioctl() is blocked by SELinux and fails
with EACCESS. The function now falls back to fcntl(). Patch written by
Michał Bednarski.

..

.. bpo: 27014
.. date: 9620
.. nonce: ui7Khn
.. section: Library

Fix infinite recursion using typing.py.  Thanks to Kalle Tuure!

..

.. bpo: 14132
.. date: 9619
.. nonce: 5wR9MN
.. section: Library

Fix urllib.request redirect handling when the target only has a query
string.  Original fix by Ján Janech.

..

.. bpo: 17214
.. date: 9618
.. nonce: lUbZOV
.. section: Library

The "urllib.request" module now percent-encodes non-ASCII bytes found in
redirect target URLs.  Some servers send Location header fields with
non-ASCII bytes, but "http.client" requires the request target to be
ASCII-encodable, otherwise a UnicodeEncodeError is raised.  Based on patch by
Christian Heimes.

..

.. bpo: 26892
.. date: 9617
.. nonce: XIXb0h
.. section: Library

Honor debuglevel flag in urllib.request.HTTPHandler. Patch contributed by
Chi Hsuan Yen.

..

.. bpo: 22274
.. date: 9616
.. nonce: 0RHDMN
.. section: Library

In the subprocess module, allow stderr to be redirected to stdout even when
stdout is not redirected.  Patch by Akira Li.

..

.. bpo: 26807
.. date: 9615
.. nonce: LXSPP6
.. section: Library

mock_open 'files' no longer error on readline at end of file. Patch from
Yolanda Robla.

..

.. bpo: 25745
.. date: 9614
.. nonce: -n8acU
.. section: Library

Fixed leaking a userptr in curses panel destructor.

..

.. bpo: 26977
.. date: 9613
.. nonce: 5G4HtL
.. section: Library

Removed unnecessary, and ignored, call to sum of squares helper in
statistics.pvariance.

..

.. bpo: 26881
.. date: 9612
.. nonce: mdiq_L
.. section: Library

The modulefinder module now supports extended opcode arguments.

..

.. bpo: 23815
.. date: 9611
.. nonce: _krNe8
.. section: Library

Fixed crashes related to directly created instances of types in _tkinter and
curses.panel modules.

..

.. bpo: 17765
.. date: 9610
.. nonce: hiSVS1
.. section: Library

weakref.ref() no longer silently ignores keyword arguments. Patch by Georg
Brandl.

..

.. bpo: 26873
.. date: 9609
.. nonce: cYXRcH
.. section: Library

xmlrpc now raises ResponseError on unsupported type tags instead of silently
return incorrect result.

..

.. bpo: 26711
.. date: 9608
.. nonce: Eu85Qw
.. section: Library

Fixed the comparison of plistlib.Data with other types.

..

.. bpo: 24114
.. date: 9607
.. nonce: RMRMtM
.. section: Library

Fix an uninitialized variable in `ctypes.util`.

The bug only occurs on SunOS when the ctypes implementation searches for the
`crle` program.  Patch by Xiang Zhang.  Tested on SunOS by Kees Bos.

..

.. bpo: 26864
.. date: 9606
.. nonce: 1KgGds
.. section: Library

In urllib.request, change the proxy bypass host checking against no_proxy to
be case-insensitive, and to not match unrelated host names that happen to
have a bypassed hostname as a suffix.  Patch by Xiang Zhang.

..

.. bpo: 26634
.. date: 9605
.. nonce: FZvsSb
.. section: Library

recursive_repr() now sets __qualname__ of wrapper.  Patch by Xiang Zhang.

..

.. bpo: 26804
.. date: 9604
.. nonce: 9Orp-G
.. section: Library

urllib.request will prefer lower_case proxy environment variables over
UPPER_CASE or Mixed_Case ones. Patch contributed by Hans-Peter Jansen.

..

.. bpo: 26837
.. date: 9603
.. nonce: 2FXGsD
.. section: Library

assertSequenceEqual() now correctly outputs non-stringified differing items
(like bytes in the -b mode).  This affects assertListEqual() and
assertTupleEqual().

..

.. bpo: 26041
.. date: 9602
.. nonce: bVem-p
.. section: Library

Remove "will be removed in Python 3.7" from deprecation messages of
platform.dist() and platform.linux_distribution(). Patch by Kumaripaba
Miyurusara Athukorala.

..

.. bpo: 26822
.. date: 9601
.. nonce: rYSL4W
.. section: Library

itemgetter, attrgetter and methodcaller objects no longer silently ignore
keyword arguments.

..

.. bpo: 26733
.. date: 9600
.. nonce: YxaJmL
.. section: Library

Disassembling a class now disassembles class and static methods. Patch by
Xiang Zhang.

..

.. bpo: 26801
.. date: 9599
.. nonce: TQGY-7
.. section: Library

Fix error handling in :func:`shutil.get_terminal_size`, catch
:exc:`AttributeError` instead of :exc:`NameError`. Patch written by Emanuel
Barry.

..

.. bpo: 24838
.. date: 9598
.. nonce: 3Pfx8T
.. section: Library

tarfile's ustar and gnu formats now correctly calculate name and link field
limits for multibyte character encodings like utf-8.

..

.. bpo: 26657
.. date: 9597
.. nonce: C_-XFg
.. original section: Library
.. section: Security

Fix directory traversal vulnerability with http.server on Windows.  This
fixes a regression that was introduced in 3.3.4rc1 and 3.4.0rc1.  Based on
patch by Philipp Hagemeister.

..

.. bpo: 26717
.. date: 9596
.. nonce: jngTdu
.. section: Library

Stop encoding Latin-1-ized WSGI paths with UTF-8.  Patch by Anthony Sottile.

..

.. bpo: 26735
.. date: 9595
.. nonce: riSl3b
.. section: Library

Fix :func:`os.urandom` on Solaris 11.3 and newer when reading more than
1,024 bytes: call ``getrandom()`` multiple times with a limit of 1024 bytes
per call.

..

.. bpo: 16329
.. date: 9594
.. nonce: nuXD8W
.. section: Library

Add .webm to mimetypes.types_map.  Patch by Giampaolo Rodola'.

..

.. bpo: 13952
.. date: 9593
.. nonce: SOoTVE
.. section: Library

Add .csv to mimetypes.types_map.  Patch by Geoff Wilson.

..

.. bpo: 26709
.. date: 9592
.. nonce: luOPbP
.. section: Library

Fixed Y2038 problem in loading binary PLists.

..

.. bpo: 23735
.. date: 9591
.. nonce: Y5oQ9r
.. section: Library

Handle terminal resizing with Readline 6.3+ by installing our own SIGWINCH
handler.  Patch by Eric Price.

..

.. bpo: 26586
.. date: 9590
.. nonce: V5pZNa
.. section: Library

In http.server, respond with "413 Request header fields too large" if there
are too many header fields to parse, rather than killing the connection and
raising an unhandled exception.  Patch by Xiang Zhang.

..

.. bpo: 22854
.. date: 9589
.. nonce: K3rMEH
.. section: Library

Change BufferedReader.writable() and BufferedWriter.readable() to always
return False.

..

.. bpo: 25195
.. date: 9588
.. nonce: EOc4Po
.. section: Library

Fix a regression in mock.MagicMock. _Call is a subclass of tuple (changeset
3603bae63c13 only works for classes) so we need to implement __ne__
ourselves.  Patch by Andrew Plummer.

..

.. bpo: 26644
.. date: 9587
.. nonce: 7tt1tk
.. section: Library

Raise ValueError rather than SystemError when a negative length is passed to
SSLSocket.recv() or read().

..

.. bpo: 23804
.. date: 9586
.. nonce: PP63Ff
.. section: Library

Fix SSL recv(0) and read(0) methods to return zero bytes instead of up to
1024.

..

.. bpo: 26616
.. date: 9585
.. nonce: v3QwdD
.. section: Library

Fixed a bug in datetime.astimezone() method.

..

.. bpo: 21925
.. date: 9584
.. nonce: _fr69L
.. section: Library

:func:`warnings.formatwarning` now catches exceptions on
``linecache.getline(...)`` to be able to log :exc:`ResourceWarning` emitted
late during the Python shutdown process.

..

.. bpo: 24266
.. date: 9583
.. nonce: YZgVyM
.. section: Library

Ctrl+C during Readline history search now cancels the search mode when
compiled with Readline 7.

..

.. bpo: 26560
.. date: 9582
.. nonce: A4WXNz
.. section: Library

Avoid potential ValueError in BaseHandler.start_response. Initial patch by
Peter Inglesby.

..

.. bpo: 26313
.. date: 9581
.. nonce: LjZAjy
.. original section: Library
.. section: Security

ssl.py _load_windows_store_certs fails if windows cert store is empty. Patch
by Baji.

..

.. bpo: 26569
.. date: 9580
.. nonce: EX8vF1
.. section: Library

Fix :func:`pyclbr.readmodule` and :func:`pyclbr.readmodule_ex` to support
importing packages.

..

.. bpo: 26499
.. date: 9579
.. nonce: NP08PI
.. section: Library

Account for remaining Content-Length in HTTPResponse.readline() and read1().
Based on patch by Silent Ghost. Also document that HTTPResponse now supports
these methods.

..

.. bpo: 25320
.. date: 9578
.. nonce: V96LIy
.. section: Library

Handle sockets in directories unittest discovery is scanning. Patch from
Victor van den Elzen.

..

.. bpo: 16181
.. date: 9577
.. nonce: P7lLvo
.. section: Library

cookiejar.http2time() now returns None if year is higher than
datetime.MAXYEAR.

..

.. bpo: 26513
.. date: 9576
.. nonce: HoPepy
.. section: Library

Fixes platform module detection of Windows Server

..

.. bpo: 23718
.. date: 9575
.. nonce: AMPC0o
.. section: Library

Fixed parsing time in week 0 before Jan 1.  Original patch by Tamás Bence
Gedai.

..

.. bpo: 20589
.. date: 9574
.. nonce: NsQ_I1
.. section: Library

Invoking Path.owner() and Path.group() on Windows now raise
NotImplementedError instead of ImportError.

..

.. bpo: 26177
.. date: 9573
.. nonce: HlSWer
.. section: Library

Fixed the keys() method for Canvas and Scrollbar widgets.

..

.. bpo: 15068
.. date: 9572
.. nonce: bcHtiw
.. section: Library

Got rid of excessive buffering in the fileinput module. The bufsize
parameter is no longer used.

..

.. bpo: 2202
.. date: 9571
.. nonce: dk9sd0
.. section: Library

Fix UnboundLocalError in AbstractDigestAuthHandler.get_algorithm_impls.
Initial patch by Mathieu Dupuy.

..

.. bpo: 25718
.. date: 9570
.. nonce: 4EjZyv
.. section: Library

Fixed pickling and copying the accumulate() iterator with total is None.

..

.. bpo: 26475
.. date: 9569
.. nonce: JXVccY
.. section: Library

Fixed debugging output for regular expressions with the (?x) flag.

..

.. bpo: 26457
.. date: 9568
.. nonce: Xe6Clh
.. section: Library

Fixed the subnets() methods in IP network classes for the case when
resulting prefix length is equal to maximal prefix length. Based on patch by
Xiang Zhang.

..

.. bpo: 26385
.. date: 9567
.. nonce: 50bDXm
.. section: Library

Remove the file if the internal open() call in NamedTemporaryFile() fails.
Patch by Silent Ghost.

..

.. bpo: 26402
.. date: 9566
.. nonce: k7DVuU
.. section: Library

Fix XML-RPC client to retry when the server shuts down a persistent
connection.  This was a regression related to the new
http.client.RemoteDisconnected exception in 3.5.0a4.

..

.. bpo: 25913
.. date: 9565
.. nonce: 5flb95
.. section: Library

Leading ``<~`` is optional now in base64.a85decode() with adobe=True.  Patch
by Swati Jaiswal.

..

.. bpo: 26186
.. date: 9564
.. nonce: R9rfiL
.. section: Library

Remove an invalid type check in importlib.util.LazyLoader.

..

.. bpo: 26367
.. date: 9563
.. nonce: ckpNeU
.. section: Library

importlib.__import__() raises SystemError like builtins.__import__() when
``level`` is specified but without an accompanying package specified.

..

.. bpo: 26309
.. date: 9562
.. nonce: ubEeiz
.. section: Library

In the "socketserver" module, shut down the request (closing the connected
socket) when verify_request() returns false.  Patch by Aviv Palivoda.

..

.. bpo: 25939
.. date: 9561
.. nonce: X49Fqd
.. original section: Library
.. section: Security

On Windows open the cert store readonly in ssl.enum_certificates.

..

.. bpo: 25995
.. date: 9560
.. nonce: NfcimP
.. section: Library

os.walk() no longer uses FDs proportional to the tree depth.

..

.. bpo: 26117
.. date: 9559
.. nonce: ne6p11
.. section: Library

The os.scandir() iterator now closes file descriptor not only when the
iteration is finished, but when it was failed with error.

..

.. bpo: 25911
.. date: 9558
.. nonce: d4Zadh
.. section: Library

Restored support of bytes paths in os.walk() on Windows.

..

.. bpo: 26045
.. date: 9557
.. nonce: WmzUrX
.. section: Library

Add UTF-8 suggestion to error message when posting a non-Latin-1 string with
http.client.

..

.. bpo: 12923
.. date: 9556
.. nonce: HPAu-B
.. section: Library

Reset FancyURLopener's redirect counter even if there is an exception.
Based on patches by Brian Brazil and Daniel Rocco.

..

.. bpo: 25945
.. date: 9555
.. nonce: guNgNM
.. section: Library

Fixed a crash when unpickle the functools.partial object with wrong state.
Fixed a leak in failed functools.partial constructor. "args" and "keywords"
attributes of functools.partial have now always types tuple and dict
correspondingly.

..

.. bpo: 26202
.. date: 9554
.. nonce: LPIXLg
.. section: Library

copy.deepcopy() now correctly copies range() objects with non-atomic
attributes.

..

.. bpo: 23076
.. date: 9553
.. nonce: 8rphoP
.. section: Library

Path.glob() now raises a ValueError if it's called with an invalid pattern.
Patch by Thomas Nyberg.

..

.. bpo: 19883
.. date: 9552
.. nonce: z9TsO6
.. section: Library

Fixed possible integer overflows in zipimport.

..

.. bpo: 26227
.. date: 9551
.. nonce: Fe6oiB
.. section: Library

On Windows, getnameinfo(), gethostbyaddr() and gethostbyname_ex() functions
of the socket module now decode the hostname from the ANSI code page rather
than UTF-8.

..

.. bpo: 26147
.. date: 9550
.. nonce: i-Jc01
.. section: Library

xmlrpc now works with strings not encodable with used non-UTF-8 encoding.

..

.. bpo: 25935
.. date: 9549
.. nonce: cyni91
.. section: Library

Garbage collector now breaks reference loops with OrderedDict.

..

.. bpo: 16620
.. date: 9548
.. nonce: rxpn_Y
.. section: Library

Fixed AttributeError in msilib.Directory.glob().

..

.. bpo: 26013
.. date: 9547
.. nonce: 93RKNz
.. section: Library

Added compatibility with broken protocol 2 pickles created in old Python 3
versions (3.4.3 and lower).

..

.. bpo: 25850
.. date: 9546
.. nonce: jwFPxj
.. section: Library

Use cross-compilation by default for 64-bit Windows.

..

.. bpo: 17633
.. date: 9545
.. nonce: 9mpbUO
.. section: Library

Improve zipimport's support for namespace packages.

..

.. bpo: 24705
.. date: 9544
.. nonce: IZYwjR
.. section: Library

Fix sysconfig._parse_makefile not expanding ${} vars appearing before $()
vars.

..

.. bpo: 22138
.. date: 9543
.. nonce: nRNYkc
.. section: Library

Fix mock.patch behavior when patching descriptors. Restore original values
after patching. Patch contributed by Sean McCully.

..

.. bpo: 25672
.. date: 9542
.. nonce: fw9RJP
.. section: Library

In the ssl module, enable the SSL_MODE_RELEASE_BUFFERS mode option if it is
safe to do so.

..

.. bpo: 26012
.. date: 9541
.. nonce: IFSXNm
.. section: Library

Don't traverse into symlinks for ``**`` pattern in pathlib.Path.[r]glob().

..

.. bpo: 24120
.. date: 9540
.. nonce: Yiwa0h
.. section: Library

Ignore PermissionError when traversing a tree with pathlib.Path.[r]glob().
Patch by Ulrich Petri.

..

.. bpo: 25447
.. date: 9539
.. nonce: -4m4xO
.. section: Library

fileinput now uses sys.stdin as-is if it does not have a buffer attribute
(restores backward compatibility).

..

.. bpo: 25447
.. date: 9538
.. nonce: AtHkWA
.. section: Library

Copying the lru_cache() wrapper object now always works, independently from
the type of the wrapped object (by returning the original object unchanged).

..

.. bpo: 24103
.. date: 9537
.. nonce: WufqrQ
.. section: Library

Fixed possible use after free in ElementTree.XMLPullParser.

..

.. bpo: 25860
.. date: 9536
.. nonce: 0hActb
.. section: Library

os.fwalk() no longer skips remaining directories when error occurs.
Original patch by Samson Lee.

..

.. bpo: 25914
.. date: 9535
.. nonce: h0V61F
.. section: Library

Fixed and simplified OrderedDict.__sizeof__.

..

.. bpo: 25902
.. date: 9534
.. nonce: 6t2FmH
.. section: Library

Fixed various refcount issues in ElementTree iteration.

..

.. bpo: 25717
.. date: 9533
.. nonce: 0_xjaK
.. section: Library

Restore the previous behaviour of tolerating most fstat() errors when
opening files.  This was a regression in 3.5a1, and stopped anonymous
temporary files from working in special cases.

..

.. bpo: 24903
.. date: 9532
.. nonce: 3LBdzb
.. section: Library

Fix regression in number of arguments compileall accepts when '-d' is
specified.  The check on the number of arguments has been dropped completely
as it never worked correctly anyway.

..

.. bpo: 25764
.. date: 9531
.. nonce: 7WWG07
.. section: Library

In the subprocess module, preserve any exception caused by fork() failure
when preexec_fn is used.

..

.. bpo: 6478
.. date: 9530
.. nonce: -Bi9Hb
.. section: Library

_strptime's regexp cache now is reset after changing timezone with
time.tzset().

..

.. bpo: 14285
.. date: 9529
.. nonce: UyG8Hj
.. section: Library

When executing a package with the "python -m package" option, and package
initialization fails, a proper traceback is now reported.  The "runpy"
module now lets exceptions from package initialization pass back to the
caller, rather than raising ImportError.

..

.. bpo: 19771
.. date: 9528
.. nonce: 5NG-bg
.. section: Library

Also in runpy and the "-m" option, omit the irrelevant message ". . . is a
package and cannot be directly executed" if the package could not even be
initialized (e.g. due to a bad ``*.pyc`` file).

..

.. bpo: 25177
.. date: 9527
.. nonce: aNR4Ha
.. section: Library

Fixed problem with the mean of very small and very large numbers. As a side
effect, statistics.mean and statistics.variance should be significantly
faster.

..

.. bpo: 25718
.. date: 9526
.. nonce: D9mHZF
.. section: Library

Fixed copying object with state with boolean value is false.

..

.. bpo: 10131
.. date: 9525
.. nonce: a7tptz
.. section: Library

Fixed deep copying of minidom documents.  Based on patch by Marian Ganisin.

..

.. bpo: 25725
.. date: 9524
.. nonce: XIKv3R
.. section: Library

Fixed a reference leak in pickle.loads() when unpickling invalid data
including tuple instructions.

..

.. bpo: 25663
.. date: 9523
.. nonce: Ofwfqa
.. section: Library

In the Readline completer, avoid listing duplicate global names, and search
the global namespace before searching builtins.

..

.. bpo: 25688
.. date: 9522
.. nonce: 8P1HOv
.. section: Library

Fixed file leak in ElementTree.iterparse() raising an error.

..

.. bpo: 23914
.. date: 9521
.. nonce: 1sEz4J
.. section: Library

Fixed SystemError raised by unpickler on broken pickle data.

..

.. bpo: 25691
.. date: 9520
.. nonce: ZEaapY
.. section: Library

Fixed crash on deleting ElementTree.Element attributes.

..

.. bpo: 25624
.. date: 9519
.. nonce: ed-fM0
.. section: Library

ZipFile now always writes a ZIP_STORED header for directory entries.  Patch
by Dingyuan Wang.

..

.. bpo: 0
.. date: 9518
.. nonce: rtZyid
.. section: Library

Skip getaddrinfo if host is already resolved. Patch by A. Jesse Jiryu Davis.

..

.. bpo: 26050
.. date: 9517
.. nonce: sclyvk
.. section: Library

Add asyncio.StreamReader.readuntil() method. Patch by Марк Коренберг.

..

.. bpo: 25924
.. date: 9516
.. nonce: Uxr2vt
.. section: Library

Avoid unnecessary serialization of getaddrinfo(3) calls on OS X versions
10.5 or higher.  Original patch by A. Jesse Jiryu Davis.

..

.. bpo: 26406
.. date: 9515
.. nonce: ihvhF4
.. section: Library

Avoid unnecessary serialization of getaddrinfo(3) calls on current versions
of OpenBSD and NetBSD.  Patch by A. Jesse Jiryu Davis.

..

.. bpo: 26848
.. date: 9514
.. nonce: ChBOpQ
.. section: Library

Fix asyncio/subprocess.communicate() to handle empty input. Patch by Jack
O'Connor.

..

.. bpo: 27040
.. date: 9513
.. nonce: UASyCC
.. section: Library

Add loop.get_exception_handler method

..

.. bpo: 27041
.. date: 9512
.. nonce: p3893U
.. section: Library

asyncio: Add loop.create_future method

..

.. bpo: 27223
.. date: 9511
.. nonce: PRf4I6
.. section: Library

asyncio: Fix _read_ready and _write_ready to respect _conn_lost. Patch by
Łukasz Langa.

..

.. bpo: 22970
.. date: 9510
.. nonce: WhdhyM
.. section: Library

asyncio: Fix inconsistency cancelling Condition.wait. Patch by David Coles.

..

.. bpo: 5124
.. date: 9509
.. 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: 24759
.. date: 9508
.. 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: 9507
.. 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: 9506
.. 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: 27117
.. date: 9505
.. 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: 26673
.. date: 9504
.. 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: 9503
.. nonce: pWz-OK
.. section: IDLE

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

..

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

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

..

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

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

..

.. bpo: 21703
.. date: 9500
.. nonce: BAZfDM
.. section: IDLE

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

..

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

Add ConfigDialog.remove_var_callbacks to stop memory leaks.

..

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

Add more asserts to test_delegator.

..

.. bpo: 20640
.. date: 9497
.. nonce: PmI-G8
.. section: IDLE

Add tests for idlelib.configHelpSourceEdit. Patch by Saimadhav Heblikar.

..

.. bpo: 0
.. date: 9496
.. nonce: _YJfG7
.. section: IDLE

In the 'IDLE-console differences' section of the IDLE doc, clarify how
running with IDLE affects sys.modules and the standard streams.

..

.. bpo: 25507
.. date: 9495
.. nonce: i8bNpk
.. section: IDLE

fix incorrect change in IOBinding that prevented printing. Augment IOBinding
htest to include all major IOBinding functions.

..

.. bpo: 25905
.. date: 9494
.. nonce: FzNb3B
.. section: IDLE

Revert unwanted conversion of ' to ’ RIGHT SINGLE QUOTATION MARK in
README.txt and open this and NEWS.txt with 'ascii'. Re-encode CREDITS.txt to
utf-8 and open it with 'utf-8'.

..

.. bpo: 19489
.. date: 9493
.. nonce: jvzuO7
.. section: Documentation

Moved the search box from the sidebar to the header and footer of each page.
Patch by Ammar Askar.

..

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

Document the new PEP 448 unpacking syntax of 3.5.

..

.. bpo: 26736
.. date: 9491
.. nonce: U_Hyqo
.. section: Documentation

Used HTTPS for external links in the documentation if possible.

..

.. bpo: 6953
.. date: 9490
.. nonce: Zk6rno
.. section: Documentation

Rework the Readline module documentation to group related functions
together, and add more details such as what underlying Readline functions
and variables are accessed.

..

.. bpo: 23606
.. date: 9489
.. nonce: 9MhIso
.. section: Documentation

Adds note to ctypes documentation regarding cdll.msvcrt.

..

.. bpo: 25500
.. date: 9488
.. nonce: AV47eF
.. section: Documentation

Fix documentation to not claim that __import__ is searched for in the global
scope.

..

.. bpo: 26014
.. date: 9487
.. nonce: ptdZ_I
.. section: Documentation

Update 3.x packaging documentation: * "See also" links to the new docs are
now provided in the legacy pages * links to setuptools documentation have
been updated

..

.. bpo: 21916
.. date: 9486
.. nonce: muwCyp
.. section: Tests

Added tests for the turtle module.  Patch by ingrid, Gregory Loyse and Jelle
Zijlstra.

..

.. bpo: 26523
.. date: 9485
.. nonce: em_Uzt
.. section: Tests

The multiprocessing thread pool (multiprocessing.dummy.Pool) was untested.

..

.. bpo: 26015
.. date: 9484
.. nonce: p3oWK3
.. section: Tests

Added new tests for pickling iterators of mutable sequences.

..

.. bpo: 26325
.. date: 9483
.. nonce: KOUc82
.. section: Tests

Added test.support.check_no_resource_warning() to check that no
ResourceWarning is emitted.

..

.. bpo: 25940
.. date: 9482
.. nonce: PgiLVN
.. section: Tests

Changed test_ssl to use self-signed.pythontest.net.  This avoids relying on
svn.python.org, which recently changed root certificate.

..

.. bpo: 25616
.. date: 9481
.. nonce: Qr-60p
.. section: Tests

Tests for OrderedDict are extracted from test_collections into separate file
test_ordered_dict.

..

.. bpo: 26583
.. date: 9480
.. nonce: Up7hTl
.. section: Tests

Skip test_timestamp_overflow in test_import if bytecode files cannot be
written.

..

.. bpo: 26884
.. date: 9479
.. nonce: O8-azL
.. section: Build

Fix linking extension modules for cross builds. Patch by Xavier de Gaye.

..

.. bpo: 22359
.. date: 9478
.. nonce: HDjM4s
.. section: Build

Disable the rules for running _freeze_importlib and pgen when
cross-compiling.  The output of these programs is normally saved with the
source code anyway, and is still regenerated when doing a native build.
Patch by Xavier de Gaye.

..

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

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

..

.. bpo: 21668
.. date: 9476
.. nonce: 4sMAa1
.. section: Build

Link audioop, _datetime, _ctypes_test modules to libm, except on Mac OS X.
Patch written by Xavier de Gaye.

..

.. bpo: 25702
.. date: 9475
.. nonce: ipxyJs
.. section: Build

A --with-lto configure option has been added that will enable link time
optimizations at build time during a make profile-opt. Some compilers and
toolchains are known to not produce stable code when using LTO, be sure to
test things thoroughly before relying on it. It can provide a few % speed up
over profile-opt alone.

..

.. bpo: 26624
.. date: 9474
.. nonce: 4fGrTl
.. section: Build

Adds validation of ucrtbase[d].dll version with warning for old versions.

..

.. bpo: 17603
.. date: 9473
.. nonce: 102DA-
.. section: Build

Avoid error about nonexistant fileblocks.o file by using a lower-level check
for st_blocks in struct stat.

..

.. bpo: 26079
.. date: 9472
.. nonce: mEzW0O
.. section: Build

Fixing the build output folder for tix-8.4.3.6. Patch by Bjoern Thiel.

..

.. bpo: 26465
.. date: 9471
.. nonce: _YR608
.. section: Build

Update Windows builds to use OpenSSL 1.0.2g.

..

.. bpo: 24421
.. date: 9470
.. nonce: 2zY7vM
.. section: Build

Compile Modules/_math.c once, before building extensions. Previously it
could fail to compile properly if the math and cmath builds were concurrent.

..

.. bpo: 25348
.. date: 9469
.. nonce: u6_BaQ
.. section: Build

Added ``--pgo`` and ``--pgo-job`` arguments to ``PCbuild\build.bat`` for
building with Profile-Guided Optimization.  The old
``PCbuild\build_pgo.bat`` script is now deprecated, and simply calls
``PCbuild\build.bat --pgo %*``.

..

.. bpo: 25827
.. date: 9468
.. nonce: yg3DMM
.. section: Build

Add support for building with ICC to ``configure``, including a new
``--with-icc`` flag.

..

.. bpo: 25696
.. date: 9467
.. nonce: 2R_wIv
.. section: Build

Fix installation of Python on UNIX with make -j9.

..

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

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

..

.. bpo: 26268
.. date: 9465
.. nonce: I3-YLh
.. section: Build

Update Windows builds to use OpenSSL 1.0.2f.

..

.. bpo: 25136
.. date: 9464
.. nonce: Vi-fmO
.. section: Build

Support Apple Xcode 7's new textual SDK stub libraries.

..

.. bpo: 24324
.. date: 9463
.. nonce: m6DZMx
.. section: Build

Do not enable unreachable code warnings when using gcc as the option does
not work correctly in older versions of gcc and has been silently removed as
of gcc-4.5.

..

.. bpo: 27053
.. date: 9462
.. nonce: 1IRbae
.. section: Windows

Updates make_zip.py to correctly generate library ZIP file.

..

.. bpo: 26268
.. date: 9461
.. nonce: Z-lJEh
.. section: Windows

Update the prepare_ssl.py script to handle OpenSSL releases that don't
include the contents of the include directory (that is, 1.0.2e and later).

..

.. bpo: 26071
.. date: 9460
.. nonce: wLxL2l
.. section: Windows

bdist_wininst created binaries fail to start and find 32bit Python

..

.. bpo: 26073
.. date: 9459
.. nonce: XwWgHp
.. section: Windows

Update the list of magic numbers in launcher

..

.. bpo: 26065
.. date: 9458
.. nonce: SkVLJp
.. section: Windows

Excludes venv from library when generating embeddable distro.

..

.. bpo: 26799
.. date: 9457
.. nonce: gK2VXX
.. section: Tools/Demos

Fix python-gdb.py: don't get C types once when the Python code is loaded,
but get C types on demand. The C types can change if python-gdb.py is loaded
before the Python executable. Patch written by Thomas Ilsche.

..

.. bpo: 26271
.. date: 9456
.. nonce: wg-rzr
.. section: Tools/Demos

Fix the Freeze tool to properly use flags passed through configure. Patch by
Daniel Shaulov.

..

.. bpo: 26489
.. date: 9455
.. nonce: rJ_U5S
.. section: Tools/Demos

Add dictionary unpacking support to Tools/parser/unparse.py. Patch by Guo Ci
Teo.

..

.. bpo: 26316
.. date: 9454
.. nonce: QJvVOi
.. section: Tools/Demos

Fix variable name typo in Argument Clinic.

..

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

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