Skip to content

Commit e3ffe35

Browse files
committed
Merge tag 'v3.8.7' into 3.8
Python 3.8.7
2 parents 305eae8 + 6503f05 commit e3ffe35

21 files changed

+268
-118
lines changed

Include/patchlevel.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@
1919
#define PY_MAJOR_VERSION 3
2020
#define PY_MINOR_VERSION 8
2121
#define PY_MICRO_VERSION 7
22-
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_GAMMA
23-
#define PY_RELEASE_SERIAL 1
22+
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
23+
#define PY_RELEASE_SERIAL 0
2424

2525
/* Version as a string */
26-
#define PY_VERSION "3.8.7rc1+"
26+
#define PY_VERSION "3.8.7"
2727
/*--end constants--*/
2828

2929
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.

Lib/pydoc_data/topics.py

Lines changed: 68 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Autogenerated by Sphinx on Mon Dec 7 15:10:25 2020
2+
# Autogenerated by Sphinx on Mon Dec 21 17:22:46 2020
33
topics = {'assert': 'The "assert" statement\n'
44
'**********************\n'
55
'\n'
@@ -2376,8 +2376,9 @@
23762376
'compatible\n'
23772377
'with an exception if it is the class or a base class of the '
23782378
'exception\n'
2379-
'object or a tuple containing an item compatible with the '
2380-
'exception.\n'
2379+
'object, or a tuple containing an item that is the class or a '
2380+
'base\n'
2381+
'class of the exception object.\n'
23812382
'\n'
23822383
'If no except clause matches the exception, the search for an '
23832384
'exception\n'
@@ -5512,44 +5513,51 @@
55125513
' | | formats the result in either fixed-point '
55135514
'format or in |\n'
55145515
' | | scientific notation, depending on its '
5515-
'magnitude. The |\n'
5516-
' | | precise rules are as follows: suppose that '
5517-
'the result |\n'
5516+
'magnitude. A |\n'
5517+
' | | precision of "0" is treated as equivalent '
5518+
'to a precision |\n'
5519+
' | | of "1". The precise rules are as follows: '
5520+
'suppose that |\n'
5521+
' | | the result formatted with presentation '
5522+
'type "\'e\'" and |\n'
5523+
' | | precision "p-1" would have exponent '
5524+
'"exp". Then, if "m <= |\n'
5525+
' | | exp < p", where "m" is -4 for floats and '
5526+
'-6 for |\n'
5527+
' | | "Decimals", the number is formatted with '
5528+
'presentation type |\n'
5529+
' | | "\'f\'" and precision "p-1-exp". '
5530+
'Otherwise, the number is |\n'
55185531
' | | formatted with presentation type "\'e\'" '
5519-
'and precision "p-1" |\n'
5520-
' | | would have exponent "exp". Then, if "m <= '
5521-
'exp < p", where |\n'
5522-
' | | "m" is -4 for floats and -6 for '
5523-
'"Decimals", the number is |\n'
5524-
' | | formatted with presentation type "\'f\'" '
55255532
'and precision |\n'
5526-
' | | "p-1-exp". Otherwise, the number is '
5527-
'formatted with |\n'
5528-
' | | presentation type "\'e\'" and precision '
5529-
'"p-1". In both cases |\n'
5530-
' | | insignificant trailing zeros are removed '
5531-
'from the |\n'
5532-
' | | significand, and the decimal point is also '
5533-
'removed if |\n'
5534-
' | | there are no remaining digits following '
5535-
'it, unless the |\n'
5536-
' | | "\'#\'" option is used. Positive and '
5537-
'negative infinity, |\n'
5538-
' | | positive and negative zero, and nans, are '
5539-
'formatted as |\n'
5540-
' | | "inf", "-inf", "0", "-0" and "nan" '
5541-
'respectively, |\n'
5542-
' | | regardless of the precision. A precision '
5543-
'of "0" is |\n'
5544-
' | | treated as equivalent to a precision of '
5545-
'"1". With no |\n'
5546-
' | | precision given, uses a precision of "6" '
5547-
'significant |\n'
5548-
' | | digits for "float", and shows all '
5549-
'coefficient digits for |\n'
5550-
' | | '
5551-
'"Decimal". '
5552-
'|\n'
5533+
' | | "p-1". In both cases insignificant '
5534+
'trailing zeros are |\n'
5535+
' | | removed from the significand, and the '
5536+
'decimal point is |\n'
5537+
' | | also removed if there are no remaining '
5538+
'digits following |\n'
5539+
' | | it, unless the "\'#\'" option is used. '
5540+
'With no precision |\n'
5541+
' | | given, uses a precision of "6" significant '
5542+
'digits for |\n'
5543+
' | | "float". For "Decimal", the coefficient of '
5544+
'the result is |\n'
5545+
' | | formed from the coefficient digits of the '
5546+
'value; |\n'
5547+
' | | scientific notation is used for values '
5548+
'smaller than "1e-6" |\n'
5549+
' | | in absolute value and values where the '
5550+
'place value of the |\n'
5551+
' | | least significant digit is larger than 1, '
5552+
'and fixed-point |\n'
5553+
' | | notation is used otherwise. Positive and '
5554+
'negative |\n'
5555+
' | | infinity, positive and negative zero, and '
5556+
'nans, are |\n'
5557+
' | | formatted as "inf", "-inf", "0", "-0" and '
5558+
'"nan" |\n'
5559+
' | | respectively, regardless of the '
5560+
'precision. |\n'
55535561
' '
55545562
'+-----------+------------------------------------------------------------+\n'
55555563
' | "\'G\'" | General format. Same as "\'g\'" except '
@@ -5574,19 +5582,24 @@
55745582
'percent sign. |\n'
55755583
' '
55765584
'+-----------+------------------------------------------------------------+\n'
5577-
' | None | Similar to "\'g\'", except that '
5578-
'fixed-point notation, when |\n'
5579-
' | | used, has at least one digit past the '
5580-
'decimal point. The |\n'
5581-
' | | default precision is as high as needed to '
5582-
'represent the |\n'
5583-
' | | particular value. The overall effect is to '
5584-
'match the |\n'
5585-
' | | output of "str()" as altered by the other '
5586-
'format |\n'
5587-
' | | '
5588-
'modifiers. '
5589-
'|\n'
5585+
' | None | For "float" this is the same as "\'g\'", '
5586+
'except that when |\n'
5587+
' | | fixed-point notation is used to format the '
5588+
'result, it |\n'
5589+
' | | always includes at least one digit past '
5590+
'the decimal point. |\n'
5591+
' | | The precision used is as large as needed '
5592+
'to represent the |\n'
5593+
' | | given value faithfully. For "Decimal", '
5594+
'this is the same |\n'
5595+
' | | as either "\'g\'" or "\'G\'" depending on '
5596+
'the value of |\n'
5597+
' | | "context.capitals" for the current decimal '
5598+
'context. The |\n'
5599+
' | | overall effect is to match the output of '
5600+
'"str()" as |\n'
5601+
' | | altered by the other format '
5602+
'modifiers. |\n'
55905603
' '
55915604
'+-----------+------------------------------------------------------------+\n'
55925605
'\n'
@@ -11159,7 +11172,8 @@
1115911172
'object is “compatible” with the exception. An object is compatible\n'
1116011173
'with an exception if it is the class or a base class of the '
1116111174
'exception\n'
11162-
'object or a tuple containing an item compatible with the exception.\n'
11175+
'object, or a tuple containing an item that is the class or a base\n'
11176+
'class of the exception object.\n'
1116311177
'\n'
1116411178
'If no except clause matches the exception, the search for an '
1116511179
'exception\n'
@@ -11340,7 +11354,7 @@
1134011354
'representation\n'
1134111355
' in computers.\n'
1134211356
'\n'
11343-
' The string representations of the Numeric classes, computed by\n'
11357+
' The string representations of the numeric classes, computed by\n'
1134411358
' "__repr__()" and "__str__()", have the following properties:\n'
1134511359
'\n'
1134611360
' * They are valid numeric literals which, when passed to their '

Misc/NEWS.d/3.8.7.rst

Lines changed: 195 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
.. bpo: 32381
2+
.. date: 2020-12-04-17-17-44
3+
.. nonce: NY5t2S
4+
.. release date: 2020-12-21
5+
.. section: Core and Builtins
6+
7+
Fix encoding name when running a ``.pyc`` file on Windows:
8+
:c:func:`PyRun_SimpleFileExFlags()` now uses the correct encoding to decode
9+
the filename.
10+
11+
..
12+
13+
.. bpo: 42536
14+
.. date: 2020-12-02-20-23-31
15+
.. nonce: Kx3ZOu
16+
.. section: Core and Builtins
17+
18+
Several built-in and standard library types now ensure that their internal
19+
result tuples are always tracked by the :term:`garbage collector <garbage
20+
collection>`:
21+
22+
- :meth:`collections.OrderedDict.items() <collections.OrderedDict>`
23+
24+
- :meth:`dict.items`
25+
26+
- :func:`enumerate`
27+
28+
- :func:`functools.reduce`
29+
30+
- :func:`itertools.combinations`
31+
32+
- :func:`itertools.combinations_with_replacement`
33+
34+
- :func:`itertools.permutations`
35+
36+
- :func:`itertools.product`
37+
38+
- :func:`itertools.zip_longest`
39+
40+
- :func:`zip`
41+
42+
Previously, they could have become untracked by a prior garbage collection.
43+
Patch by Brandt Bucher.
44+
45+
..
46+
47+
.. bpo: 42630
48+
.. date: 2020-12-15-17-51-27
49+
.. nonce: jf4jBl
50+
.. section: Library
51+
52+
:mod:`tkinter` functions and constructors which need a default root window
53+
raise now :exc:`RuntimeError` with descriptive message instead of obscure
54+
:exc:`AttributeError` or :exc:`NameError` if it is not created yet or cannot
55+
be created automatically.
56+
57+
..
58+
59+
.. bpo: 42644
60+
.. date: 2020-12-15-10-00-04
61+
.. nonce: XgLCNx
62+
.. section: Library
63+
64+
`logging.disable` will now validate the types and value of its parameter. It
65+
also now accepts strings representing the levels (as does `loging.setLevel`)
66+
instead of only the numerical values.
67+
68+
..
69+
70+
.. bpo: 36541
71+
.. date: 2020-12-14-08-23-57
72+
.. nonce: qdEtZv
73+
.. section: Library
74+
75+
Fixed lib2to3.pgen2 to be able to parse PEP-570 positional only argument
76+
syntax.
77+
78+
..
79+
80+
.. bpo: 42375
81+
.. date: 2020-11-19-04-13-53
82+
.. nonce: U8bp4s
83+
.. section: Library
84+
85+
subprocess module update for DragonFlyBSD support.
86+
87+
..
88+
89+
.. bpo: 39825
90+
.. date: 2020-10-20-08-28-26
91+
.. nonce: n6KnG0
92+
.. section: Library
93+
94+
Windows: Change ``sysconfig.get_config_var('EXT_SUFFIX')`` to the expected
95+
full ``platform_tag.extension`` format. Previously it was hard-coded to
96+
``.pyd``, now it is compatible with ``distutils.sysconfig`` and will result
97+
in something like ``.cp38-win_amd64.pyd``. This brings windows into
98+
conformance with the other platforms.
99+
100+
..
101+
102+
.. bpo: 39101
103+
.. date: 2020-10-11-21-43-03
104+
.. nonce: -I49Pm
105+
.. section: Library
106+
107+
Fixed tests using IsolatedAsyncioTestCase from hanging on BaseExceptions.
108+
109+
..
110+
111+
.. bpo: 41907
112+
.. date: 2020-10-02-10-19-49
113+
.. nonce: wiIEsz
114+
.. section: Library
115+
116+
fix `format()` behavior for `IntFlag`
117+
118+
..
119+
120+
.. bpo: 41889
121+
.. date: 2020-10-01-16-17-11
122+
.. nonce: qLkNh8
123+
.. section: Library
124+
125+
Enum: fix regression involving inheriting a multiply-inherited enum
126+
127+
..
128+
129+
.. bpo: 41891
130+
.. date: 2020-09-30-13-35-29
131+
.. nonce: pNAeYI
132+
.. section: Library
133+
134+
Ensure asyncio.wait_for waits for task completion
135+
136+
..
137+
138+
.. bpo: 40219
139+
.. date: 2020-07-13-19-43-11
140+
.. nonce: MUoJEP
141+
.. section: Library
142+
143+
Lowered :class:`tkinter.ttk.LabeledScale` dummy widget to prevent hiding
144+
part of the content label.
145+
146+
..
147+
148+
.. bpo: 40084
149+
.. date: 2020-03-29-21-32-00
150+
.. nonce: MCYwcv
151+
.. section: Library
152+
153+
Fix ``Enum.__dir__``: dir(Enum.member) now includes attributes as well as
154+
methods.
155+
156+
..
157+
158+
.. bpo: 17140
159+
.. date: 2020-12-16-21-06-16
160+
.. nonce: 1leSEg
161+
.. section: Documentation
162+
163+
Add documentation for the :class:`multiprocessing.pool.ThreadPool` class.
164+
165+
..
166+
167+
.. bpo: 42604
168+
.. date: 2020-12-20-02-35-28
169+
.. nonce: gRd89w
170+
.. section: Build
171+
172+
Now all platforms use a value for the "EXT_SUFFIX" build variable derived
173+
from SOABI (for instance in freeBSD, "EXT_SUFFIX" is now ".cpython-310d.so"
174+
instead of ".so"). Previosuly only Linux, Mac and VxWorks were using a value
175+
for "EXT_SUFFIX" that included "SOABI".
176+
177+
..
178+
179+
.. bpo: 42598
180+
.. date: 2020-12-13-14-43-10
181+
.. nonce: 7ipr5H
182+
.. section: Build
183+
184+
Fix implicit function declarations in configure which could have resulted in
185+
incorrect configuration checks. Patch contributed by Joshua Root.
186+
187+
..
188+
189+
.. bpo: 42613
190+
.. date: 2020-12-16-09-10-32
191+
.. nonce: J-jnm5
192+
.. section: Tools/Demos
193+
194+
Fix ``freeze.py`` tool to use the prope config and library directories.
195+
Patch by Victor Stinner.

Misc/NEWS.d/next/Build/2020-12-13-14-43-10.bpo-42598.7ipr5H.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

Misc/NEWS.d/next/Build/2020-12-20-02-35-28.bpo-42604.gRd89w.rst

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)