mirror of
https://github.com/python/cpython.git
synced 2024-11-27 23:47:29 +01:00
0a32c6959c
Fix redirects reported by linkcheck, update docs conf.py checks.
984 lines
22 KiB
ReStructuredText
984 lines
22 KiB
ReStructuredText
.. bpo: 42988
|
|
.. date: 2021-03-24-14-16-56
|
|
.. nonce: P2aNco
|
|
.. release date: 2021-04-05
|
|
.. section: Security
|
|
|
|
:cve:`2021-3426`: Remove the ``getfile`` feature of the :mod:`pydoc` module
|
|
which could be abused to read arbitrary files on the disk (directory
|
|
traversal vulnerability). Moreover, even source code of Python modules can
|
|
contain sensitive data like passwords. Vulnerability reported by David
|
|
Schwörer.
|
|
|
|
..
|
|
|
|
.. bpo: 43285
|
|
.. date: 2021-03-13-03-48-14
|
|
.. nonce: g-Hah3
|
|
.. section: Security
|
|
|
|
:mod:`ftplib` no longer trusts the IP address value returned from the server
|
|
in response to the PASV command by default. This prevents a malicious FTP
|
|
server from using the response to probe IPv4 address and port combinations
|
|
on the client network.
|
|
|
|
Code that requires the former vulnerable behavior may set a
|
|
``trust_server_pasv_ipv4_address`` attribute on their :class:`ftplib.FTP`
|
|
instances to ``True`` to re-enable it.
|
|
|
|
..
|
|
|
|
.. bpo: 43439
|
|
.. date: 2021-03-08-23-06-07
|
|
.. nonce: 5U3lXm
|
|
.. section: Security
|
|
|
|
Add audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` and
|
|
:func:`gc.get_referents`. Patch by Pablo Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 27129
|
|
.. date: 2021-04-03-22-04-46
|
|
.. nonce: u_ehHb
|
|
.. section: Core and Builtins
|
|
|
|
Update CPython bytecode magic number.
|
|
|
|
..
|
|
|
|
.. bpo: 43672
|
|
.. date: 2021-03-31-09-12-54
|
|
.. nonce: jTT5uG
|
|
.. section: Core and Builtins
|
|
|
|
Raise ImportWarning when calling find_loader().
|
|
|
|
..
|
|
|
|
.. bpo: 43660
|
|
.. date: 2021-03-29-19-50-34
|
|
.. nonce: scTgag
|
|
.. section: Core and Builtins
|
|
|
|
Fix crash that happens when replacing ``sys.stderr`` with a callable that
|
|
can remove the object while an exception is being printed. Patch by Pablo
|
|
Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 27129
|
|
.. date: 2021-03-29-16-20-29
|
|
.. nonce: BF03A5
|
|
.. section: Core and Builtins
|
|
|
|
The bytecode interpreter uses instruction, rather byte, offsets internally.
|
|
This reduces the number of EXTENDED_ARG instructions needed and streamlines
|
|
instruction dispatch a bit.
|
|
|
|
..
|
|
|
|
.. bpo: 40645
|
|
.. date: 2021-03-29-11-55-06
|
|
.. nonce: PhaT-B
|
|
.. section: Core and Builtins
|
|
|
|
Fix reference leak in the :mod:`!_hashopenssl` extension. Patch by Pablo
|
|
Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 42134
|
|
.. date: 2021-03-26-17-30-19
|
|
.. nonce: G4Sjxg
|
|
.. section: Core and Builtins
|
|
|
|
Calls to find_module() by the import system now raise ImportWarning.
|
|
|
|
..
|
|
|
|
.. bpo: 41064
|
|
.. date: 2021-03-24-00-32-20
|
|
.. nonce: _H0K_g
|
|
.. section: Core and Builtins
|
|
|
|
Improve the syntax error for invalid usage of double starred elements ('**')
|
|
in f-strings. Patch by Pablo Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 43575
|
|
.. date: 2021-03-21-12-26-32
|
|
.. nonce: pl-nSg
|
|
.. section: Core and Builtins
|
|
|
|
Speed up calls to ``map()`` by using the :pep:`590` ``vectorcall`` calling
|
|
convention. Patch by Donghee Na.
|
|
|
|
..
|
|
|
|
.. bpo: 42137
|
|
.. date: 2021-03-20-19-54-47
|
|
.. nonce: A8aQvj
|
|
.. section: Core and Builtins
|
|
|
|
The import system now prefers using ``__spec__`` for ``ModuleType.__repr__``
|
|
over ``module_repr()``.
|
|
|
|
..
|
|
|
|
.. bpo: 43452
|
|
.. date: 2021-03-20-01-21-37
|
|
.. nonce: tDVJkc
|
|
.. section: Core and Builtins
|
|
|
|
Added micro-optimizations to ``_PyType_Lookup()`` to improve cache lookup
|
|
performance in the common case of cache hits.
|
|
|
|
..
|
|
|
|
.. bpo: 43555
|
|
.. date: 2021-03-19-22-49-40
|
|
.. nonce: ZmhYSA
|
|
.. section: Core and Builtins
|
|
|
|
Report the column offset for :exc:`SyntaxError` for invalid line
|
|
continuation characters. Patch by Pablo Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 43517
|
|
.. date: 2021-03-16-17-12-54
|
|
.. nonce: zAo6Ws
|
|
.. section: Core and Builtins
|
|
|
|
Fix misdetection of circular imports when using ``from pkg.mod import
|
|
attr``, which caused false positives in non-trivial multi-threaded code.
|
|
|
|
..
|
|
|
|
.. bpo: 43497
|
|
.. date: 2021-03-15-07-50-30
|
|
.. nonce: Uc5ZCJ
|
|
.. section: Core and Builtins
|
|
|
|
Emit SyntaxWarnings for assertions with tuple constants, this is a
|
|
regression introduced in python3.7
|
|
|
|
..
|
|
|
|
.. bpo: 39316
|
|
.. date: 2021-03-14-16-44-50
|
|
.. nonce: Ns3a_F
|
|
.. section: Core and Builtins
|
|
|
|
Tracing now has correct line numbers for attribute accesses when the
|
|
attribute is on a different line from the object. Improves debugging and
|
|
profiling for multi-line method chains.
|
|
|
|
..
|
|
|
|
.. bpo: 35883
|
|
.. date: 2021-03-13-13-57-21
|
|
.. nonce: UyGpdG
|
|
.. section: Core and Builtins
|
|
|
|
Python no longer fails at startup with a fatal error if a command line
|
|
argument contains an invalid Unicode character. The
|
|
:c:func:`Py_DecodeLocale` function now escapes byte sequences which would be
|
|
decoded as Unicode characters outside the [U+0000; U+10ffff] range.
|
|
|
|
..
|
|
|
|
.. bpo: 43410
|
|
.. date: 2021-03-05-17-23-36
|
|
.. nonce: lCzIg0
|
|
.. section: Core and Builtins
|
|
|
|
Fix a bug that was causing the parser to crash when emitting syntax errors
|
|
when reading input from stdin. Patch by Pablo Galindo
|
|
|
|
..
|
|
|
|
.. bpo: 43406
|
|
.. date: 2021-03-04-22-53-10
|
|
.. nonce: Na_VpA
|
|
.. section: Core and Builtins
|
|
|
|
Fix a possible race condition where ``PyErr_CheckSignals`` tries to execute
|
|
a non-Python signal handler.
|
|
|
|
..
|
|
|
|
.. bpo: 42128
|
|
.. date: 2021-03-03-19-04-23
|
|
.. nonce: VouZjn
|
|
.. section: Core and Builtins
|
|
|
|
Add ``__match_args__`` to :ref:`struct sequence objects <struct-sequence-objects>`.
|
|
Patch by Pablo Galindo.
|
|
|
|
..
|
|
|
|
.. bpo: 43390
|
|
.. date: 2021-03-03-17-58-49
|
|
.. nonce: epPpwV
|
|
.. section: Core and Builtins
|
|
|
|
CPython now sets the ``SA_ONSTACK`` flag in ``PyOS_setsig`` for the VM's
|
|
default signal handlers. This is friendlier to other in-process code that
|
|
an extension module or embedding use could pull in (such as Golang's cgo)
|
|
where tiny thread stacks are the norm and ``sigaltstack()`` has been used to
|
|
provide for signal handlers. This is a no-op change for the vast majority
|
|
of processes that don't use sigaltstack.
|
|
|
|
..
|
|
|
|
.. bpo: 43287
|
|
.. date: 2021-02-22-03-01-02
|
|
.. nonce: aTs6fO
|
|
.. section: Core and Builtins
|
|
|
|
Speed up calls to ``filter()`` by using the :pep:`590` ``vectorcall``
|
|
calling convention. Patch by Donghee Na.
|
|
|
|
..
|
|
|
|
.. bpo: 37448
|
|
.. date: 2021-02-21-14-19-35
|
|
.. nonce: btl7vO
|
|
.. section: Core and Builtins
|
|
|
|
Add a radix tree based memory map to track in-use obmalloc arenas. Use to
|
|
replace the old implementation of address_in_range(). The radix tree
|
|
approach makes it easy to increase pool sizes beyond the OS page size.
|
|
Boosting the pool and arena size allows obmalloc to handle a significantly
|
|
higher percentage of requests from its ultra-fast paths.
|
|
|
|
It also has the advantage of eliminating the memory unsanitary behavior of
|
|
the previous address_in_range(). The old address_in_range() was marked with
|
|
the annotations _Py_NO_SANITIZE_ADDRESS, _Py_NO_SANITIZE_THREAD, and
|
|
_Py_NO_SANITIZE_MEMORY. Those annotations are no longer needed.
|
|
|
|
To disable the radix tree map, set a preprocessor flag as follows:
|
|
``-DWITH_PYMALLOC_RADIX_TREE=0``.
|
|
|
|
Co-authored-by: Tim Peters <tim.peters@gmail.com>
|
|
|
|
..
|
|
|
|
.. bpo: 29988
|
|
.. date: 2020-02-03-13-23-10
|
|
.. nonce: 8_UB5w
|
|
.. section: Core and Builtins
|
|
|
|
Only handle asynchronous exceptions and requests to drop the GIL when
|
|
returning from a call or on the back edges of loops. Makes sure that
|
|
:meth:`~object.__exit__` is always called in with statements, even for interrupts.
|
|
|
|
..
|
|
|
|
.. bpo: 43720
|
|
.. date: 2021-04-03-13-45-51
|
|
.. nonce: FDZ5cZ
|
|
.. section: Library
|
|
|
|
Document various stdlib deprecations in imp, pkgutil, and importlib.util for
|
|
removal in Python 3.12.
|
|
|
|
..
|
|
|
|
.. bpo: 43433
|
|
.. date: 2021-03-28-23-50-20
|
|
.. nonce: so9j5G
|
|
.. section: Library
|
|
|
|
:class:`xmlrpc.client.ServerProxy` no longer ignores query and fragment in
|
|
the URL of the server.
|
|
|
|
..
|
|
|
|
.. bpo: 31956
|
|
.. date: 2021-03-28-16-53-25
|
|
.. nonce: Lt_67U
|
|
.. section: Library
|
|
|
|
The :meth:`~array.array.index` method of :class:`array.array` now has
|
|
optional *start* and *stop* parameters.
|
|
|
|
..
|
|
|
|
.. bpo: 40066
|
|
.. date: 2021-03-25-21-26-30
|
|
.. nonce: 7EBQ3_
|
|
.. section: Library
|
|
|
|
Enum: adjust ``repr()`` to show only enum and member name (not value, nor
|
|
angle brackets) and ``str()`` to show only member name. Update and improve
|
|
documentation to match.
|
|
|
|
..
|
|
|
|
.. bpo: 42136
|
|
.. date: 2021-03-25-08-44-26
|
|
.. nonce: rRY9e1
|
|
.. section: Library
|
|
|
|
Deprecate all module_repr() methods found in importlib as their use is being
|
|
phased out by Python 3.12.
|
|
|
|
..
|
|
|
|
.. bpo: 35930
|
|
.. date: 2021-03-23-17-18-56
|
|
.. nonce: RZ51pM
|
|
.. section: Library
|
|
|
|
Raising an exception raised in a "future" instance will create reference
|
|
cycles.
|
|
|
|
..
|
|
|
|
.. bpo: 41369
|
|
.. date: 2021-03-21-17-50-42
|
|
.. nonce: -fpmYZ
|
|
.. section: Library
|
|
|
|
Finish updating the vendored libmpdec to version 2.5.1. Patch by Stefan
|
|
Krah.
|
|
|
|
..
|
|
|
|
.. bpo: 43422
|
|
.. date: 2021-03-21-17-02-52
|
|
.. nonce: POk6cU
|
|
.. section: Library
|
|
|
|
Revert the _decimal C API which was added in bpo-41324.
|
|
|
|
..
|
|
|
|
.. bpo: 43577
|
|
.. date: 2021-03-21-10-13-17
|
|
.. nonce: m7JnAV
|
|
.. section: Library
|
|
|
|
Fix deadlock when using :class:`ssl.SSLContext` debug callback with
|
|
:meth:`ssl.SSLContext.sni_callback`.
|
|
|
|
..
|
|
|
|
.. bpo: 43571
|
|
.. date: 2021-03-20-17-40-35
|
|
.. nonce: acAL0W
|
|
.. section: Library
|
|
|
|
It's now possible to create MPTCP sockets with IPPROTO_MPTCP
|
|
|
|
..
|
|
|
|
.. bpo: 43542
|
|
.. date: 2021-03-20-15-43-25
|
|
.. nonce: 6bt2F6
|
|
.. section: Library
|
|
|
|
``image/heic`` and ``image/heif`` were added to :mod:`mimetypes`.
|
|
|
|
..
|
|
|
|
.. bpo: 40645
|
|
.. date: 2021-03-19-10-22-17
|
|
.. nonce: 5pXhb-
|
|
.. section: Library
|
|
|
|
The :mod:`hmac` module now uses OpenSSL's HMAC implementation when digestmod
|
|
argument is a hash name or builtin hash function.
|
|
|
|
..
|
|
|
|
.. bpo: 43510
|
|
.. date: 2021-03-16-17-20-33
|
|
.. nonce: -BeQH_
|
|
.. section: Library
|
|
|
|
Implement :pep:`597`: Add ``EncodingWarning`` warning, ``-X
|
|
warn_default_encoding`` option, :envvar:`PYTHONWARNDEFAULTENCODING`
|
|
environment variable and ``encoding="locale"`` argument value.
|
|
|
|
..
|
|
|
|
.. bpo: 43521
|
|
.. date: 2021-03-16-16-05-02
|
|
.. nonce: mRT6fh
|
|
.. section: Library
|
|
|
|
``ast.unparse`` can now render NaNs and empty sets.
|
|
|
|
..
|
|
|
|
.. bpo: 42914
|
|
.. date: 2021-03-14-21-47-28
|
|
.. nonce: 9U1o33
|
|
.. section: Library
|
|
|
|
:func:`pprint.pprint` gains a new boolean ``underscore_numbers`` optional
|
|
argument to emit integers with thousands separated by an underscore
|
|
character for improved readability (for example ``1_000_000`` instead of
|
|
``1000000``).
|
|
|
|
..
|
|
|
|
.. bpo: 41361
|
|
.. date: 2021-03-13-08-18-01
|
|
.. nonce: lXDIlr
|
|
.. section: Library
|
|
|
|
:meth:`~collections.deque.rotate` calls are now slightly faster due to
|
|
faster argument parsing.
|
|
|
|
..
|
|
|
|
.. bpo: 43423
|
|
.. date: 2021-03-11-15-44-18
|
|
.. nonce: rRomRD
|
|
.. section: Library
|
|
|
|
:func:`subprocess.communicate` no longer raises an IndexError when there is
|
|
an empty stdout or stderr IO buffer during a timeout on Windows.
|
|
|
|
..
|
|
|
|
.. bpo: 27820
|
|
.. date: 2021-03-10-14-07-44
|
|
.. nonce: Wwdy-r
|
|
.. section: Library
|
|
|
|
Fixed long-standing bug of smtplib.SMTP where doing AUTH LOGIN with
|
|
initial_response_ok=False will fail.
|
|
|
|
The cause is that SMTP.auth_login _always_ returns a password if provided
|
|
with a challenge string, thus non-compliant with the standard for AUTH
|
|
LOGIN.
|
|
|
|
Also fixes bug with the test for smtpd.
|
|
|
|
..
|
|
|
|
.. bpo: 43445
|
|
.. date: 2021-03-09-11-36-19
|
|
.. nonce: jnj-UB
|
|
.. section: Library
|
|
|
|
Add frozen modules to :data:`sys.stdlib_module_names`. For example, add
|
|
``"_frozen_importlib"`` and ``"_frozen_importlib_external"`` names.
|
|
|
|
..
|
|
|
|
.. bpo: 43245
|
|
.. date: 2021-03-08-22-14-37
|
|
.. nonce: nXL-MC
|
|
.. section: Library
|
|
|
|
Add keyword arguments support to ``ChainMap.new_child()``.
|
|
|
|
..
|
|
|
|
.. bpo: 29982
|
|
.. date: 2021-03-07-23-23-03
|
|
.. nonce: Q9iszT
|
|
.. section: Library
|
|
|
|
Add optional parameter *ignore_cleanup_errors* to
|
|
:func:`tempfile.TemporaryDirectory` and allow multiple :func:`cleanup`
|
|
attempts. Contributed by C.A.M. Gerlach.
|
|
|
|
..
|
|
|
|
.. bpo: 43428
|
|
.. date: 2021-03-07-18-54-39
|
|
.. nonce: br0XmX
|
|
.. section: Library
|
|
|
|
Include changes from `importlib_metadata 3.7
|
|
<https://importlib-metadata.readthedocs.io/en/latest/history.html#v3-7-0>`_:
|
|
|
|
Performance enhancements to distribution discovery.
|
|
|
|
``entry_points`` only returns unique distributions.
|
|
|
|
Introduces new ``EntryPoints`` object for containing a set of entry points
|
|
with convenience methods for selecting entry points by group or name.
|
|
``entry_points`` now returns this object if selection parameters are
|
|
supplied but continues to return a dict object for compatibility. Users are
|
|
encouraged to rely on the selection interface. The dict object result is
|
|
likely to be deprecated in the future.
|
|
|
|
Added packages_distributions function to return a mapping of packages to the
|
|
distributions that provide them.
|
|
|
|
..
|
|
|
|
.. bpo: 43332
|
|
.. date: 2021-03-07-11-23-20
|
|
.. nonce: weatsh
|
|
.. section: Library
|
|
|
|
Improves the networking efficiency of :mod:`http.client` when using a proxy
|
|
via :meth:`~HTTPConnection.set_tunnel`. Fewer small send calls are made
|
|
during connection setup.
|
|
|
|
..
|
|
|
|
.. bpo: 43420
|
|
.. date: 2021-03-07-08-03-31
|
|
.. nonce: cee_X5
|
|
.. section: Library
|
|
|
|
Improve performance of :class:`fractions.Fraction` arithmetics for large
|
|
components. Contributed by Sergey B. Kirpichev.
|
|
|
|
..
|
|
|
|
.. bpo: 43356
|
|
.. date: 2021-03-04-21-51-20
|
|
.. nonce: X7IGBM
|
|
.. section: Library
|
|
|
|
Allow passing a signal number to ``_thread.interrupt_main()``.
|
|
|
|
..
|
|
|
|
.. bpo: 43399
|
|
.. date: 2021-03-04-17-53-46
|
|
.. nonce: Wn95u-
|
|
.. section: Library
|
|
|
|
Fix ``ElementTree.extend`` not working on iterators when using the Python
|
|
implementation
|
|
|
|
..
|
|
|
|
.. bpo: 43369
|
|
.. date: 2021-03-02-15-25-28
|
|
.. nonce: F4knlQ
|
|
.. section: Library
|
|
|
|
Improve :mod:`sqlite3` error handling: If ``sqlite3_column_text()`` and
|
|
``sqlite3_column_blob()`` set ``SQLITE_NOMEM``, :exc:`MemoryError` is now
|
|
raised. Patch by Erlend E. Aasland.
|
|
|
|
..
|
|
|
|
.. bpo: 43368
|
|
.. date: 2021-03-02-13-45-05
|
|
.. nonce: t9XEkQ
|
|
.. section: Library
|
|
|
|
Fix a regression introduced in PR 24562, where an empty bytestring was
|
|
fetched as ``None`` instead of ``b''`` in :mod:`sqlite3`. Patch by Mariusz
|
|
Felisiak.
|
|
|
|
..
|
|
|
|
.. bpo: 41282
|
|
.. date: 2021-03-02-09-54-22
|
|
.. nonce: xL4h94
|
|
.. section: Library
|
|
|
|
Fixed stacklevel of ``DeprecationWarning`` emitted from ``import
|
|
distutils``.
|
|
|
|
..
|
|
|
|
.. bpo: 42129
|
|
.. date: 2021-02-28-04-21-35
|
|
.. nonce: V0KifQ
|
|
.. section: Library
|
|
|
|
``importlib.resources`` now honors namespace packages, merging resources
|
|
from each location in the namespace as introduced in ``importlib_resources``
|
|
3.2 and including incidental changes through 5.0.3.
|
|
|
|
..
|
|
|
|
.. bpo: 43295
|
|
.. date: 2021-02-22-22-54-40
|
|
.. nonce: h_ffu7
|
|
.. section: Library
|
|
|
|
:meth:`datetime.datetime.strptime` now raises ``ValueError`` instead of
|
|
``IndexError`` when matching ``'z'`` with the ``%z`` format specifier.
|
|
|
|
..
|
|
|
|
.. bpo: 43125
|
|
.. date: 2021-02-07-19-13-30
|
|
.. nonce: AqNoMa
|
|
.. section: Library
|
|
|
|
Return empty string if base64mime.body_encode receive empty bytes
|
|
|
|
..
|
|
|
|
.. bpo: 43084
|
|
.. date: 2021-01-31-17-31-13
|
|
.. nonce: i8nLpK
|
|
.. section: Library
|
|
|
|
:func:`curses.window.enclose` returns now ``True`` or ``False`` (as was
|
|
documented) instead of ``1`` or ``0``.
|
|
|
|
..
|
|
|
|
.. bpo: 42994
|
|
.. date: 2021-01-21-16-58-34
|
|
.. nonce: El0Ksp
|
|
.. section: Library
|
|
|
|
Add MIME types for opus, AAC, 3gpp and 3gpp2
|
|
|
|
..
|
|
|
|
.. bpo: 14678
|
|
.. date: 2021-01-07-21-25-49
|
|
.. nonce: 1zniCH
|
|
.. section: Library
|
|
|
|
Add an invalidate_caches() method to the zipimport.zipimporter class to
|
|
support importlib.invalidate_caches(). Patch by Desmond Cheong.
|
|
|
|
..
|
|
|
|
.. bpo: 42782
|
|
.. date: 2020-12-29-13-46-57
|
|
.. nonce: 3r0HFY
|
|
.. section: Library
|
|
|
|
Fail fast in :func:`shutil.move` to avoid creating destination directories
|
|
on failure.
|
|
|
|
..
|
|
|
|
.. bpo: 40066
|
|
.. date: 2020-09-23-21-58-34
|
|
.. nonce: f1dr_5
|
|
.. section: Library
|
|
|
|
Enum's ``repr()`` and ``str()`` have changed: ``repr()`` is now
|
|
*EnumClass.MemberName* and ``str()`` is *MemberName*. Additionally, stdlib
|
|
Enum's whose contents are available as module attributes, such as
|
|
``RegexFlag.IGNORECASE``, have their ``repr()`` as *module.name*, e.g.
|
|
``re.IGNORECASE``.
|
|
|
|
..
|
|
|
|
.. bpo: 26053
|
|
.. date: 2020-09-01-10-12-13
|
|
.. nonce: hXikw_
|
|
.. section: Library
|
|
|
|
Fixed bug where the :mod:`pdb` interactive run command echoed the args from
|
|
the shell command line, even if those have been overridden at the pdb
|
|
prompt.
|
|
|
|
..
|
|
|
|
.. bpo: 24160
|
|
.. date: 2020-08-28-23-07-53
|
|
.. nonce: MSGnKr
|
|
.. section: Library
|
|
|
|
Fixed bug where breakpoints did not persist across multiple debugger
|
|
sessions in :mod:`pdb`'s interactive mode.
|
|
|
|
..
|
|
|
|
.. bpo: 40701
|
|
.. date: 2020-05-27-05-42-39
|
|
.. nonce: PBIgW1
|
|
.. section: Library
|
|
|
|
When the :data:`tempfile.tempdir` global variable is set to a value of type
|
|
bytes, it is now handled consistently. Previously exceptions could be
|
|
raised from some tempfile APIs when the directory did not already exist in
|
|
this situation. Also ensures that the :func:`tempfile.gettempdir` and
|
|
:func:`tempfile.gettempdirb` functions *always* return ``str`` and
|
|
``bytes`` respectively.
|
|
|
|
..
|
|
|
|
.. bpo: 39342
|
|
.. date: 2020-01-15-11-15-35
|
|
.. nonce: S8PuJO
|
|
.. section: Library
|
|
|
|
Expose ``X509_V_FLAG_ALLOW_PROXY_CERTS`` as
|
|
:const:`~ssl.VERIFY_ALLOW_PROXY_CERTS` to allow proxy certificate validation
|
|
as explained in
|
|
https://docs.openssl.org/1.1.1/man7/proxy-certificates/.
|
|
|
|
..
|
|
|
|
.. bpo: 31861
|
|
.. date: 2018-08-24-01-08-09
|
|
.. nonce: -q9RKJ
|
|
.. section: Library
|
|
|
|
Add builtins.aiter and builtins.anext. Patch by Joshua Bronson (@jab),
|
|
Daniel Pope (@lordmauve), and Justin Wang (@justin39).
|
|
|
|
..
|
|
|
|
.. bpo: 43199
|
|
.. date: 2021-03-13-18-43-54
|
|
.. nonce: ZWA6KX
|
|
.. section: Documentation
|
|
|
|
Answer "Why is there no goto?" in the Design and History FAQ.
|
|
|
|
..
|
|
|
|
.. bpo: 43407
|
|
.. date: 2021-03-04-22-53-03
|
|
.. nonce: x570l5
|
|
.. section: Documentation
|
|
|
|
Clarified that a result from :func:`time.monotonic`,
|
|
:func:`time.perf_counter`, :func:`time.process_time`, or
|
|
:func:`time.thread_time` can be compared with the result from any following
|
|
call to the same function - not just the next immediate call.
|
|
|
|
..
|
|
|
|
.. bpo: 43354
|
|
.. date: 2021-03-02-12-55-34
|
|
.. nonce: ezZYkx
|
|
.. section: Documentation
|
|
|
|
Fix type documentation for ``Fault.faultCode``; the type has to be ``int``
|
|
instead of ``str``.
|
|
|
|
..
|
|
|
|
.. bpo: 41933
|
|
.. date: 2020-10-05-20-04-43
|
|
.. nonce: Pff94-
|
|
.. section: Documentation
|
|
|
|
Clarified wording of s * n in the Common Sequence Operations
|
|
|
|
..
|
|
|
|
.. bpo: 37945
|
|
.. date: 2021-03-31-11-38-42
|
|
.. nonce: HTUYhv
|
|
.. section: Tests
|
|
|
|
Fix test_getsetlocale_issue1813() of test_locale: skip the test if
|
|
``setlocale()`` fails. Patch by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 41561
|
|
.. date: 2021-03-18-10-34-42
|
|
.. nonce: pDg4w-
|
|
.. section: Tests
|
|
|
|
Add workaround for Ubuntu's custom OpenSSL security level policy.
|
|
|
|
..
|
|
|
|
.. bpo: 43179
|
|
.. date: 2021-03-31-12-20-23
|
|
.. nonce: Qbe1OD
|
|
.. section: Build
|
|
|
|
Introduce and correctly use ALIGNOF_X in place of SIZEOF_X for
|
|
alignment-related code in optimized string routines. Patch by Jessica
|
|
Clarke.
|
|
|
|
..
|
|
|
|
.. bpo: 43631
|
|
.. date: 2021-03-26-09-16-34
|
|
.. nonce: msJyPi
|
|
.. section: Build
|
|
|
|
Update macOS, Windows, and CI to OpenSSL 1.1.1k.
|
|
|
|
..
|
|
|
|
.. bpo: 43617
|
|
.. date: 2021-03-24-16-55-55
|
|
.. nonce: d69KAv
|
|
.. section: Build
|
|
|
|
Improve configure.ac: Check for presence of autoconf-archive package and
|
|
remove our copies of M4 macros.
|
|
|
|
..
|
|
|
|
.. bpo: 43466
|
|
.. date: 2021-03-11-00-14-47
|
|
.. nonce: N861Z5
|
|
.. section: Build
|
|
|
|
The ``configure`` script now supports ``--with-openssl-rpath`` option.
|
|
|
|
..
|
|
|
|
.. bpo: 43372
|
|
.. date: 2021-03-04-17-13-57
|
|
.. nonce: FfqDVL
|
|
.. section: Build
|
|
|
|
Use ``_freeze_importlib`` to generate code for the ``__hello__`` module.
|
|
This approach ensures the code matches the interpreter version. Previously,
|
|
PYTHON_FOR_REGEN was used to generate the code, which might be wrong. The
|
|
marshal format for code objects has changed with bpo-42246, commit 877df851.
|
|
Update the code and the expected code sizes in ctypes test_frozentable.
|
|
|
|
..
|
|
|
|
.. bpo: 43440
|
|
.. date: 2021-03-09-11-15-41
|
|
.. nonce: igy2Mn
|
|
.. section: Windows
|
|
|
|
Build :mod:`sqlite3` with the ``R*Tree`` module enabled. Patch by Erlend E.
|
|
Aasland.
|
|
|
|
..
|
|
|
|
.. bpo: 42225
|
|
.. date: 2021-03-29-16-22-27
|
|
.. nonce: iIeiLg
|
|
.. section: IDLE
|
|
|
|
Document that IDLE can fail on Unix either from misconfigured IP masquerade
|
|
rules or failure displaying complex colored (non-ascii) characters.
|
|
|
|
..
|
|
|
|
.. bpo: 43688
|
|
.. date: 2021-04-01-09-10-42
|
|
.. nonce: G4gs6k
|
|
.. section: C API
|
|
|
|
The limited C API is now supported if Python is built in debug mode (if the
|
|
``Py_DEBUG`` macro is defined). In the limited C API, the
|
|
:c:func:`Py_INCREF` and :c:func:`Py_DECREF` functions are now implemented as
|
|
opaque function calls, rather than accessing directly the
|
|
:c:member:`PyObject.ob_refcnt` member, if Python is built in debug mode and
|
|
the ``Py_LIMITED_API`` macro targets Python 3.10 or newer. It became
|
|
possible to support the limited C API in debug mode because the
|
|
:c:type:`PyObject` structure is the same in release and debug mode since
|
|
Python 3.8 (see :issue:`36465`).
|
|
|
|
The limited C API is still not supported in the ``--with-trace-refs``
|
|
special build (``Py_TRACE_REFS`` macro).
|
|
|
|
Patch by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43244
|
|
.. date: 2021-03-24-01-22-14
|
|
.. nonce: 31-97x
|
|
.. section: C API
|
|
|
|
Remove the ``pyarena.h`` header file with functions:
|
|
|
|
* ``PyArena_New()``
|
|
* ``PyArena_Free()``
|
|
* ``PyArena_Malloc()``
|
|
* ``PyArena_AddPyObject()``
|
|
|
|
These functions were undocumented, excluded from the limited C API, and were
|
|
only used internally by the compiler. Patch by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43244
|
|
.. date: 2021-03-23-20-53-41
|
|
.. nonce: VK3sLH
|
|
.. section: C API
|
|
|
|
Remove the compiler and parser functions using ``struct _mod`` type, because
|
|
the public AST C API was removed:
|
|
|
|
* ``PyAST_Compile()``
|
|
* ``PyAST_CompileEx()``
|
|
* ``PyAST_CompileObject()``
|
|
* ``PyFuture_FromAST()``
|
|
* ``PyFuture_FromASTObject()``
|
|
* ``PyParser_ASTFromFile()``
|
|
* ``PyParser_ASTFromFileObject()``
|
|
* ``PyParser_ASTFromFilename()``
|
|
* ``PyParser_ASTFromString()``
|
|
* ``PyParser_ASTFromStringObject()``
|
|
|
|
These functions were undocumented and excluded from the limited C API. Patch
|
|
by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43244
|
|
.. date: 2021-03-19-12-56-11
|
|
.. nonce: VuIyOD
|
|
.. section: C API
|
|
|
|
Remove ``ast.h``, ``asdl.h``, and ``Python-ast.h`` header files. These
|
|
functions were undocumented and excluded from the limited C API. Most names
|
|
defined by these header files were not prefixed by ``Py`` and so could
|
|
create names conflicts. For example, ``Python-ast.h`` defined a ``Yield``
|
|
macro which was conflict with the ``Yield`` name used by the Windows
|
|
``<winbase.h>`` header. Use the Python :mod:`ast` module instead. Patch by
|
|
Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43541
|
|
.. date: 2021-03-18-12-44-33
|
|
.. nonce: ICigzd
|
|
.. section: C API
|
|
|
|
Fix a ``PyEval_EvalCodeEx()`` regression: fix reference counting on
|
|
builtins. Patch by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43244
|
|
.. date: 2021-03-17-23-53-14
|
|
.. nonce: kfPqA_
|
|
.. section: C API
|
|
|
|
Remove the ``symtable.h`` header file and the undocumented functions:
|
|
|
|
* ``PyST_GetScope()``
|
|
* ``PySymtable_Build()``
|
|
* ``PySymtable_BuildObject()``
|
|
* ``PySymtable_Free()``
|
|
* ``Py_SymtableString()``
|
|
* ``Py_SymtableStringObject()``
|
|
|
|
The ``Py_SymtableString()`` function was part the stable ABI by mistake but
|
|
it could not be used, because the ``symtable.h`` header file was excluded
|
|
from the limited C API.
|
|
|
|
The Python :mod:`symtable` module remains available and is unchanged.
|
|
|
|
Patch by Victor Stinner.
|
|
|
|
..
|
|
|
|
.. bpo: 43244
|
|
.. date: 2021-03-17-23-20-07
|
|
.. nonce: diyn2C
|
|
.. section: C API
|
|
|
|
Remove the ``PyAST_Validate()`` function. It is no longer possible to build
|
|
a AST object (``mod_ty`` type) with the public C API. The function was
|
|
already excluded from the limited C API (:pep:`384`). Patch by Victor
|
|
Stinner.
|