Skip to content

Latest commit

 

History

History
465 lines (326 loc) · 8.97 KB

3.7.0b4.rst

File metadata and controls

465 lines (326 loc) · 8.97 KB

Raise a SyntaxError for async with and async for statements outside of async functions.

Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by Pablo Galindo Salgado.

Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by adjusting how the internal struct _dictkeysobject shared keys structure is declared.

Fix potential memory leak in normalizestring().

Change dict growth function from round_up_to_power_2(used*2+hashtable_size/2) to round_up_to_power_2(used*3). Previously, dict is shrunk only when used == 0. Now dict has more chance to be shrunk.

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.

Fix ctypes.util.find_library regression on macOS.

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.

lib2to3 now recognizes rf'...' strings.

Ensure line-endings are respected when using lib2to3.

Have :func:`importlib.resources.contents` and :meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable` instead of an :term:`iterator`.

Fix display of <module> call in the html produced by cgitb.html(). Patch by Stéphane Blondon.

Fixed regression when running pydoc with the :option:`-m` switch. (The regression was introduced in 3.7.0b3 by the resolution of :issue:`33053`) This fix also changed pydoc to add os.getcwd() to :data:`sys.path` when necessary, rather than adding ".".

Delete entries of None in :data:`sys.path_importer_cache` when :meth:`importlib.machinery.invalidate_caches` is called.

Deprecate looking up non-Enum objects in Enum classes and Enum members (will raise :exc:`TypeError` in 3.8+).

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

Improved error handling and fixed a reference leak in :func:`os.posix_spawn`.

In dataclasses, Field.__set_name__ now looks up the __set_name__ special method on the class, not the instance, of the default value.

Raise RuntimeError when executor.submit is called during interpreter shutdown.

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.

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.

Add a note about curses.addch and curses.addstr exception behavior when writing outside a window, or pad.

Update documentation related with dict order.

Fix test_embed.test_pre_initialization_sys_options() when the interpreter is built with --enable-shared.

Enable the verbose build for extension modules, when GNU make is passed macros on the command line.

Update config.guess and config.sub files.

Add new triplets for mips r6 and riscv variants (used in extension suffixes).

By default, modules configured in Modules/Setup are no longer built with -DPy_BUILD_CORE. Instead, modules that specifically need that preprocessor definition include it in their individual entries.

The embedding tests can once again be built with clang 6.0

Update Windows installer to use OpenSSL 1.1.0h.

Update macOS installer build to use OpenSSL 1.1.0h.

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.

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

Fix 2to3 for using with --add-suffix option but without --output-dir option for relative path to files in current directory.