Fix asynchronous generators to handle GeneratorExit in athrow() correctly
Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even when there was a custom handler set previously. Patch by Philipp Kerling.
Fixed a leak when the garbage collector fails to add an object with the
__del__
method or referenced by it into the :data:`gc.garbage` list.
:c:func:`PyGC_Collect` can now be called when an exception is set and
preserves it.
Fix signed/unsigned comparison warning in pyhash.c.
Fix a leak in set_symmetric_difference().
Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer.
Fix potential memory leak in normalizestring()
.
Improved error messages in 'async with' when __aenter__()
or
__aexit__()
return non-awaitable object.
Fix ma_version_tag
in dict implementation is uninitialized when copying
from key-sharing dict.
Fixed jumping when the function contains an async for
loop.
Fix an unnecessary ifdef in the include of VersionHelpers.h in socketmodule on Windows.
Fix a crash in ctypes.cast()
in case the type argument is a ctypes
structured data type. Patch by Eryk Sun and Oren Milman.
Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber.
Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) returning None is now treated as naive by the astimezone() method.
Avoid race condition with debug logging
The concatenation (+
) and repetition (*
) sequence operations now
raise :exc:`TypeError` instead of :exc:`SystemError` when performed on
:class:`mmap.mmap` objects. Patch by Zackery Spytz.
Fix gather to propagate cancellation of itself even with return_exceptions.
Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: start immediately the handshake instead of using call_soon(). Previously, data_received() could be called before the handshake started, causing the handshake to hang or fail.
Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's already closed raises AttributeError.
Fix Task.__repr__ crash with Cython's bogus coroutines
Fix RuntimeError after closing loop that used run_in_executor
Use a better regex when breaking usage into wrappable parts. Avoids bogus assertion errors from custom metavar strings.
Fixed a bug in the Python implementation of the JSON decoder that prevented the cache of parsed strings from clearing after finishing the decoding. Based on patch by c-fos.
tempfile._candidate_tempdir_list should consider common TEMP locations
Prevent uuid.get_node
from using a DUID instead of a MAC on Windows.
Patch by Zvi Effron
Fix race condition with ReadTransport.resume_reading
in Windows proactor
event loop.
Minor fixes in typing module: add annotations to NamedTuple.__new__
,
pass *args
and **kwds
in Generic.__new__
. Original PRs by
Paulius Šarka and Chad Dombrova.
Updated alias mapping with glibc 2.27 supported locales.
Fix trailing quotation marks getting deleted when looking up byte/string literals on pydoc. Patch by Andrés Delfino.
Update error message when constructing invalid inspect.Parameters Patch by Donghee Na.
Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when it is called with a single argument.
Fix multiprocessing regression on newer glibcs
Fix quoting of the Comment
attribute of
:class:`http.cookies.SimpleCookie`.
Upgrade bundled version of pip to 10.0.1.
Fixed a crash in the :mod:`parser` module when converting an ST object to a
tree of tuples or lists with line_info=False
and col_info=True
.
Fix FD leak in _SelectorSocketTransport
Patch by Vlad Starostin.
Fix display of <module>
call in the html produced by cgitb.html()
.
Patch by Stéphane Blondon.
random.Random.choice()
now raises IndexError
for empty sequences
consistently even when called from subclasses without a getrandbits()
implementation.
Update difflib.mdiff() for PEP 479. Convert an uncaught StopIteration in a generator into a return-statement.
End framing at the end of C implementation of :func:`pickle.Pickler.dump`.
The urllib.robotparser's __str__
representation now includes wildcard
entries and the "Crawl-delay" and "Request-rate" fields. Patch by Michael
Lazar.
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.
The ssl module now compiles with LibreSSL 2.7.1.
Release the GIL during fstat() calls, avoiding hang of all threads when calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer.
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.
Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess if another low descriptor is closed.
Fix output of cover files for trace
module command-line tool. Previously
emitted cover files only when --missing
option was used. Patch by
Michael Selik.
If nested log adapters are used, the inner process()
methods are no
longer omitted.
Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer.
pydoc: the stop() method of the private ServerThread class now waits until DocServer.serve_until_quit() completes and then explicitly sets its docserver attribute to None to break a reference cycle.
Fix broken pypi link
Add missing documentation for typing.AsyncContextManager
.
Add Korean language switcher for https://docs.python.org/3/
Clarify that the __path__
attribute on modules cannot be just any value.
Modernize documentation for writing C extension types.
Deprecate Py_UNICODE
usage in c-api/arg
document. Py_UNICODE
related APIs are deprecated since Python 3.3, but it is missed in the
document.
Document PyBuffer_ToContiguous().
Modify documentation for the :func:`islice` recipe to consume initial values up to the start index.
Update :mod:`zipapp` documentation to describe how to make standalone applications.
Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag.
Update documentation to clarify that WindowsRegistryFinder
implements
MetaPathFinder
. (Patch by Himanshu Lakhara)
Add a note about curses.addch and curses.addstr exception behavior when writing outside a window, or pad.
Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for ssl.SSLContext.verify_mode.
Ignore test_posix_fallocate failures on BSD platforms that might be due to running on ZFS.
Add test_bdb.py.
Move -Wstrict-prototypes
option to CFLAGS_NODIST
from OPT
. This
option emitted annoying warnings when building extension modules written in
C++.
Ensures module definition files for the stable ABI on Windows are correctly regenerated.
Enable CI builds on Visual Studio Team Services at https://python.visualstudio.com/cpython
Add -Wno-cast-function-type
for gcc 8 for silencing warnings about
function casts like casting to PyCFunction in method definition lists.
Enable the verbose build for extension modules, when GNU make is passed macros on the command line.
Update Windows installer to OpenSSL 1.0.2o.
Update macOS installer build to use OpenSSL 1.0.2o.
On Windows, add API call saying that tk scales for DPI. On Windows 8.1+ or 10, with DPI compatibility properties of the Python binary unchanged, and a monitor resolution greater than 96 DPI, this should make text and lines sharper. It should otherwise have no effect.
Clicking on a context line moves that line to the top of the editor window.
IDLE: Use read-only text widget for code context instead of label widget.
Scroll IDLE editor text by lines. Previously, the mouse wheel and scrollbar slider moved text by a fixed number of pixels, resulting in partial lines at the top of the editor box. The change also applies to the shell and grep output windows, but not to read-only text views.
Enable theme-specific color configuration for Code Context. Use the Highlights tab to see the setting for built-in themes or add settings to custom themes.
Display up to maxlines non-blank lines for Code Context. If there is no current context, show a single blank line.
IDLE: Cleanup codecontext.py and its test.
IDLE's code context now recognizes async as a block opener.
IDLE now colors async and await as keywords in 3.6. They become full keywords in 3.7.
Update word/identifier definition from ascii to unicode. In text and entry boxes, this affects selection by double-click, movement left/right by control-left/right, and deletion left/right by control-BACKSPACE/DEL.
IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot be paired with either 'r' or 'f'. Consistently color as much of the prefix, starting at the right, as is valid. Revise and extend colorizer test.
Add docstrings and tests for codecontext.
:program:`pygettext.py` now recognizes only literal strings as docstrings and translatable strings, and rejects bytes literals and f-string expressions.
Fixed handling directories as arguments in the pygettext
script. Based
on patch by Oleg Krasnikov.
Fix pystackv and pystack gdbinit macros.
Add an -n
flag for Tools/scripts/pathfix.py
to disable automatic
backup creation (files with ~
suffix).
Fix 2to3 for using with --add-suffix option but without --output-dir option for relative path to files in current directory.
Document that m_traverse for multi-phase initialized modules can be called with m_state=NULL, and add a sanity check