Python 3.9.1rc1

This commit is contained in:
Łukasz Langa 2020-11-24 17:48:47 +01:00
parent 15d42d7ec6
commit 88db374422
No known key found for this signature in database
GPG Key ID: B26995E310250568
98 changed files with 1082 additions and 239 deletions

View File

@ -18,12 +18,12 @@
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 9
#define PY_MICRO_VERSION 0
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0
#define PY_MICRO_VERSION 1
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_GAMMA
#define PY_RELEASE_SERIAL 1
/* Version as a string */
#define PY_VERSION "3.9.0+"
#define PY_VERSION "3.9.1rc1"
/*--end constants--*/
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.

View File

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Autogenerated by Sphinx on Sun Oct 4 19:26:28 2020
# Autogenerated by Sphinx on Tue Nov 24 17:42:56 2020
topics = {'assert': 'The "assert" statement\n'
'**********************\n'
'\n'
@ -700,6 +700,11 @@ topics = {'assert': 'The "assert" statement\n'
'syntax or\n'
' built-in functions. See Special method lookup.\n'
'\n'
' For certain sensitive attribute accesses, raises an '
'auditing event\n'
' "object.__getattr__" with arguments "obj" and '
'"name".\n'
'\n'
'object.__setattr__(self, name, value)\n'
'\n'
' Called when an attribute assignment is attempted. '
@ -716,6 +721,11 @@ topics = {'assert': 'The "assert" statement\n'
'for example,\n'
' "object.__setattr__(self, name, value)".\n'
'\n'
' For certain sensitive attribute assignments, raises '
'an auditing\n'
' event "object.__setattr__" with arguments "obj", '
'"name", "value".\n'
'\n'
'object.__delattr__(self, name)\n'
'\n'
' Like "__setattr__()" but for attribute deletion '
@ -724,6 +734,11 @@ topics = {'assert': 'The "assert" statement\n'
'obj.name" is\n'
' meaningful for the object.\n'
'\n'
' For certain sensitive attribute deletions, raises an '
'auditing event\n'
' "object.__delattr__" with arguments "obj" and '
'"name".\n'
'\n'
'object.__dir__(self)\n'
'\n'
' Called when "dir()" is called on the object. A '
@ -1464,8 +1479,8 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
' Called when the instance is “called” as a function; if '
'this method\n'
' is defined, "x(arg1, arg2, ...)" is a shorthand for\n'
' "x.__call__(arg1, arg2, ...)".\n',
' is defined, "x(arg1, arg2, ...)" roughly translates to\n'
' "type(x).__call__(x, arg1, ...)".\n',
'calls': 'Calls\n'
'*****\n'
'\n'
@ -3461,16 +3476,21 @@ topics = {'assert': 'The "assert" statement\n'
' on the value to determine if the result is true or '
'false.\n'
'\n'
' By default, "__ne__()" delegates to "__eq__()" and '
'inverts the\n'
' result unless it is "NotImplemented". There are no '
'other implied\n'
' relationships among the comparison operators, for '
'example, the\n'
' truth of "(x<y or x==y)" does not imply "x<=y". To '
'automatically\n'
' generate ordering operations from a single root '
'operation, see\n'
' By default, "object" implements "__eq__()" by using '
'"is", returning\n'
' "NotImplemented" in the case of a false comparison: '
'"True if x is y\n'
' else NotImplemented". For "__ne__()", by default it '
'delegates to\n'
' "__eq__()" and inverts the result unless it is '
'"NotImplemented".\n'
' There are no other implied relationships among the '
'comparison\n'
' operators or default implementations; for example, the '
'truth of\n'
' "(x<y or x==y)" does not imply "x<=y". To automatically '
'generate\n'
' ordering operations from a single root operation, see\n'
' "functools.total_ordering()".\n'
'\n'
' See the paragraph on "__hash__()" for some important '
@ -6395,8 +6415,8 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
'* other future statements.\n'
'\n'
'The only feature in Python 3.7 that requires using the future\n'
'statement is "annotations".\n'
'The only feature that requires using the future statement is\n'
'"annotations" (see **PEP 563**).\n'
'\n'
'All historical features enabled by the future statement are still\n'
'recognized by Python 3. The list includes "absolute_import",\n'
@ -6928,13 +6948,14 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
' If the right operands type is a subclass of the left '
'operands\n'
' type and that subclass provides the reflected method '
'for the\n'
' operation, this method will be called before the left '
'operands\n'
' non-reflected method. This behavior allows subclasses '
'to\n'
' override their ancestors operations.\n'
' type and that subclass provides a different '
'implementation of the\n'
' reflected method for the operation, this method will '
'be called\n'
' before the left operands non-reflected method. This '
'behavior\n'
' allows subclasses to override their ancestors '
'operations.\n'
'\n'
'object.__iadd__(self, other)\n'
'object.__isub__(self, other)\n'
@ -8251,16 +8272,21 @@ topics = {'assert': 'The "assert" statement\n'
' on the value to determine if the result is true or '
'false.\n'
'\n'
' By default, "__ne__()" delegates to "__eq__()" and '
'inverts the\n'
' result unless it is "NotImplemented". There are no other '
'implied\n'
' relationships among the comparison operators, for '
'example, the\n'
' truth of "(x<y or x==y)" does not imply "x<=y". To '
'automatically\n'
' generate ordering operations from a single root '
'operation, see\n'
' By default, "object" implements "__eq__()" by using "is", '
'returning\n'
' "NotImplemented" in the case of a false comparison: "True '
'if x is y\n'
' else NotImplemented". For "__ne__()", by default it '
'delegates to\n'
' "__eq__()" and inverts the result unless it is '
'"NotImplemented".\n'
' There are no other implied relationships among the '
'comparison\n'
' operators or default implementations; for example, the '
'truth of\n'
' "(x<y or x==y)" does not imply "x<=y". To automatically '
'generate\n'
' ordering operations from a single root operation, see\n'
' "functools.total_ordering()".\n'
'\n'
' See the paragraph on "__hash__()" for some important '
@ -8490,6 +8516,10 @@ topics = {'assert': 'The "assert" statement\n'
'syntax or\n'
' built-in functions. See Special method lookup.\n'
'\n'
' For certain sensitive attribute accesses, raises an '
'auditing event\n'
' "object.__getattr__" with arguments "obj" and "name".\n'
'\n'
'object.__setattr__(self, name, value)\n'
'\n'
' Called when an attribute assignment is attempted. This '
@ -8506,6 +8536,11 @@ topics = {'assert': 'The "assert" statement\n'
'example,\n'
' "object.__setattr__(self, name, value)".\n'
'\n'
' For certain sensitive attribute assignments, raises an '
'auditing\n'
' event "object.__setattr__" with arguments "obj", "name", '
'"value".\n'
'\n'
'object.__delattr__(self, name)\n'
'\n'
' Like "__setattr__()" but for attribute deletion instead '
@ -8514,6 +8549,10 @@ topics = {'assert': 'The "assert" statement\n'
'obj.name" is\n'
' meaningful for the object.\n'
'\n'
' For certain sensitive attribute deletions, raises an '
'auditing event\n'
' "object.__delattr__" with arguments "obj" and "name".\n'
'\n'
'object.__dir__(self)\n'
'\n'
' Called when "dir()" is called on the object. A sequence '
@ -9307,8 +9346,8 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
' Called when the instance is “called” as a function; if '
'this method\n'
' is defined, "x(arg1, arg2, ...)" is a shorthand for\n'
' "x.__call__(arg1, arg2, ...)".\n'
' is defined, "x(arg1, arg2, ...)" roughly translates to\n'
' "type(x).__call__(x, arg1, ...)".\n'
'\n'
'\n'
'Emulating container types\n'
@ -9641,13 +9680,14 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
' If the right operands type is a subclass of the left '
'operands\n'
' type and that subclass provides the reflected method '
'for the\n'
' operation, this method will be called before the left '
'operands\n'
' non-reflected method. This behavior allows subclasses '
'to\n'
' override their ancestors operations.\n'
' type and that subclass provides a different '
'implementation of the\n'
' reflected method for the operation, this method will be '
'called\n'
' before the left operands non-reflected method. This '
'behavior\n'
' allows subclasses to override their ancestors '
'operations.\n'
'\n'
'object.__iadd__(self, other)\n'
'object.__isub__(self, other)\n'
@ -11072,9 +11112,10 @@ topics = {'assert': 'The "assert" statement\n'
'subscriptions': 'Subscriptions\n'
'*************\n'
'\n'
'A subscription selects an item of a sequence (string, tuple '
'or list)\n'
'or mapping (dictionary) object:\n'
'Subscription of a sequence (string, tuple or list) or '
'mapping\n'
'(dictionary) object usually selects an item from the '
'collection:\n'
'\n'
' subscription ::= primary "[" expression_list "]"\n'
'\n'
@ -11125,7 +11166,13 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
'A strings items are characters. A character is not a '
'separate data\n'
'type but a string of exactly one character.\n',
'type but a string of exactly one character.\n'
'\n'
'Subscription of certain *classes* or *types* creates a '
'generic alias.\n'
'In this case, user-defined classes can support subscription '
'by\n'
'providing a "__class_getitem__()" classmethod.\n',
'truth': 'Truth Value Testing\n'
'*******************\n'
'\n'
@ -11371,6 +11418,27 @@ topics = {'assert': 'The "assert" statement\n'
'representation\n'
' in computers.\n'
'\n'
' The string representations of the numeric classes, computed by\n'
' "__repr__()" and "__str__()", have the following properties:\n'
'\n'
' * They are valid numeric literals which, when passed to their '
'class\n'
' constructor, produce an object having the value of the '
'original\n'
' numeric.\n'
'\n'
' * The representation is in base 10, when possible.\n'
'\n'
' * Leading zeros, possibly excepting a single zero before a '
'decimal\n'
' point, are not shown.\n'
'\n'
' * Trailing zeros, possibly excepting a single zero after a '
'decimal\n'
' point, are not shown.\n'
'\n'
' * A sign is shown only when the number is negative.\n'
'\n'
' Python distinguishes between integers, floating point numbers, '
'and\n'
' complex numbers:\n'
@ -12422,6 +12490,21 @@ topics = {'assert': 'The "assert" statement\n'
'positional\n'
' argument and a possibly empty set of keyword arguments.\n'
'\n'
' Dictionaries can be created by several means:\n'
'\n'
' * Use a comma-separated list of "key: value" pairs within '
'braces:\n'
' "{\'jack\': 4098, \'sjoerd\': 4127}" or "{4098: '
"'jack', 4127:\n"
' \'sjoerd\'}"\n'
'\n'
' * Use a dict comprehension: "{}", "{x: x ** 2 for x in '
'range(10)}"\n'
'\n'
' * Use the type constructor: "dict()", "dict([(\'foo\', '
"100), ('bar',\n"
' 200)])", "dict(foo=100, bar=200)"\n'
'\n'
' If no positional argument is given, an empty dictionary '
'is created.\n'
' If a positional argument is given and it is a mapping '

948
Misc/NEWS.d/3.9.1rc1.rst Normal file
View File

@ -0,0 +1,948 @@
.. bpo: 42103
.. date: 2020-10-23-19-19-30
.. nonce: cILT66
.. release date: 2020-11-24
.. section: Security
Prevented potential DoS attack via CPU and RAM exhaustion when processing
malformed Apple Property List files in binary format.
..
.. bpo: 42051
.. date: 2020-10-19-10-56-27
.. nonce: EU_B7u
.. section: Security
The :mod:`plistlib` module no longer accepts entity declarations in XML
plist files to avoid XML vulnerabilities. This should not affect users as
entity declarations are not used in regular plist files.
..
.. bpo: 40791
.. date: 2020-05-28-06-06-47
.. nonce: QGZClX
.. section: Security
Add ``volatile`` to the accumulator variable in ``hmac.compare_digest``,
making constant-time-defeating optimizations less likely.
..
.. bpo: 41686
.. date: 2020-11-17-16-25-50
.. nonce: hX77kL
.. section: Core and Builtins
On Windows, the ``SIGINT`` event, ``_PyOS_SigintEvent()``, is now created
even if Python is configured to not install signal handlers (if
:c:member:`PyConfig.install_signal_handlers` equals to 0, or
``Py_InitializeEx(0)``).
..
.. bpo: 42381
.. date: 2020-11-16-23-45-56
.. nonce: G4AWxL
.. section: Core and Builtins
Allow assignment expressions in set literals and set comprehensions as per
PEP 572. Patch by Pablo Galindo.
..
.. bpo: 42374
.. date: 2020-11-16-17-57-09
.. nonce: t7np1E
.. section: Core and Builtins
Fix a regression introduced by the new parser, where an unparenthesized
walrus operator was not allowed within generator expressions.
..
.. bpo: 42296
.. date: 2020-11-13-13-53-11
.. nonce: DuGrLJ
.. section: Core and Builtins
On Windows, fix a regression in signal handling which prevented to interrupt
a program using CTRL+C. The signal handler can be run in a thread different
than the Python thread, in which case the test deciding if the thread can
handle signals is wrong.
..
.. bpo: 42332
.. date: 2020-11-12-23-16-14
.. nonce: fEQIdk
.. section: Core and Builtins
:class:`types.GenericAlias` objects can now be the targets of weakrefs.
..
.. bpo: 42218
.. date: 2020-10-31-17-50-23
.. nonce: Dp_Z3v
.. section: Core and Builtins
Fixed a bug in the PEG parser that was causing crashes in debug mode. Now
errors are checked in left-recursive rules to avoid cases where such errors
do not get handled in time and appear as long-distance crashes in other
places.
..
.. bpo: 42214
.. date: 2020-10-30-22-16-30
.. nonce: lXskM_
.. section: Core and Builtins
Fixed a possible crash in the PEG parser when checking for the '!=' token in
the ``barry_as_flufl`` rule. Patch by Pablo Galindo.
..
.. bpo: 42143
.. date: 2020-10-27-21-34-05
.. nonce: N6KXUO
.. section: Core and Builtins
Fix handling of errors during creation of ``PyFunctionObject``, which
resulted in operations on uninitialized memory. Patch by Yonatan
Goldschmidt.
..
.. bpo: 41659
.. date: 2020-10-27-18-32-49
.. nonce: d4a-8o
.. section: Core and Builtins
Fix a bug in the parser, where a curly brace following a `primary` didn't
fail immediately. This led to invalid expressions like `a {b}` to throw a
:exc:`SyntaxError` with a wrong offset, or invalid expressions ending with a
curly brace like `a {` to not fail immediately in the REPL.
..
.. bpo: 42150
.. date: 2020-10-25-21-14-18
.. nonce: b70u_T
.. section: Core and Builtins
Fix possible buffer overflow in the new parser when checking for
continuation lines. Patch by Pablo Galindo.
..
.. bpo: 42123
.. date: 2020-10-23-02-43-24
.. nonce: 64gJWC
.. section: Core and Builtins
Run the parser two times. On the first run, disable all the rules that only
generate better error messages to gain performance. If there's a parse
failure, run the parser a second time with those enabled.
..
.. bpo: 41910
.. date: 2020-10-21-14-40-54
.. nonce: CzBMit
.. section: Core and Builtins
Document the default implementation of `object.__eq__`.
..
.. bpo: 42057
.. date: 2020-10-20-11-36-14
.. nonce: BI-OoV
.. section: Core and Builtins
Fix peephole optimizer misoptimize conditional jump + JUMP_IF_NOT_EXC_MATCH
pair.
..
.. bpo: 41984
.. date: 2020-10-14-16-19-43
.. nonce: SEtKMr
.. section: Core and Builtins
The garbage collector now tracks all user-defined classes. Patch by Brandt
Bucher.
..
.. bpo: 41993
.. date: 2020-10-10-13-53-52
.. nonce: YMzixQ
.. section: Core and Builtins
Fixed potential issues with removing not completely initialized module from
``sys.modules`` when import fails.
..
.. bpo: 41979
.. date: 2020-10-09-10-55-50
.. nonce: ImXIk2
.. section: Core and Builtins
Star-unpacking is now allowed for with item's targets in the PEG parser.
..
.. bpo: 41909
.. date: 2020-10-04-10-55-12
.. nonce: BqHPcm
.. section: Core and Builtins
Fixed stack overflow in :func:`issubclass` and :func:`isinstance` when
getting the ``__bases__`` attribute leads to infinite recursion.
..
.. bpo: 41894
.. date: 2020-10-02-11-35-33
.. nonce: ffmtOt
.. section: Core and Builtins
When loading a native module and a load failure occurs, prevent a possible
UnicodeDecodeError when not running in a UTF-8 locale by decoding the load
error message using the current locale's encoding.
..
.. bpo: 39934
.. date: 2020-09-24-12-15-45
.. nonce: YVHTCF
.. section: Core and Builtins
Correctly count control blocks in 'except' in compiler. Ensures that a
syntax error, rather a fatal error, occurs for deeply nested, named
exception handlers.
..
.. bpo: 42328
.. date: 2020-11-15-17-02-00
.. nonce: bqpPlR
.. section: Library
Fixed :meth:`tkinter.ttk.Style.map`. The function accepts now the
representation of the default state as empty sequence (as returned by
``Style.map()``). The structure of the result is now the same on all
platform and does not depend on the value of ``wantobjects``.
..
.. bpo: 42345
.. date: 2020-11-15-15-23-34
.. nonce: hiIR7x
.. section: Library
Fix various issues with ``typing.Literal`` parameter handling (flatten,
deduplicate, use type to cache key). Patch provided by Yurii Karabas.
..
.. bpo: 42350
.. date: 2020-11-13-18-53-50
.. nonce: rsql7V
.. section: Library
Fix the :class:`threading.Thread` class at fork: do nothing if the thread is
already stopped (ex: fork called at Python exit). Previously, an error was
logged in the child process.
..
.. bpo: 42014
.. date: 2020-11-10-15-40-56
.. nonce: ShM37l
.. section: Library
The ``onerror`` callback from ``shutil.rmtree`` now receives correct
function when ``os.open`` fails.
..
.. bpo: 42237
.. date: 2020-11-10-14-27-49
.. nonce: F363jO
.. section: Library
Fix `os.sendfile()` on illumos.
..
.. bpo: 42249
.. date: 2020-11-03-09-22-56
.. nonce: vfNO2u
.. section: Library
Fixed writing binary Plist files larger than 4 GiB.
..
.. bpo: 35455
.. date: 2020-11-02-14-10-48
.. nonce: Q1xTIo
.. section: Library
On Solaris, :func:`~time.thread_time` is now implemented with
``gethrvtime()`` because ``clock_gettime(CLOCK_THREAD_CPUTIME_ID)`` is not
always available. Patch by Jakub Kulik.
..
.. bpo: 42233
.. date: 2020-11-02-01-31-15
.. nonce: YxRj-h
.. section: Library
The :func:`repr` of :mod:`typing` types containing :ref:`Generic Alias Types
<types-genericalias>` previously did not show the parameterized types in the
``GenericAlias``. They have now been changed to do so.
..
.. bpo: 41754
.. date: 2020-11-01-15-07-20
.. nonce: DraSZh
.. section: Library
webbrowser: Ignore *NotADirectoryError* when calling ``xdg-settings``.
..
.. bpo: 29566
.. date: 2020-10-31-13-28-36
.. nonce: 6aDbty
.. section: Library
``binhex.binhex()`` consisently writes macOS 9 line endings.
..
.. bpo: 42183
.. date: 2020-10-29-11-17-35
.. nonce: 50ZcIi
.. section: Library
Fix a stack overflow error for asyncio Task or Future repr().
The overflow occurs under some circumstances when a Task or Future
recursively returns itself.
..
.. bpo: 42146
.. date: 2020-10-25-19-25-02
.. nonce: 6A8uvS
.. section: Library
Fix memory leak in :func:`subprocess.Popen` in case an uid (gid) specified
in `user` (`group`, `extra_groups`) overflows `uid_t` (`gid_t`).
..
.. bpo: 42140
.. date: 2020-10-24-04-02-36
.. nonce: miLqvb
.. section: Library
Improve asyncio.wait function to create the futures set just one time.
..
.. bpo: 42103
.. date: 2020-10-23-19-20-14
.. nonce: C5obK2
.. section: Library
:exc:`~plistlib.InvalidFileException` and :exc:`RecursionError` are now the
only errors caused by loading malformed binary Plist file (previously
ValueError and TypeError could be raised in some specific cases).
..
.. bpo: 41052
.. date: 2020-10-21-23-45-02
.. nonce: 3N7J2J
.. section: Library
Pickling heap types implemented in C with protocols 0 and 1 raises now an
error instead of producing incorrect data.
..
.. bpo: 41491
.. date: 2020-10-19-14-02-09
.. nonce: d1BUWH
.. section: Library
plistlib: fix parsing XML plists with hexadecimal integer values
..
.. bpo: 42065
.. date: 2020-10-17-23-17-18
.. nonce: 85BsRA
.. section: Library
Fix an incorrectly formatted error from :meth:`_codecs.charmap_decode` when
called with a mapped value outside the range of valid Unicode code points.
PR by Max Bernstein.
..
.. bpo: 41966
.. date: 2020-10-17-07-52-53
.. nonce: gwEQRZ
.. section: Library
Fix pickling pure Python :class:`datetime.time` subclasses. Patch by Dean
Inwood.
..
.. bpo: 41976
.. date: 2020-10-08-18-22-28
.. nonce: Svm0wb
.. section: Library
Fixed a bug that was causing :func:`ctypes.util.find_library` to return
``None`` when triying to locate a library in an environment when gcc>=9 is
available and ``ldconfig`` is not. Patch by Pablo Galindo
..
.. bpo: 41900
.. date: 2020-10-01-10-50-12
.. nonce: Cho7oh
.. section: Library
C14N 2.0 serialisation in xml.etree.ElementTree failed for unprefixed
attributes when a default namespace was defined.
..
.. bpo: 41840
.. date: 2020-09-23-23-17-59
.. nonce: QRFr4L
.. section: Library
Fix a bug in the :mod:`symtable` module that was causing module-scope global
variables to not be reported as both local and global. Patch by Pablo
Galindo.
..
.. bpo: 41831
.. date: 2020-09-22-11-07-50
.. nonce: k-Eop_
.. section: Library
``str()`` for the ``type`` attribute of the ``tkinter.Event`` object always
returns now the numeric code returned by Tk instead of the name of the event
type.
..
.. bpo: 41817
.. date: 2020-09-22-00-23-30
.. nonce: bnh-VG
.. section: Library
fix `tkinter.EventType` Enum so all members are strings, and none are tuples
..
.. bpo: 41815
.. date: 2020-09-19-23-14-54
.. nonce: RNpuX3
.. section: Library
Fix SQLite3 segfault when backing up closed database. Patch contributed by
Peter David McCormick.
..
.. bpo: 41316
.. date: 2020-07-28-12-08-58
.. nonce: bSCbK4
.. section: Library
Fix the :mod:`tarfile` module to write only basename of TAR file to GZIP
compression header.
..
.. bpo: 16936
.. date: 2020-07-08-09-45-00
.. nonce: z8o8Pn
.. section: Library
Allow ``ctypes.wintypes`` to be imported on non-Windows systems.
..
.. bpo: 40592
.. date: 2020-05-14-16-01-34
.. nonce: Cmk855
.. section: Library
:func:`shutil.which` now ignores empty entries in :envvar:`PATHEXT` instead
of treating them as a match.
..
.. bpo: 40550
.. date: 2020-05-08-21-30-54
.. nonce: i7GWkb
.. section: Library
Fix time-of-check/time-of-action issue in subprocess.Popen.send_signal.
..
.. bpo: 40492
.. date: 2020-05-04-12-16-00
.. nonce: ONk9Na
.. section: Library
Fix ``--outfile`` for :mod:`cProfile` / :mod:`profile` not writing the
output file in the original directory when the program being profiled
changes the working directory. PR by Anthony Sottile.
..
.. bpo: 40105
.. date: 2020-04-03-16-13-59
.. nonce: hfM2c0
.. section: Library
ZipFile truncates files to avoid corruption when a shorter comment is
provided in append ("a") mode. Patch by Jan Mazur.
..
.. bpo: 27321
.. date: 2020-01-19-18-40-26
.. nonce: 8e6SpM
.. section: Library
Fixed KeyError exception when flattening an email to a string attempts to
replace a non-existent Content-Transfer-Encoding header.
..
.. bpo: 42153
.. date: 2020-11-15-13-46-31
.. nonce: KjBhx3
.. section: Documentation
Fix the URL for the IMAP protocol documents.
..
.. bpo: 42061
.. date: 2020-10-28-21-39-45
.. nonce: _x-0sg
.. section: Documentation
Document __format__ functionality for IP addresses.
..
.. bpo: 42010
.. date: 2020-10-21-02-21-14
.. nonce: 76vJ0u
.. section: Documentation
Clarify that subscription expressions are also valid for certain
:term:`classes <class>` and :term:`types <type>` in the standard library,
and for user-defined classes and types if the classmethod
:meth:`__class_getitem__` is provided.
..
.. bpo: 41805
.. date: 2020-10-10-01-36-37
.. nonce: l-CGv5
.. section: Documentation
Documented :ref:`generic alias type <types-genericalias>` and
:data:`types.GenericAlias`. Also added an entry in glossary for
:term:`generic types <generic type>`.
..
.. bpo: 41774
.. date: 2020-09-24-15-35-13
.. nonce: 5IqdGP
.. section: Documentation
In Programming FAQ "Sequences (Tuples/Lists)" section, add "How do you
remove multiple items from a list".
..
.. bpo: 35293
.. date: 2020-09-12-17-37-13
.. nonce: _cOwPD
.. section: Documentation
Fix RemovedInSphinx40Warning when building the documentation. Patch by
Dong-hee Na.
..
.. bpo: 41726
.. date: 2020-09-08-16-57-09
.. nonce: g0UXrn
.. section: Documentation
Update the refcounts info of ``PyType_FromModuleAndSpec``.
..
.. bpo: 39693
.. date: 2020-02-24-09-02-05
.. nonce: QXw0Fm
.. section: Documentation
Fix tarfile's extractfile documentation
..
.. bpo: 39416
.. date: 2020-01-22-05-14-53
.. nonce: uYjhEm
.. section: Documentation
Document some restrictions on the default string representations of numeric
classes.
..
.. bpo: 40754
.. date: 2020-11-13-21-51-34
.. nonce: Ekoxkg
.. section: Tests
Include ``_testinternalcapi`` module in Windows installer for test suite
..
.. bpo: 41739
.. date: 2020-10-12-00-11-47
.. nonce: wSCc4K
.. section: Tests
Fix test_logging.test_race_between_set_target_and_flush(): the test now
waits until all threads complete to avoid leaking running threads.
..
.. bpo: 41970
.. date: 2020-10-08-14-00-17
.. nonce: aZ8QFf
.. section: Tests
Avoid a test failure in ``test_lib2to3`` if the module has already imported
at the time the test executes. Patch by Pablo Galindo.
..
.. bpo: 41944
.. date: 2020-10-05-17-43-46
.. nonce: rf1dYb
.. section: Tests
Tests for CJK codecs no longer call ``eval()`` on content received via HTTP.
..
.. bpo: 41939
.. date: 2020-10-05-09-37-43
.. nonce: P4OlbA
.. section: Tests
Fix test_site.test_license_exists_at_url(): call
``urllib.request.urlcleanup()`` to reset the global
``urllib.request._opener``. Patch by Victor Stinner.
..
.. bpo: 41561
.. date: 2020-09-18-16-14-03
.. nonce: uPnwrW
.. section: Tests
test_ssl: skip test_min_max_version_mismatch when TLS 1.0 is not available
..
.. bpo: 41602
.. date: 2020-08-25-19-25-36
.. nonce: Z64s0I
.. section: Tests
Add tests for SIGINT handling in the runpy module.
..
.. bpo: 41306
.. date: 2020-08-03-13-44-37
.. nonce: VDoWXI
.. section: Tests
Fixed a failure in ``test_tk.test_widgets.ScaleTest`` happening when
executing the test with Tk 8.6.10.
..
.. bpo: 42398
.. date: 2020-11-18-11-58-44
.. nonce: Yt5wO8
.. section: Build
Fix a race condition in "make regen-all" when make -jN option is used to run
jobs in parallel. The clinic.py script now only use atomic write to write
files. Moveover, generated files are now left unchanged if the content does
not change, to not change the file modification time.
..
.. bpo: 41617
.. date: 2020-11-13-15-04-53
.. nonce: 98_oaE
.. section: Build
Fix building ``pycore_bitutils.h`` internal header on old clang version
without ``__builtin_bswap16()`` (ex: Xcode 4.6.3 on Mac OS X 10.7). Patch by
Joshua Root and Victor Stinner.
..
.. bpo: 38249
.. date: 2020-09-28-21-56-51
.. nonce: uzMCaZ
.. section: Build
Update :c:macro:`Py_UNREACHABLE` to use __builtin_unreachable() if only the
compiler is able to use it. Patch by Dong-hee Na.
..
.. bpo: 40998
.. date: 2020-06-17-09-05-02
.. nonce: sgqmg9
.. section: Build
Addressed three compiler warnings found by undefined behavior sanitizer
(ubsan).
..
.. bpo: 42120
.. date: 2020-11-16-22-41-02
.. nonce: 9scgko
.. section: Windows
Remove macro definition of ``copysign`` (to ``_copysign``) in headers.
..
.. bpo: 38439
.. date: 2020-10-20-13-19-42
.. nonce: eMLi-t
.. section: Windows
Updates the icons for IDLE in the Windows Store package.
..
.. bpo: 41744
.. date: 2020-09-11-17-59-33
.. nonce: e_ugDQ
.. section: Windows
Fixes automatic import of props file when using the Nuget package.
..
.. bpo: 41557
.. date: 2020-08-26-09-35-06
.. nonce: vt00cQ
.. section: Windows
Update Windows installer to use SQLite 3.33.0.
..
.. bpo: 38324
.. date: 2020-05-30-02-46-43
.. nonce: 476M-5
.. section: Windows
Avoid Unicode errors when accessing certain locale data on Windows.
..
.. bpo: 41116
.. date: 2020-11-15-16-43-45
.. nonce: oCkbrF
.. section: macOS
Ensure distutils.unixxcompiler.find_library_file can find system provided
libraries on macOS 11.
..
.. bpo: 41100
.. date: 2020-11-01-16-40-23
.. nonce: BApztP
.. section: macOS
Add support for macOS 11 and Apple Silicon systems.
It is now possible to build "Universal 2" binaries using
"--enable-universalsdk --with-universal-archs=universal2".
Binaries build on later macOS versions can be deployed back to older
versions (tested up to macOS 10.9), when using the correct deployment
target. This is tested using Xcode 11 and later.
..
.. bpo: 38443
.. date: 2020-10-23-10-26-53
.. nonce: vu64tl
.. section: macOS
The ``--enable-universalsdk`` and ``--with-universal-archs`` options for the
configure script now check that the specified architectures can be used.
..
.. bpo: 41471
.. date: 2020-10-19-12-25-19
.. nonce: gwA7un
.. section: macOS
Ignore invalid prefix lengths in system proxy excludes.
..
.. bpo: 41557
.. date: 2020-08-26-09-31-37
.. nonce: mcQ75z
.. section: macOS
Update macOS installer to use SQLite 3.33.0.
..
.. bpo: 42426
.. date: 2020-11-21-17-21-21
.. nonce: kNnPoC
.. section: IDLE
Fix reporting offset of the RE error in searchengine.
..
.. bpo: 42415
.. date: 2020-11-20-01-30-27
.. nonce: CyD-va
.. section: IDLE
Get docstrings for IDLE calltips more often by using inspect.getdoc.
..
.. bpo: 33987
.. date: 2020-10-24-21-27-37
.. nonce: fIh9JL
.. section: IDLE
Mostly finish using ttk widgets, mainly for editor, settings, and searches.
Some patches by Mark Roseman.
..
.. bpo: 41775
.. date: 2020-09-24-14-31-16
.. nonce: sB8Vre
.. section: IDLE
Use 'IDLE Shell' as shell title
..
.. bpo: 35764
.. date: 2020-09-22-11-13-45
.. nonce: VoNa8y
.. section: IDLE
Rewrite the Calltips doc section.
..
.. bpo: 40181
.. date: 2020-09-22-00-45-40
.. nonce: hhQi3z
.. section: IDLE
In calltips, stop reminding that '/' marks the end of positional-only
arguments.
..
.. bpo: 40511
.. date: 2020-06-16-12-16-13
.. nonce: XkihpM
.. section: IDLE
Typing opening and closing parentheses inside the parentheses of a function
call will no longer cause unnecessary "flashing" off and on of an existing
open call-tip, e.g. when typed in a string literal.
..
.. bpo: 38439
.. date: 2020-04-22-09-37-40
.. nonce: ieXL-c
.. section: IDLE
Add a 256×256 pixel IDLE icon to the Windows .ico file. Created by Andrew
Clover. Remove the low-color gif variations from the .ico file.
..
.. bpo: 42015
.. date: 2020-10-12-20-13-58
.. nonce: X4H2_V
.. section: C API
Fix potential crash in deallocating method objects when dynamically
allocated `PyMethodDef`'s lifetime is managed through the ``self`` argument
of a `PyCFunction`.
..
.. bpo: 41986
.. date: 2020-10-09-22-50-46
.. nonce: JUPE59
.. section: C API
:c:data:`Py_FileSystemDefaultEncodeErrors` and :c:data:`Py_UTF8Mode` are
available again in limited API.

View File

@ -1,2 +0,0 @@
Addressed three compiler warnings found by undefined behavior sanitizer
(ubsan).

View File

@ -1,2 +0,0 @@
Update :c:macro:`Py_UNREACHABLE` to use __builtin_unreachable() if only the
compiler is able to use it. Patch by Dong-hee Na.

View File

@ -1,3 +0,0 @@
Fix building ``pycore_bitutils.h`` internal header on old clang version
without ``__builtin_bswap16()`` (ex: Xcode 4.6.3 on Mac OS X 10.7). Patch by
Joshua Root and Victor Stinner.

View File

@ -1,4 +0,0 @@
Fix a race condition in "make regen-all" when make -jN option is used to run
jobs in parallel. The clinic.py script now only use atomic write to write
files. Moveover, generated files are now left unchanged if the content does not
change, to not change the file modification time.

View File

@ -1,2 +0,0 @@
:c:data:`Py_FileSystemDefaultEncodeErrors` and :c:data:`Py_UTF8Mode` are
available again in limited API.

View File

@ -1,3 +0,0 @@
Fix potential crash in deallocating method objects when dynamically
allocated `PyMethodDef`'s lifetime is managed through the ``self``
argument of a `PyCFunction`.

View File

@ -1,3 +0,0 @@
Correctly count control blocks in 'except' in compiler. Ensures that a
syntax error, rather a fatal error, occurs for deeply nested, named
exception handlers.

View File

@ -1,3 +0,0 @@
When loading a native module and a load failure occurs, prevent a possible
UnicodeDecodeError when not running in a UTF-8 locale by decoding the load
error message using the current locale's encoding.

View File

@ -1,2 +0,0 @@
Fixed stack overflow in :func:`issubclass` and :func:`isinstance` when
getting the ``__bases__`` attribute leads to infinite recursion.

View File

@ -1 +0,0 @@
Star-unpacking is now allowed for with item's targets in the PEG parser.

View File

@ -1,2 +0,0 @@
Fixed potential issues with removing not completely initialized module from
``sys.modules`` when import fails.

View File

@ -1,2 +0,0 @@
The garbage collector now tracks all user-defined classes. Patch by Brandt
Bucher.

View File

@ -1,2 +0,0 @@
Fix peephole optimizer misoptimize conditional jump + JUMP_IF_NOT_EXC_MATCH
pair.

View File

@ -1 +0,0 @@
Document the default implementation of `object.__eq__`.

View File

@ -1,3 +0,0 @@
Run the parser two times. On the first run, disable all the rules that only
generate better error messages to gain performance. If there's a parse
failure, run the parser a second time with those enabled.

View File

@ -1,2 +0,0 @@
Fix possible buffer overflow in the new parser when checking for
continuation lines. Patch by Pablo Galindo.

View File

@ -1,3 +0,0 @@
Fix a bug in the parser, where a curly brace following a `primary` didn't fail immediately.
This led to invalid expressions like `a {b}` to throw a :exc:`SyntaxError` with a wrong offset,
or invalid expressions ending with a curly brace like `a {` to not fail immediately in the REPL.

View File

@ -1,2 +0,0 @@
Fix handling of errors during creation of ``PyFunctionObject``, which resulted
in operations on uninitialized memory. Patch by Yonatan Goldschmidt.

View File

@ -1,2 +0,0 @@
Fixed a possible crash in the PEG parser when checking for the '!=' token in
the ``barry_as_flufl`` rule. Patch by Pablo Galindo.

View File

@ -1,3 +0,0 @@
Fixed a bug in the PEG parser that was causing crashes in debug mode. Now errors are checked
in left-recursive rules to avoid cases where such errors do not get handled in time and appear
as long-distance crashes in other places.

View File

@ -1 +0,0 @@
:class:`types.GenericAlias` objects can now be the targets of weakrefs.

View File

@ -1,4 +0,0 @@
On Windows, fix a regression in signal handling which prevented to interrupt
a program using CTRL+C. The signal handler can be run in a thread different
than the Python thread, in which case the test deciding if the thread can
handle signals is wrong.

View File

@ -1,2 +0,0 @@
Fix a regression introduced by the new parser, where an unparenthesized walrus operator
was not allowed within generator expressions.

View File

@ -1,2 +0,0 @@
Allow assignment expressions in set literals and set comprehensions as per
PEP 572. Patch by Pablo Galindo.

View File

@ -1,4 +0,0 @@
On Windows, the ``SIGINT`` event, ``_PyOS_SigintEvent()``, is now created
even if Python is configured to not install signal handlers (if
:c:member:`PyConfig.install_signal_handlers` equals to 0, or
``Py_InitializeEx(0)``).

View File

@ -1 +0,0 @@
Document some restrictions on the default string representations of numeric classes.

View File

@ -1 +0,0 @@
Fix tarfile's extractfile documentation

View File

@ -1 +0,0 @@
Update the refcounts info of ``PyType_FromModuleAndSpec``.

View File

@ -1 +0,0 @@
Fix RemovedInSphinx40Warning when building the documentation. Patch by Dong-hee Na.

View File

@ -1,2 +0,0 @@
In Programming FAQ "Sequences (Tuples/Lists)" section, add "How do you
remove multiple items from a list".

View File

@ -1,3 +0,0 @@
Documented :ref:`generic alias type <types-genericalias>` and
:data:`types.GenericAlias`. Also added an entry in glossary for
:term:`generic types <generic type>`.

View File

@ -1,4 +0,0 @@
Clarify that subscription expressions are also valid for certain
:term:`classes <class>` and :term:`types <type>` in the standard library, and
for user-defined classes and types if the classmethod
:meth:`__class_getitem__` is provided.

View File

@ -1 +0,0 @@
Document __format__ functionality for IP addresses.

View File

@ -1 +0,0 @@
Fix the URL for the IMAP protocol documents.

View File

@ -1,2 +0,0 @@
Add a 256×256 pixel IDLE icon to the Windows .ico file. Created by Andrew
Clover. Remove the low-color gif variations from the .ico file.

View File

@ -1,3 +0,0 @@
Typing opening and closing parentheses inside the parentheses of a function
call will no longer cause unnecessary "flashing" off and on of an existing
open call-tip, e.g. when typed in a string literal.

View File

@ -1,2 +0,0 @@
In calltips, stop reminding that '/' marks the end of positional-only
arguments.

View File

@ -1 +0,0 @@
Rewrite the Calltips doc section.

View File

@ -1 +0,0 @@
Use 'IDLE Shell' as shell title

View File

@ -1,3 +0,0 @@
Mostly finish using ttk widgets, mainly for editor, settings,
and searches. Some patches by Mark Roseman.

View File

@ -1 +0,0 @@
Get docstrings for IDLE calltips more often by using inspect.getdoc.

View File

@ -1 +0,0 @@
Fix reporting offset of the RE error in searchengine.

View File

@ -1,2 +0,0 @@
Fixed KeyError exception when flattening an email to a string attempts to
replace a non-existent Content-Transfer-Encoding header.

View File

@ -1,2 +0,0 @@
ZipFile truncates files to avoid corruption when a shorter comment is provided
in append ("a") mode. Patch by Jan Mazur.

View File

@ -1,3 +0,0 @@
Fix ``--outfile`` for :mod:`cProfile` / :mod:`profile` not writing the output
file in the original directory when the program being profiled changes the
working directory. PR by Anthony Sottile.

View File

@ -1 +0,0 @@
Fix time-of-check/time-of-action issue in subprocess.Popen.send_signal.

View File

@ -1 +0,0 @@
:func:`shutil.which` now ignores empty entries in :envvar:`PATHEXT` instead of treating them as a match.

View File

@ -1 +0,0 @@
Allow ``ctypes.wintypes`` to be imported on non-Windows systems.

View File

@ -1 +0,0 @@
Fix the :mod:`tarfile` module to write only basename of TAR file to GZIP compression header.

View File

@ -1,2 +0,0 @@
Fix SQLite3 segfault when backing up closed database. Patch contributed by
Peter David McCormick.

View File

@ -1 +0,0 @@
fix `tkinter.EventType` Enum so all members are strings, and none are tuples

View File

@ -1,3 +0,0 @@
``str()`` for the ``type`` attribute of the ``tkinter.Event`` object always
returns now the numeric code returned by Tk instead of the name of the event
type.

View File

@ -1,3 +0,0 @@
Fix a bug in the :mod:`symtable` module that was causing module-scope global
variables to not be reported as both local and global. Patch by Pablo
Galindo.

View File

@ -1,2 +0,0 @@
C14N 2.0 serialisation in xml.etree.ElementTree failed for unprefixed attributes
when a default namespace was defined.

View File

@ -1,3 +0,0 @@
Fixed a bug that was causing :func:`ctypes.util.find_library` to return
``None`` when triying to locate a library in an environment when gcc>=9 is
available and ``ldconfig`` is not. Patch by Pablo Galindo

View File

@ -1,2 +0,0 @@
Fix pickling pure Python :class:`datetime.time` subclasses. Patch by Dean
Inwood.

View File

@ -1,3 +0,0 @@
Fix an incorrectly formatted error from :meth:`_codecs.charmap_decode` when
called with a mapped value outside the range of valid Unicode code points.
PR by Max Bernstein.

View File

@ -1 +0,0 @@
plistlib: fix parsing XML plists with hexadecimal integer values

View File

@ -1,2 +0,0 @@
Pickling heap types implemented in C with protocols 0 and 1 raises now an
error instead of producing incorrect data.

View File

@ -1,3 +0,0 @@
:exc:`~plistlib.InvalidFileException` and :exc:`RecursionError` are now
the only errors caused by loading malformed binary Plist file (previously
ValueError and TypeError could be raised in some specific cases).

View File

@ -1 +0,0 @@
Improve asyncio.wait function to create the futures set just one time.

View File

@ -1,2 +0,0 @@
Fix memory leak in :func:`subprocess.Popen` in case an uid (gid) specified in
`user` (`group`, `extra_groups`) overflows `uid_t` (`gid_t`).

View File

@ -1,4 +0,0 @@
Fix a stack overflow error for asyncio Task or Future repr().
The overflow occurs under some circumstances when a Task or Future
recursively returns itself.

View File

@ -1 +0,0 @@
``binhex.binhex()`` consisently writes macOS 9 line endings.

View File

@ -1 +0,0 @@
webbrowser: Ignore *NotADirectoryError* when calling ``xdg-settings``.

View File

@ -1,3 +0,0 @@
The :func:`repr` of :mod:`typing` types containing
:ref:`Generic Alias Types <types-genericalias>` previously did not show the
parameterized types in the ``GenericAlias``. They have now been changed to do so.

View File

@ -1,3 +0,0 @@
On Solaris, :func:`~time.thread_time` is now implemented with
``gethrvtime()`` because ``clock_gettime(CLOCK_THREAD_CPUTIME_ID)`` is not
always available. Patch by Jakub Kulik.

View File

@ -1 +0,0 @@
Fixed writing binary Plist files larger than 4 GiB.

View File

@ -1 +0,0 @@
Fix `os.sendfile()` on illumos.

View File

@ -1 +0,0 @@
The ``onerror`` callback from ``shutil.rmtree`` now receives correct function when ``os.open`` fails.

View File

@ -1,3 +0,0 @@
Fix the :class:`threading.Thread` class at fork: do nothing if the thread is
already stopped (ex: fork called at Python exit). Previously, an error was
logged in the child process.

View File

@ -1,2 +0,0 @@
Fix various issues with ``typing.Literal`` parameter handling (flatten,
deduplicate, use type to cache key). Patch provided by Yurii Karabas.

View File

@ -1,4 +0,0 @@
Fixed :meth:`tkinter.ttk.Style.map`. The function accepts now the
representation of the default state as empty sequence (as returned by
``Style.map()``). The structure of the result is now the same on all platform
and does not depend on the value of ``wantobjects``.

View File

@ -1 +0,0 @@
Add ``volatile`` to the accumulator variable in ``hmac.compare_digest``, making constant-time-defeating optimizations less likely.

View File

@ -1,3 +0,0 @@
The :mod:`plistlib` module no longer accepts entity declarations in XML
plist files to avoid XML vulnerabilities. This should not affect users as
entity declarations are not used in regular plist files.

View File

@ -1,2 +0,0 @@
Prevented potential DoS attack via CPU and RAM exhaustion when processing
malformed Apple Property List files in binary format.

View File

@ -1 +0,0 @@
Fixed a failure in ``test_tk.test_widgets.ScaleTest`` happening when executing the test with Tk 8.6.10.

View File

@ -1 +0,0 @@
Add tests for SIGINT handling in the runpy module.

View File

@ -1 +0,0 @@
test_ssl: skip test_min_max_version_mismatch when TLS 1.0 is not available

View File

@ -1,3 +0,0 @@
Fix test_site.test_license_exists_at_url(): call
``urllib.request.urlcleanup()`` to reset the global
``urllib.request._opener``. Patch by Victor Stinner.

View File

@ -1 +0,0 @@
Tests for CJK codecs no longer call ``eval()`` on content received via HTTP.

View File

@ -1,2 +0,0 @@
Avoid a test failure in ``test_lib2to3`` if the module has already imported
at the time the test executes. Patch by Pablo Galindo.

View File

@ -1,2 +0,0 @@
Fix test_logging.test_race_between_set_target_and_flush(): the test now
waits until all threads complete to avoid leaking running threads.

View File

@ -1 +0,0 @@
Include ``_testinternalcapi`` module in Windows installer for test suite

View File

@ -1 +0,0 @@
Avoid Unicode errors when accessing certain locale data on Windows.

View File

@ -1 +0,0 @@
Update Windows installer to use SQLite 3.33.0.

View File

@ -1 +0,0 @@
Fixes automatic import of props file when using the Nuget package.

View File

@ -1 +0,0 @@
Updates the icons for IDLE in the Windows Store package.

View File

@ -1 +0,0 @@
Remove macro definition of ``copysign`` (to ``_copysign``) in headers.

View File

@ -1 +0,0 @@
Update macOS installer to use SQLite 3.33.0.

View File

@ -1 +0,0 @@
Ignore invalid prefix lengths in system proxy excludes.

View File

@ -1,2 +0,0 @@
The ``--enable-universalsdk`` and ``--with-universal-archs`` options for the
configure script now check that the specified architectures can be used.

View File

@ -1,8 +0,0 @@
Add support for macOS 11 and Apple Silicon systems.
It is now possible to build "Universal 2" binaries using
"--enable-universalsdk --with-universal-archs=universal2".
Binaries build on later macOS versions can be deployed back to older
versions (tested up to macOS 10.9), when using the correct deployment
target. This is tested using Xcode 11 and later.

View File

@ -1 +0,0 @@
Ensure distutils.unixxcompiler.find_library_file can find system provided libraries on macOS 11.

View File

@ -1,5 +1,5 @@
This is Python version 3.9.0
============================
This is Python version 3.9.1rc1
===============================
.. image:: https://travis-ci.org/python/cpython.svg?branch=3.9
:alt: CPython build status on Travis CI