Python 3.8.2rc1
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAl5BvZEACgkQsmmV4xAl BWhElA/+JjXT0JFCuPp3BfRO4U0MMSxYalgLzvIa3VVMcH1botZWJk2Hn5S3UZNu kaay08L0A0cFqU/Wly+RPmQRNOCwDbByHJWpDVKKoBGvR6jQYsDI7RQ4DXjdij8P CRSsgfIqt+3JoAvYkcbW8R/qdMQr9mNAdEvZimoV9ZnToP6RA6byPdwpcllNaXOe IxSMEPVHhsn6OvfA9B7c6lKa021lDqmDnk1/uA4rukkI7vJcClXaiMgogwFM/hct hcU1FfT2l7d9JawrGiv+zHJRs7KBD9f+pBsco6FBbijwlQ7aXKEoWfGWKvWUz2Fw GxH4h8i2mjvkfraARJdoHyc39CgGYqFPTBrwJC1KA4zs2KfDuhNzYuWMsXirdT6p IglBQ2pJ5kIxdItrhOAw9CpbxZmAIR8uSTzbWdKQRsPviQouURh/nTRpKeNErviM UkN1TNdS1zixjCE/6EG04nrEjjJr2/lmvKZ0Y+nGcYKrTXLJt1WKWCgwjBnv+t7i nNp3HqMmcekkX2pOIhHKn+zUhcl/bMax8tg9Q0+sAxSsVedA3PZDucVC43sv+1uY pbm8dXesCWE9bkDpNkeG06IYA/HHv1YB4l698MLC9of0vvAEWcqobArHwSm8+7bk Gz8EnSjEIQEeNAOS76yVAk0G4Go1kdvEgpsl5G0WovwepEVPINs= =sBHh -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQJEBAABCAAuFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAl5CoCQQHGx1a2FzekBs YW5nYS5wbAAKCRCyaZXjECUFaIwsD/9ADDbV8PiyJV2BKOrGH14oGDQcOj/qU4ZT UJEJhCe0jHW/6fhk031lveKYeOwnuWu9h56JP5VfhnoRZEeFv8aY+i2xk4wEgzpA a+Ts2ZPIWFx4NDboBxhlxE4Dt1HhmvLUBM63dyH9fqMFHHagdnpwLkSWI2yFGK5u wVdfmO351G0PE9KUCD8QQOE802LfCoJbUo7Q1H20BqfxuUlLzm6VWDZzgjyLIgCV bXeu37rKDuoFo8hlsON42rI0OVQAso2CMLvdp/Q98cj8oqcpQ/RJZ2wfJ2CzmFy4 fNi4dluQXGkkx+V6SLpFmRkNH1FEAHfz5Ha0p/V18mCwsWR3kgcWZ/UnUhm6RDsl 2lHhURMdkDhgEHYFgeB51ZxnuogJ02uGixEUKjDecizadzd1BBpGZALMU8jIiRKC l5u+aMSbC2RyT84EyRAlb748g55x7bdGcE+axwyhxOF0gik4cGoDaF5wcnz3MSrT BjXmQ3gp/Z2vw95bmZ6UBHn/NCaZInsEMiscCwm/UwI54/qCwrh2UTIdkPEX+4zm C+g26Ypq/f8Ki9SXQlrCg8JFRDpKCBS94/L1f+enQgWO7Na5wtSNdDvMsroaDqqH MgZFjuUz7dI38xXRoUa1Jz+PQRAziB4qAF44f87gL7rHkZySX9lgKj8H+19kH0dZ SmAF5q6J3w== =6Yin -----END PGP SIGNATURE----- Merge tag 'v3.8.2rc1' into 3.8 Python 3.8.2rc1
This commit is contained in:
commit
2cceef562a
|
@ -18,12 +18,12 @@
|
|||
/*--start constants--*/
|
||||
#define PY_MAJOR_VERSION 3
|
||||
#define PY_MINOR_VERSION 8
|
||||
#define PY_MICRO_VERSION 1
|
||||
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
|
||||
#define PY_RELEASE_SERIAL 0
|
||||
#define PY_MICRO_VERSION 2
|
||||
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_GAMMA
|
||||
#define PY_RELEASE_SERIAL 1
|
||||
|
||||
/* Version as a string */
|
||||
#define PY_VERSION "3.8.1+"
|
||||
#define PY_VERSION "3.8.2rc1"
|
||||
/*--end constants--*/
|
||||
|
||||
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Autogenerated by Sphinx on Wed Dec 18 18:17:58 2019
|
||||
# Autogenerated by Sphinx on Mon Feb 10 19:25:27 2020
|
||||
topics = {'assert': 'The "assert" statement\n'
|
||||
'**********************\n'
|
||||
'\n'
|
||||
|
@ -470,24 +470,25 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'The following code:\n'
|
||||
'\n'
|
||||
' async for TARGET in ITER:\n'
|
||||
' BLOCK\n'
|
||||
' SUITE\n'
|
||||
' else:\n'
|
||||
' BLOCK2\n'
|
||||
' SUITE2\n'
|
||||
'\n'
|
||||
'Is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' iter = (ITER)\n'
|
||||
' iter = type(iter).__aiter__(iter)\n'
|
||||
' running = True\n'
|
||||
'\n'
|
||||
' while running:\n'
|
||||
' try:\n'
|
||||
' TARGET = await type(iter).__anext__(iter)\n'
|
||||
' except StopAsyncIteration:\n'
|
||||
' running = False\n'
|
||||
' else:\n'
|
||||
' BLOCK\n'
|
||||
' SUITE\n'
|
||||
' else:\n'
|
||||
' BLOCK2\n'
|
||||
' SUITE2\n'
|
||||
'\n'
|
||||
'See also "__aiter__()" and "__anext__()" for details.\n'
|
||||
'\n'
|
||||
|
@ -507,23 +508,27 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'\n'
|
||||
'The following code:\n'
|
||||
'\n'
|
||||
' async with EXPR as VAR:\n'
|
||||
' BLOCK\n'
|
||||
' async with EXPRESSION as TARGET:\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'Is semantically equivalent to:\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' mgr = (EXPR)\n'
|
||||
' aexit = type(mgr).__aexit__\n'
|
||||
' aenter = type(mgr).__aenter__(mgr)\n'
|
||||
' manager = (EXPRESSION)\n'
|
||||
' aexit = type(manager).__aexit__\n'
|
||||
' aenter = type(manager).__aenter__\n'
|
||||
' value = await aenter(manager)\n'
|
||||
' hit_except = False\n'
|
||||
'\n'
|
||||
' VAR = await aenter\n'
|
||||
' try:\n'
|
||||
' BLOCK\n'
|
||||
' TARGET = value\n'
|
||||
' SUITE\n'
|
||||
' except:\n'
|
||||
' if not await aexit(mgr, *sys.exc_info()):\n'
|
||||
' hit_except = True\n'
|
||||
' if not await aexit(manager, *sys.exc_info()):\n'
|
||||
' raise\n'
|
||||
' else:\n'
|
||||
' await aexit(mgr, None, None, None)\n'
|
||||
' finally:\n'
|
||||
' if not hit_except:\n'
|
||||
' await aexit(manager, None, None, None)\n'
|
||||
'\n'
|
||||
'See also "__aenter__()" and "__aexit__()" for details.\n'
|
||||
'\n'
|
||||
|
@ -2518,11 +2523,13 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'"with_item")\n'
|
||||
' is evaluated to obtain a context manager.\n'
|
||||
'\n'
|
||||
'2. The context manager’s "__exit__()" is loaded for later use.\n'
|
||||
'2. The context manager’s "__enter__()" is loaded for later use.\n'
|
||||
'\n'
|
||||
'3. The context manager’s "__enter__()" method is invoked.\n'
|
||||
'3. The context manager’s "__exit__()" is loaded for later use.\n'
|
||||
'\n'
|
||||
'4. If a target was included in the "with" statement, the return\n'
|
||||
'4. The context manager’s "__enter__()" method is invoked.\n'
|
||||
'\n'
|
||||
'5. If a target was included in the "with" statement, the return\n'
|
||||
' value from "__enter__()" is assigned to it.\n'
|
||||
'\n'
|
||||
' Note: The "with" statement guarantees that if the '
|
||||
|
@ -2535,9 +2542,9 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'occurring\n'
|
||||
' within the suite would be. See step 6 below.\n'
|
||||
'\n'
|
||||
'5. The suite is executed.\n'
|
||||
'6. The suite is executed.\n'
|
||||
'\n'
|
||||
'6. The context manager’s "__exit__()" method is invoked. If an\n'
|
||||
'7. The context manager’s "__exit__()" method is invoked. If an\n'
|
||||
' exception caused the suite to be exited, its type, value, '
|
||||
'and\n'
|
||||
' traceback are passed as arguments to "__exit__()". Otherwise, '
|
||||
|
@ -2559,18 +2566,42 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'proceeds\n'
|
||||
' at the normal location for the kind of exit that was taken.\n'
|
||||
'\n'
|
||||
'The following code:\n'
|
||||
'\n'
|
||||
' with EXPRESSION as TARGET:\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' manager = (EXPRESSION)\n'
|
||||
' enter = type(manager).__enter__\n'
|
||||
' exit = type(manager).__exit__\n'
|
||||
' value = enter(manager)\n'
|
||||
' hit_except = False\n'
|
||||
'\n'
|
||||
' try:\n'
|
||||
' TARGET = value\n'
|
||||
' SUITE\n'
|
||||
' except:\n'
|
||||
' hit_except = True\n'
|
||||
' if not exit(manager, *sys.exc_info()):\n'
|
||||
' raise\n'
|
||||
' finally:\n'
|
||||
' if not hit_except:\n'
|
||||
' exit(manager, None, None, None)\n'
|
||||
'\n'
|
||||
'With more than one item, the context managers are processed as '
|
||||
'if\n'
|
||||
'multiple "with" statements were nested:\n'
|
||||
'\n'
|
||||
' with A() as a, B() as b:\n'
|
||||
' suite\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'is equivalent to\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' with A() as a:\n'
|
||||
' with B() as b:\n'
|
||||
' suite\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'Changed in version 3.1: Support for multiple context '
|
||||
'expressions.\n'
|
||||
|
@ -2934,24 +2965,25 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'The following code:\n'
|
||||
'\n'
|
||||
' async for TARGET in ITER:\n'
|
||||
' BLOCK\n'
|
||||
' SUITE\n'
|
||||
' else:\n'
|
||||
' BLOCK2\n'
|
||||
' SUITE2\n'
|
||||
'\n'
|
||||
'Is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' iter = (ITER)\n'
|
||||
' iter = type(iter).__aiter__(iter)\n'
|
||||
' running = True\n'
|
||||
'\n'
|
||||
' while running:\n'
|
||||
' try:\n'
|
||||
' TARGET = await type(iter).__anext__(iter)\n'
|
||||
' except StopAsyncIteration:\n'
|
||||
' running = False\n'
|
||||
' else:\n'
|
||||
' BLOCK\n'
|
||||
' SUITE\n'
|
||||
' else:\n'
|
||||
' BLOCK2\n'
|
||||
' SUITE2\n'
|
||||
'\n'
|
||||
'See also "__aiter__()" and "__anext__()" for details.\n'
|
||||
'\n'
|
||||
|
@ -2971,23 +3003,27 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'\n'
|
||||
'The following code:\n'
|
||||
'\n'
|
||||
' async with EXPR as VAR:\n'
|
||||
' BLOCK\n'
|
||||
' async with EXPRESSION as TARGET:\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'Is semantically equivalent to:\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' mgr = (EXPR)\n'
|
||||
' aexit = type(mgr).__aexit__\n'
|
||||
' aenter = type(mgr).__aenter__(mgr)\n'
|
||||
' manager = (EXPRESSION)\n'
|
||||
' aexit = type(manager).__aexit__\n'
|
||||
' aenter = type(manager).__aenter__\n'
|
||||
' value = await aenter(manager)\n'
|
||||
' hit_except = False\n'
|
||||
'\n'
|
||||
' VAR = await aenter\n'
|
||||
' try:\n'
|
||||
' BLOCK\n'
|
||||
' TARGET = value\n'
|
||||
' SUITE\n'
|
||||
' except:\n'
|
||||
' if not await aexit(mgr, *sys.exc_info()):\n'
|
||||
' hit_except = True\n'
|
||||
' if not await aexit(manager, *sys.exc_info()):\n'
|
||||
' raise\n'
|
||||
' else:\n'
|
||||
' await aexit(mgr, None, None, None)\n'
|
||||
' finally:\n'
|
||||
' if not hit_except:\n'
|
||||
' await aexit(manager, None, None, None)\n'
|
||||
'\n'
|
||||
'See also "__aenter__()" and "__aexit__()" for details.\n'
|
||||
'\n'
|
||||
|
@ -6803,7 +6839,7 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'object.__rfloordiv__(self, other)\n'
|
||||
'object.__rmod__(self, other)\n'
|
||||
'object.__rdivmod__(self, other)\n'
|
||||
'object.__rpow__(self, other)\n'
|
||||
'object.__rpow__(self, other[, modulo])\n'
|
||||
'object.__rlshift__(self, other)\n'
|
||||
'object.__rrshift__(self, other)\n'
|
||||
'object.__rand__(self, other)\n'
|
||||
|
@ -8963,7 +8999,9 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'bases,\n'
|
||||
'**kwds)" (where the additional keyword arguments, if any, '
|
||||
'come from\n'
|
||||
'the class definition).\n'
|
||||
'the class definition). The "__prepare__" method should be '
|
||||
'implemented\n'
|
||||
'as a "classmethod()".\n'
|
||||
'\n'
|
||||
'If the metaclass has no "__prepare__" attribute, then the '
|
||||
'class\n'
|
||||
|
@ -9477,7 +9515,7 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'object.__rfloordiv__(self, other)\n'
|
||||
'object.__rmod__(self, other)\n'
|
||||
'object.__rdivmod__(self, other)\n'
|
||||
'object.__rpow__(self, other)\n'
|
||||
'object.__rpow__(self, other[, modulo])\n'
|
||||
'object.__rlshift__(self, other)\n'
|
||||
'object.__rrshift__(self, other)\n'
|
||||
'object.__rand__(self, other)\n'
|
||||
|
@ -11918,8 +11956,9 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
' bytecode offsets to line numbers (for details see the source\n'
|
||||
' code of the interpreter); "co_stacksize" is the required '
|
||||
'stack\n'
|
||||
' size (including local variables); "co_flags" is an integer\n'
|
||||
' encoding a number of flags for the interpreter.\n'
|
||||
' size; "co_flags" is an integer encoding a number of flags '
|
||||
'for\n'
|
||||
' the interpreter.\n'
|
||||
'\n'
|
||||
' The following flag bits are defined for "co_flags": bit '
|
||||
'"0x04"\n'
|
||||
|
@ -12372,6 +12411,8 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'dictionary. This\n'
|
||||
' is a shortcut for "reversed(d.keys())".\n'
|
||||
'\n'
|
||||
' New in version 3.8.\n'
|
||||
'\n'
|
||||
' setdefault(key[, default])\n'
|
||||
'\n'
|
||||
' If *key* is in the dictionary, return its value. If '
|
||||
|
@ -13577,11 +13618,13 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'1. The context expression (the expression given in the "with_item")\n'
|
||||
' is evaluated to obtain a context manager.\n'
|
||||
'\n'
|
||||
'2. The context manager’s "__exit__()" is loaded for later use.\n'
|
||||
'2. The context manager’s "__enter__()" is loaded for later use.\n'
|
||||
'\n'
|
||||
'3. The context manager’s "__enter__()" method is invoked.\n'
|
||||
'3. The context manager’s "__exit__()" is loaded for later use.\n'
|
||||
'\n'
|
||||
'4. If a target was included in the "with" statement, the return\n'
|
||||
'4. The context manager’s "__enter__()" method is invoked.\n'
|
||||
'\n'
|
||||
'5. If a target was included in the "with" statement, the return\n'
|
||||
' value from "__enter__()" is assigned to it.\n'
|
||||
'\n'
|
||||
' Note: The "with" statement guarantees that if the "__enter__()"\n'
|
||||
|
@ -13591,9 +13634,9 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
' target list, it will be treated the same as an error occurring\n'
|
||||
' within the suite would be. See step 6 below.\n'
|
||||
'\n'
|
||||
'5. The suite is executed.\n'
|
||||
'6. The suite is executed.\n'
|
||||
'\n'
|
||||
'6. The context manager’s "__exit__()" method is invoked. If an\n'
|
||||
'7. The context manager’s "__exit__()" method is invoked. If an\n'
|
||||
' exception caused the suite to be exited, its type, value, and\n'
|
||||
' traceback are passed as arguments to "__exit__()". Otherwise, '
|
||||
'three\n'
|
||||
|
@ -13613,17 +13656,41 @@ topics = {'assert': 'The "assert" statement\n'
|
|||
'proceeds\n'
|
||||
' at the normal location for the kind of exit that was taken.\n'
|
||||
'\n'
|
||||
'The following code:\n'
|
||||
'\n'
|
||||
' with EXPRESSION as TARGET:\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' manager = (EXPRESSION)\n'
|
||||
' enter = type(manager).__enter__\n'
|
||||
' exit = type(manager).__exit__\n'
|
||||
' value = enter(manager)\n'
|
||||
' hit_except = False\n'
|
||||
'\n'
|
||||
' try:\n'
|
||||
' TARGET = value\n'
|
||||
' SUITE\n'
|
||||
' except:\n'
|
||||
' hit_except = True\n'
|
||||
' if not exit(manager, *sys.exc_info()):\n'
|
||||
' raise\n'
|
||||
' finally:\n'
|
||||
' if not hit_except:\n'
|
||||
' exit(manager, None, None, None)\n'
|
||||
'\n'
|
||||
'With more than one item, the context managers are processed as if\n'
|
||||
'multiple "with" statements were nested:\n'
|
||||
'\n'
|
||||
' with A() as a, B() as b:\n'
|
||||
' suite\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'is equivalent to\n'
|
||||
'is semantically equivalent to:\n'
|
||||
'\n'
|
||||
' with A() as a:\n'
|
||||
' with B() as b:\n'
|
||||
' suite\n'
|
||||
' SUITE\n'
|
||||
'\n'
|
||||
'Changed in version 3.1: Support for multiple context expressions.\n'
|
||||
'\n'
|
||||
|
|
|
@ -0,0 +1,580 @@
|
|||
.. bpo: 39401
|
||||
.. date: 2020-01-28-20-54-09
|
||||
.. nonce: he7h_A
|
||||
.. release date: 2020-02-10
|
||||
.. section: Security
|
||||
|
||||
Avoid unsafe load of ``api-ms-win-core-path-l1-1-0.dll`` at startup on
|
||||
Windows 7.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39184
|
||||
.. date: 2020-01-07-00-42-08
|
||||
.. nonce: fe7NgK
|
||||
.. section: Security
|
||||
|
||||
Add audit events to command execution functions in os and pty modules.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39579
|
||||
.. date: 2020-02-07-15-18-35
|
||||
.. nonce: itNmC0
|
||||
.. section: Core and Builtins
|
||||
|
||||
Change the ending column offset of `Attribute` nodes constructed in
|
||||
`ast_for_dotted_name` to point at the end of the current node and not at the
|
||||
end of the last `NAME` node.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39510
|
||||
.. date: 2020-02-04-10-27-41
|
||||
.. nonce: PMIh-f
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix segfault in ``readinto()`` method on closed BufferedReader.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39492
|
||||
.. date: 2020-01-30-01-14-42
|
||||
.. nonce: eTuy0F
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix a reference cycle in the C Pickler that was preventing the garbage
|
||||
collection of deleted, pickled objects.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39421
|
||||
.. date: 2020-01-22-15-53-37
|
||||
.. nonce: O3nG7u
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix possible crashes when operating with the functions in the :mod:`heapq`
|
||||
module and custom comparison operators.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39386
|
||||
.. date: 2020-01-20-21-40-57
|
||||
.. nonce: ULqD8t
|
||||
.. section: Core and Builtins
|
||||
|
||||
Prevent double awaiting of async iterator.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39235
|
||||
.. date: 2020-01-09-10-01-18
|
||||
.. nonce: RYwjoc
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix AST end location for lone generator expression in function call, e.g.
|
||||
f(i for i in a).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39209
|
||||
.. date: 2020-01-06-10-29-16
|
||||
.. nonce: QHAONe
|
||||
.. section: Core and Builtins
|
||||
|
||||
Correctly handle multi-line tokens in interactive mode. Patch by Pablo
|
||||
Galindo.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39216
|
||||
.. date: 2020-01-05-06-55-52
|
||||
.. nonce: 74jLh9
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix constant folding optimization for positional only arguments - by Anthony
|
||||
Sottile.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39215
|
||||
.. date: 2020-01-04-17-25-34
|
||||
.. nonce: xiqiIz
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix ``SystemError`` when nested function has annotation on positional-only
|
||||
argument - by Anthony Sottile.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38588
|
||||
.. date: 2019-12-29-19-13-54
|
||||
.. nonce: pgXnNS
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix possible crashes in dict and list when calling
|
||||
:c:func:`PyObject_RichCompareBool`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38610
|
||||
.. date: 2019-10-31-14-30-39
|
||||
.. nonce: fHdVMS
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix possible crashes in several list methods by holding strong references to
|
||||
list elements when calling :c:func:`PyObject_RichCompareBool`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39590
|
||||
.. date: 2020-02-09-05-51-05
|
||||
.. nonce: rf98GU
|
||||
.. section: Library
|
||||
|
||||
Collections.deque now holds strong references during deque.__contains__ and
|
||||
deque.count, fixing crashes.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38149
|
||||
.. date: 2020-02-05-11-24-16
|
||||
.. nonce: GWsjHE
|
||||
.. section: Library
|
||||
|
||||
:func:`sys.audit` is now called only once per call of :func:`glob.glob` and
|
||||
:func:`glob.iglob`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39450
|
||||
.. date: 2020-02-02-14-46-34
|
||||
.. nonce: 48R274
|
||||
.. section: Library
|
||||
|
||||
Striped whitespace from docstring before returning it from
|
||||
:func:`unittest.case.shortDescription`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39493
|
||||
.. date: 2020-01-30-01-13-19
|
||||
.. nonce: CbFRi7
|
||||
.. section: Library
|
||||
|
||||
Mark ``typing.IO.closed`` as a property
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39485
|
||||
.. date: 2020-01-29-14-58-27
|
||||
.. nonce: Zy3ot6
|
||||
.. section: Library
|
||||
|
||||
Fix a bug in :func:`unittest.mock.create_autospec` that would complain about
|
||||
the wrong number of arguments for custom descriptors defined in an extension
|
||||
module returning functions.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39082
|
||||
.. date: 2020-01-24-13-24-35
|
||||
.. nonce: qKgrq_
|
||||
.. section: Library
|
||||
|
||||
Allow AsyncMock to correctly patch static/class methods
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39430
|
||||
.. date: 2020-01-24-11-05-21
|
||||
.. nonce: I0UQzM
|
||||
.. section: Library
|
||||
|
||||
Fixed race condition in lazy imports in :mod:`tarfile`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39390
|
||||
.. date: 2020-01-23-21-34-29
|
||||
.. nonce: D2tSXk
|
||||
.. section: Library
|
||||
|
||||
Fixed a regression with the `ignore` callback of :func:`shutil.copytree`.
|
||||
The argument types are now str and List[str] again.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39389
|
||||
.. date: 2020-01-20-00-56-01
|
||||
.. nonce: fEirIS
|
||||
.. section: Library
|
||||
|
||||
Write accurate compression level metadata in :mod:`gzip` archives, rather
|
||||
than always signaling maximum compression.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39274
|
||||
.. date: 2020-01-15-23-13-03
|
||||
.. nonce: lpc0-n
|
||||
.. section: Library
|
||||
|
||||
``bool(fraction.Fraction)`` now returns a boolean even if (numerator != 0)
|
||||
does not return a boolean (ex: numpy number).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39297
|
||||
.. date: 2020-01-11-01-15-37
|
||||
.. nonce: y98Z6Q
|
||||
.. section: Library
|
||||
|
||||
Improved performance of importlib.metadata distribution discovery and
|
||||
resilients to inaccessible sys.path entries (importlib_metadata v1.4.0).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39242
|
||||
.. date: 2020-01-08-23-25-27
|
||||
.. nonce: bnL65N
|
||||
.. section: Library
|
||||
|
||||
Updated the Gmane domain from news.gmane.org to news.gmane.io which is used
|
||||
for examples of :class:`~nntplib.NNTP` news reader server and nntplib tests.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38907
|
||||
.. date: 2020-01-06-02-14-38
|
||||
.. nonce: F1RkCR
|
||||
.. section: Library
|
||||
|
||||
In http.server script, restore binding to IPv4 on Windows.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39152
|
||||
.. date: 2020-01-03-18-02-50
|
||||
.. nonce: JgPjCC
|
||||
.. section: Library
|
||||
|
||||
Fix ttk.Scale.configure([name]) to return configuration tuple for name or
|
||||
all options. Giovanni Lombardo contributed part of the patch.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39198
|
||||
.. date: 2020-01-02-20-21-03
|
||||
.. nonce: nzwGyG
|
||||
.. section: Library
|
||||
|
||||
If an exception were to be thrown in `Logger.isEnabledFor` (say, by asyncio
|
||||
timeouts or stopit) , the `logging` global lock may not be released
|
||||
appropriately, resulting in deadlock. This change wraps that block of code
|
||||
with `try...finally` to ensure the lock is released.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39191
|
||||
.. date: 2020-01-02-17-28-03
|
||||
.. nonce: ur_scy
|
||||
.. section: Library
|
||||
|
||||
Perform a check for running loop before starting a new task in
|
||||
``loop.run_until_complete()`` to fail fast; it prevents the side effect of
|
||||
new task spawning before exception raising.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38871
|
||||
.. date: 2020-01-01-18-44-52
|
||||
.. nonce: 3EEOLg
|
||||
.. section: Library
|
||||
|
||||
Correctly parenthesize filter-based statements that contain lambda
|
||||
expressions in mod:`lib2to3`. Patch by Dong-hee Na.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39142
|
||||
.. date: 2019-12-31-19-27-23
|
||||
.. nonce: oqU5iD
|
||||
.. section: Library
|
||||
|
||||
A change was made to logging.config.dictConfig to avoid converting instances
|
||||
of named tuples to ConvertingTuple. It's assumed that named tuples are too
|
||||
specialised to be treated like ordinary tuples; if a user of named tuples
|
||||
requires ConvertingTuple functionality, they will have to implement that
|
||||
themselves in their named tuple class.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39129
|
||||
.. date: 2019-12-24-10-43-13
|
||||
.. nonce: jVx5rW
|
||||
.. section: Library
|
||||
|
||||
Fix import path for ``asyncio.TimeoutError``
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39057
|
||||
.. date: 2019-12-15-21-47-54
|
||||
.. nonce: FOxn-w
|
||||
.. section: Library
|
||||
|
||||
:func:`urllib.request.proxy_bypass_environment` now ignores leading dots and
|
||||
no longer ignores a trailing newline.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39056
|
||||
.. date: 2019-12-15-21-05-16
|
||||
.. nonce: nEfUM9
|
||||
.. section: Library
|
||||
|
||||
Fixed handling invalid warning category in the -W option. No longer import
|
||||
the re module if it is not needed.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39055
|
||||
.. date: 2019-12-15-19-23-23
|
||||
.. nonce: FmN3un
|
||||
.. section: Library
|
||||
|
||||
:func:`base64.b64decode` with ``validate=True`` raises now a binascii.Error
|
||||
if the input ends with a single ``\n``.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39033
|
||||
.. date: 2019-12-13-18-54-49
|
||||
.. nonce: cepuyD
|
||||
.. section: Library
|
||||
|
||||
Fix :exc:`NameError` in :mod:`zipimport`. Patch by Karthikeyan Singaravelan.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38878
|
||||
.. date: 2019-11-22-12-08-52
|
||||
.. nonce: EJ0cFf
|
||||
.. section: Library
|
||||
|
||||
Fixed __subclasshook__ of :class:`os.PathLike` to return a correct result
|
||||
upon inheritence. Patch by Bar Harel.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 35182
|
||||
.. date: 2019-10-31-19-23-25
|
||||
.. nonce: hzeNl9
|
||||
.. section: Library
|
||||
|
||||
Fixed :func:`Popen.communicate` subsequent call crash when the child process
|
||||
has already closed any piped standard stream, but still continues to be
|
||||
running. Patch by Andriy Maletsky.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38473
|
||||
.. date: 2019-10-14-21-14-55
|
||||
.. nonce: uXpVld
|
||||
.. section: Library
|
||||
|
||||
Use signature from inner mock for autospecced methods attached with
|
||||
:func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38293
|
||||
.. date: 2019-09-29-08-17-03
|
||||
.. nonce: wls5s3
|
||||
.. section: Library
|
||||
|
||||
Add :func:`copy.copy` and :func:`copy.deepcopy` support to :func:`property`
|
||||
objects.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39153
|
||||
.. date: 2020-01-27-22-24-51
|
||||
.. nonce: Pjl8jV
|
||||
.. section: Documentation
|
||||
|
||||
Clarify refcounting semantics for the following functions: -
|
||||
PyObject_SetItem - PyMapping_SetItemString - PyDict_SetItem -
|
||||
PyDict_SetItemString
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39392
|
||||
.. date: 2020-01-27-18-18-42
|
||||
.. nonce: oiqcLO
|
||||
.. section: Documentation
|
||||
|
||||
Explain that when filling with turtle, overlap regions may be left unfilled.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39381
|
||||
.. date: 2020-01-18-15-37-56
|
||||
.. nonce: wTWe8d
|
||||
.. section: Documentation
|
||||
|
||||
Mention in docs that :func:`asyncio.get_event_loop` implicitly creates new
|
||||
event loop only if called from the main thread.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38918
|
||||
.. date: 2019-12-15-22-04-41
|
||||
.. nonce: 8JnDTS
|
||||
.. section: Documentation
|
||||
|
||||
Add an entry for ``__module__`` in the "function" & "method" sections of the
|
||||
`inspect docs types and members table
|
||||
<https://docs.python.org/3/library/inspect.html#types-and-members>`_
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 3530
|
||||
.. date: 2019-11-17-11-53-10
|
||||
.. nonce: 8zFUMc
|
||||
.. section: Documentation
|
||||
|
||||
In the :mod:`ast` module documentation, fix a misleading ``NodeTransformer``
|
||||
example and add advice on when to use the ``fix_missing_locations``
|
||||
function.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39502
|
||||
.. date: 2020-01-30-15-04-54
|
||||
.. nonce: chbpII
|
||||
.. section: Tests
|
||||
|
||||
Skip test_zipfile.test_add_file_after_2107() if :func:`time.localtime` fails
|
||||
with :exc:`OverflowError`. It is the case on AIX 6.1 for example.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38546
|
||||
.. date: 2019-12-18-14-52-08
|
||||
.. nonce: 2kxNuM
|
||||
.. section: Tests
|
||||
|
||||
Fix test_ressources_gced_in_workers() of test_concurrent_futures: explicitly
|
||||
stop the manager to prevent leaking a child process running in the
|
||||
background after the test completes.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39144
|
||||
.. date: 2019-12-27-22-18-26
|
||||
.. nonce: dwHMlR
|
||||
.. section: Build
|
||||
|
||||
The ctags and etags build targets both include Modules/_ctypes and Python
|
||||
standard library source files.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39439
|
||||
.. date: 2020-01-24-03-15-05
|
||||
.. nonce: sFxGfR
|
||||
.. section: Windows
|
||||
|
||||
Honor the Python path when a virtualenv is active on Windows.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39393
|
||||
.. date: 2020-01-20-23-42-53
|
||||
.. nonce: gWlJDG
|
||||
.. section: Windows
|
||||
|
||||
Improve the error message when attempting to load a DLL with unresolved
|
||||
dependencies.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38883
|
||||
.. date: 2020-01-11-22-53-55
|
||||
.. nonce: X7FRaN
|
||||
.. section: Windows
|
||||
|
||||
:meth:`~pathlib.Path.home()` and :meth:`~pathlib.Path.expanduser()` on
|
||||
Windows now prefer :envvar:`USERPROFILE` and no longer use :envvar:`HOME`,
|
||||
which is not normally set for regular user accounts. This makes them again
|
||||
behave like :func:`os.path.expanduser`, which was changed to ignore
|
||||
:envvar:`HOME` in 3.8, see :issue:`36264`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39185
|
||||
.. date: 2020-01-02-01-11-53
|
||||
.. nonce: T4herN
|
||||
.. section: Windows
|
||||
|
||||
The build.bat script has additional options for very-quiet output (-q) and
|
||||
very-verbose output (-vv)
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 30780
|
||||
.. date: 2020-01-27-16-44-29
|
||||
.. nonce: nR80qu
|
||||
.. section: IDLE
|
||||
|
||||
Add remaining configdialog tests for buttons and highlights and keys tabs.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39388
|
||||
.. date: 2020-01-25-02-26-45
|
||||
.. nonce: x4TQNh
|
||||
.. section: IDLE
|
||||
|
||||
IDLE Settings Cancel button now cancels pending changes
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 39050
|
||||
.. date: 2020-01-22-22-28-06
|
||||
.. nonce: zkn0FO
|
||||
.. section: IDLE
|
||||
|
||||
Make IDLE Settings dialog Help button work again.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 34118
|
||||
.. date: 2019-12-30-16-44-07
|
||||
.. nonce: FaNW0a
|
||||
.. section: IDLE
|
||||
|
||||
Tag memoryview, range, and tuple as classes, the same as list, etcetera, in
|
||||
the library manual built-in functions list.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38792
|
||||
.. date: 2019-11-13-23-51-39
|
||||
.. nonce: xhTC5a
|
||||
.. section: IDLE
|
||||
|
||||
Close an IDLE shell calltip if a :exc:`KeyboardInterrupt` or shell restart
|
||||
occurs. Patch by Zackery Spytz.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 32989
|
||||
.. date: 2018-03-03-12-56-26
|
||||
.. nonce: FVhmhH
|
||||
.. section: IDLE
|
||||
|
||||
Add tests for editor newline_and_indent_event method. Remove dead code from
|
||||
pyparse find_good_parse_start method.
|
|
@ -1 +0,0 @@
|
|||
The ctags and etags build targets both include Modules/_ctypes and Python standard library source files.
|
|
@ -1,2 +0,0 @@
|
|||
Fix possible crashes in several list methods by holding strong references to
|
||||
list elements when calling :c:func:`PyObject_RichCompareBool`.
|
|
@ -1,2 +0,0 @@
|
|||
Fix possible crashes in dict and list when calling
|
||||
:c:func:`PyObject_RichCompareBool`.
|
|
@ -1,2 +0,0 @@
|
|||
Fix ``SystemError`` when nested function has annotation on positional-only
|
||||
argument - by Anthony Sottile.
|
|
@ -1,2 +0,0 @@
|
|||
Fix constant folding optimization for positional only arguments - by Anthony
|
||||
Sottile.
|
|
@ -1,2 +0,0 @@
|
|||
Correctly handle multi-line tokens in interactive mode. Patch by Pablo
|
||||
Galindo.
|
|
@ -1,2 +0,0 @@
|
|||
Fix AST end location for lone generator expression in function call, e.g.
|
||||
f(i for i in a).
|
|
@ -1 +0,0 @@
|
|||
Prevent double awaiting of async iterator.
|
|
@ -1,2 +0,0 @@
|
|||
Fix possible crashes when operating with the functions in the :mod:`heapq`
|
||||
module and custom comparison operators.
|
|
@ -1 +0,0 @@
|
|||
Fix a reference cycle in the C Pickler that was preventing the garbage collection of deleted, pickled objects.
|
|
@ -1 +0,0 @@
|
|||
Fix segfault in ``readinto()`` method on closed BufferedReader.
|
|
@ -1 +0,0 @@
|
|||
Change the ending column offset of `Attribute` nodes constructed in `ast_for_dotted_name` to point at the end of the current node and not at the end of the last `NAME` node.
|
|
@ -1,2 +0,0 @@
|
|||
In the :mod:`ast` module documentation, fix a misleading ``NodeTransformer`` example and add
|
||||
advice on when to use the ``fix_missing_locations`` function.
|
|
@ -1,3 +0,0 @@
|
|||
Add an entry for ``__module__`` in the "function" & "method" sections of the
|
||||
`inspect docs types and members table
|
||||
<https://docs.python.org/3/library/inspect.html#types-and-members>`_
|
|
@ -1,2 +0,0 @@
|
|||
Mention in docs that :func:`asyncio.get_event_loop` implicitly creates new
|
||||
event loop only if called from the main thread.
|
|
@ -1 +0,0 @@
|
|||
Explain that when filling with turtle, overlap regions may be left unfilled.
|
|
@ -1,5 +0,0 @@
|
|||
Clarify refcounting semantics for the following functions:
|
||||
- PyObject_SetItem
|
||||
- PyMapping_SetItemString
|
||||
- PyDict_SetItem
|
||||
- PyDict_SetItemString
|
|
@ -1,2 +0,0 @@
|
|||
Add tests for editor newline_and_indent_event method.
|
||||
Remove dead code from pyparse find_good_parse_start method.
|
|
@ -1,2 +0,0 @@
|
|||
Close an IDLE shell calltip if a :exc:`KeyboardInterrupt`
|
||||
or shell restart occurs. Patch by Zackery Spytz.
|
|
@ -1,2 +0,0 @@
|
|||
Tag memoryview, range, and tuple as classes, the same as list, etcetera, in
|
||||
the library manual built-in functions list.
|
|
@ -1 +0,0 @@
|
|||
Make IDLE Settings dialog Help button work again.
|
|
@ -1 +0,0 @@
|
|||
IDLE Settings Cancel button now cancels pending changes
|
|
@ -1 +0,0 @@
|
|||
Add remaining configdialog tests for buttons and highlights and keys tabs.
|
|
@ -1 +0,0 @@
|
|||
Add :func:`copy.copy` and :func:`copy.deepcopy` support to :func:`property` objects.
|
|
@ -1,2 +0,0 @@
|
|||
Use signature from inner mock for autospecced methods attached with
|
||||
:func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan.
|
|
@ -1,3 +0,0 @@
|
|||
Fixed :func:`Popen.communicate` subsequent call crash when the child process
|
||||
has already closed any piped standard stream, but still continues to be
|
||||
running. Patch by Andriy Maletsky.
|
|
@ -1,2 +0,0 @@
|
|||
Fixed __subclasshook__ of :class:`os.PathLike` to return a correct result
|
||||
upon inheritence. Patch by Bar Harel.
|
|
@ -1 +0,0 @@
|
|||
Fix :exc:`NameError` in :mod:`zipimport`. Patch by Karthikeyan Singaravelan.
|
|
@ -1,2 +0,0 @@
|
|||
:func:`base64.b64decode` with ``validate=True`` raises now a binascii.Error
|
||||
if the input ends with a single ``\n``.
|
|
@ -1,2 +0,0 @@
|
|||
Fixed handling invalid warning category in the -W option. No longer import
|
||||
the re module if it is not needed.
|
|
@ -1,2 +0,0 @@
|
|||
:func:`urllib.request.proxy_bypass_environment` now ignores leading dots and
|
||||
no longer ignores a trailing newline.
|
|
@ -1 +0,0 @@
|
|||
Fix import path for ``asyncio.TimeoutError``
|
|
@ -1,5 +0,0 @@
|
|||
A change was made to logging.config.dictConfig to avoid converting instances
|
||||
of named tuples to ConvertingTuple. It's assumed that named tuples are too
|
||||
specialised to be treated like ordinary tuples; if a user of named tuples
|
||||
requires ConvertingTuple functionality, they will have to implement that
|
||||
themselves in their named tuple class.
|
|
@ -1,2 +0,0 @@
|
|||
Correctly parenthesize filter-based statements that contain lambda
|
||||
expressions in mod:`lib2to3`. Patch by Dong-hee Na.
|
|
@ -1,3 +0,0 @@
|
|||
Perform a check for running loop before starting a new task in
|
||||
``loop.run_until_complete()`` to fail fast; it prevents the side effect of
|
||||
new task spawning before exception raising.
|
|
@ -1 +0,0 @@
|
|||
If an exception were to be thrown in `Logger.isEnabledFor` (say, by asyncio timeouts or stopit) , the `logging` global lock may not be released appropriately, resulting in deadlock. This change wraps that block of code with `try...finally` to ensure the lock is released.
|
|
@ -1,2 +0,0 @@
|
|||
Fix ttk.Scale.configure([name]) to return configuration tuple for name
|
||||
or all options. Giovanni Lombardo contributed part of the patch.
|
|
@ -1 +0,0 @@
|
|||
In http.server script, restore binding to IPv4 on Windows.
|
|
@ -1,3 +0,0 @@
|
|||
Updated the Gmane domain from news.gmane.org to news.gmane.io
|
||||
which is used for examples of :class:`~nntplib.NNTP` news reader server and
|
||||
nntplib tests.
|
|
@ -1 +0,0 @@
|
|||
Improved performance of importlib.metadata distribution discovery and resilients to inaccessible sys.path entries (importlib_metadata v1.4.0).
|
|
@ -1 +0,0 @@
|
|||
``bool(fraction.Fraction)`` now returns a boolean even if (numerator != 0) does not return a boolean (ex: numpy number).
|
|
@ -1,2 +0,0 @@
|
|||
Write accurate compression level metadata in :mod:`gzip` archives, rather
|
||||
than always signaling maximum compression.
|
|
@ -1,2 +0,0 @@
|
|||
Fixed a regression with the `ignore` callback of :func:`shutil.copytree`.
|
||||
The argument types are now str and List[str] again.
|
|
@ -1 +0,0 @@
|
|||
Fixed race condition in lazy imports in :mod:`tarfile`.
|
|
@ -1 +0,0 @@
|
|||
Allow AsyncMock to correctly patch static/class methods
|
|
@ -1,3 +0,0 @@
|
|||
Fix a bug in :func:`unittest.mock.create_autospec` that would complain about
|
||||
the wrong number of arguments for custom descriptors defined in an extension
|
||||
module returning functions.
|
|
@ -1 +0,0 @@
|
|||
Mark ``typing.IO.closed`` as a property
|
|
@ -1,2 +0,0 @@
|
|||
Striped whitespace from docstring before returning it from
|
||||
:func:`unittest.case.shortDescription`.
|
|
@ -1,2 +0,0 @@
|
|||
:func:`sys.audit` is now called only once per call of :func:`glob.glob` and
|
||||
:func:`glob.iglob`.
|
|
@ -1 +0,0 @@
|
|||
Collections.deque now holds strong references during deque.__contains__ and deque.count, fixing crashes.
|
|
@ -1 +0,0 @@
|
|||
Add audit events to command execution functions in os and pty modules.
|
|
@ -1 +0,0 @@
|
|||
Avoid unsafe load of ``api-ms-win-core-path-l1-1-0.dll`` at startup on Windows 7.
|
|
@ -1,3 +0,0 @@
|
|||
Fix test_ressources_gced_in_workers() of test_concurrent_futures: explicitly
|
||||
stop the manager to prevent leaking a child process running in the background
|
||||
after the test completes.
|
|
@ -1,2 +0,0 @@
|
|||
Skip test_zipfile.test_add_file_after_2107() if :func:`time.localtime` fails
|
||||
with :exc:`OverflowError`. It is the case on AIX 6.1 for example.
|
|
@ -1 +0,0 @@
|
|||
The build.bat script has additional options for very-quiet output (-q) and very-verbose output (-vv)
|
|
@ -1,5 +0,0 @@
|
|||
:meth:`~pathlib.Path.home()` and :meth:`~pathlib.Path.expanduser()` on Windows
|
||||
now prefer :envvar:`USERPROFILE` and no longer use :envvar:`HOME`, which is not
|
||||
normally set for regular user accounts. This makes them again behave like
|
||||
:func:`os.path.expanduser`, which was changed to ignore :envvar:`HOME` in 3.8,
|
||||
see :issue:`36264`.
|
|
@ -1,2 +0,0 @@
|
|||
Improve the error message when attempting to load a DLL with unresolved
|
||||
dependencies.
|
|
@ -1 +0,0 @@
|
|||
Honor the Python path when a virtualenv is active on Windows.
|
|
@ -1,5 +1,5 @@
|
|||
This is Python version 3.8.1
|
||||
============================
|
||||
This is Python version 3.8.2rc1
|
||||
===============================
|
||||
|
||||
.. image:: https://travis-ci.org/python/cpython.svg?branch=3.8
|
||||
:alt: CPython build status on Travis CI
|
||||
|
|
Loading…
Reference in New Issue