Skip to content

Commit 0b05ead

Browse files
committed
Python 3.12.7
1 parent 3b5bc8d commit 0b05ead

File tree

40 files changed

+626
-247
lines changed

40 files changed

+626
-247
lines changed

Include/patchlevel.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818
/*--start constants--*/
1919
#define PY_MAJOR_VERSION 3
2020
#define PY_MINOR_VERSION 12
21-
#define PY_MICRO_VERSION 6
21+
#define PY_MICRO_VERSION 7
2222
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
2323
#define PY_RELEASE_SERIAL 0
2424

2525
/* Version as a string */
26-
#define PY_VERSION "3.12.6+"
26+
#define PY_VERSION "3.12.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: 246 additions & 156 deletions
Large diffs are not rendered by default.

Misc/NEWS.d/3.12.7.rst

Lines changed: 377 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,377 @@
1+
.. date: 2024-09-10-19-23-00
2+
.. gh-issue: 123915
3+
.. nonce: yZMEDO
4+
.. release date: 2024-10-01
5+
.. section: Windows
6+
7+
Ensure that ``Tools\msi\buildrelease.bat`` uses different directories for
8+
AMD64 and ARM64 builds.
9+
10+
..
11+
12+
.. date: 2024-04-24-22-50-33
13+
.. gh-issue: 117505
14+
.. nonce: gcTb_p
15+
.. section: Windows
16+
17+
Fixes an issue with the Windows installer not running ensurepip in a fully
18+
isolated environment. This could cause unexpected interactions with the user
19+
site-packages.
20+
21+
..
22+
23+
.. date: 2024-09-25-12-39-34
24+
.. gh-issue: 124378
25+
.. nonce: Ywwgia
26+
.. section: Tests
27+
28+
Updated ``test_ttk`` to pass with Tcl/Tk 8.6.15.
29+
30+
..
31+
32+
.. date: 2024-08-07-10-42-13
33+
.. gh-issue: 122792
34+
.. nonce: oiTMo9
35+
.. section: Security
36+
37+
Changed IPv4-mapped ``ipaddress.IPv6Address`` to consistently use the mapped
38+
IPv4 address value for deciding properties. Properties which have their
39+
behavior fixed are ``is_multicast``, ``is_reserved``, ``is_link_local``,
40+
``is_global``, and ``is_unspecified``.
41+
42+
..
43+
44+
.. date: 2024-09-27-15-16-04
45+
.. gh-issue: 116850
46+
.. nonce: dBkR0-
47+
.. section: Library
48+
49+
Fix :mod:`argparse` for namespaces with not directly writable dict (e.g.
50+
classes).
51+
52+
..
53+
54+
.. date: 2024-09-26-22-14-12
55+
.. gh-issue: 58573
56+
.. nonce: hozbm9
57+
.. section: Library
58+
59+
Fix conflicts between abbreviated long options in the parent parser and
60+
subparsers in :mod:`argparse`.
61+
62+
..
63+
64+
.. date: 2024-09-26-09-18-09
65+
.. gh-issue: 61181
66+
.. nonce: dwjmch
67+
.. section: Library
68+
69+
Fix support of :ref:`choices` with string value in :mod:`argparse`.
70+
Substrings of the specified string no longer considered valid values.
71+
72+
..
73+
74+
.. date: 2024-09-25-18-08-29
75+
.. gh-issue: 80259
76+
.. nonce: kO5Tw7
77+
.. section: Library
78+
79+
Fix :mod:`argparse` support of positional arguments with ``nargs='?'``,
80+
``default=argparse.SUPPRESS`` and specified ``type``.
81+
82+
..
83+
84+
.. date: 2024-09-25-12-14-58
85+
.. gh-issue: 124498
86+
.. nonce: Ozxs55
87+
.. section: Library
88+
89+
Fix :class:`typing.TypeAliasType` not to be generic, when ``type_params`` is
90+
an empty tuple.
91+
92+
..
93+
94+
.. date: 2024-09-24-12-34-48
95+
.. gh-issue: 124345
96+
.. nonce: s3vKql
97+
.. section: Library
98+
99+
:mod:`argparse` vim supports abbreviated single-dash long options separated
100+
by ``=`` from its value.
101+
102+
..
103+
104+
.. date: 2024-09-23-17-33-47
105+
.. gh-issue: 104860
106+
.. nonce: O86OSc
107+
.. section: Library
108+
109+
Fix disallowing abbreviation of single-dash long options in :mod:`argparse`
110+
with ``allow_abbrev=False``.
111+
112+
..
113+
114+
.. date: 2024-09-21-23-56-41
115+
.. gh-issue: 63143
116+
.. nonce: YKu-LQ
117+
.. section: Library
118+
119+
Fix parsing mutually exclusive arguments in :mod:`argparse`. Arguments with
120+
the value identical to the default value (e.g. booleans, small integers,
121+
empty or 1-character strings) are no longer considered "not present".
122+
123+
..
124+
125+
.. date: 2024-09-21-22-32-21
126+
.. gh-issue: 72795
127+
.. nonce: naLmkX
128+
.. section: Library
129+
130+
Positional arguments with :ref:`nargs` equal to ``'*'`` or
131+
:data:`!argparse.REMAINDER` are no longer required. This allows to use
132+
positional argument with ``nargs='*'`` and without ``default`` in mutually
133+
exclusive group and improves error message about required arguments.
134+
135+
..
136+
137+
.. date: 2024-09-21-19-02-37
138+
.. gh-issue: 59317
139+
.. nonce: OAhNZZ
140+
.. section: Library
141+
142+
Fix parsing positional argument with :ref:`nargs` equal to ``'?'`` or
143+
``'*'`` if it is preceded by an option and another positional argument.
144+
145+
..
146+
147+
.. date: 2024-09-20-12-23-11
148+
.. gh-issue: 53780
149+
.. nonce: mrV1zi
150+
.. section: Library
151+
152+
:mod:`argparse` now ignores the first ``"--"`` (double dash) between an
153+
option and command.
154+
155+
..
156+
157+
.. date: 2024-09-19-20-15-00
158+
.. gh-issue: 124217
159+
.. nonce: j0KlQB
160+
.. section: Library
161+
162+
Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:`ipaddress` module.
163+
164+
..
165+
166+
.. date: 2024-09-19-11-47-39
167+
.. gh-issue: 124248
168+
.. nonce: g7rufd
169+
.. section: Library
170+
171+
Fixed potential crash when using :mod:`struct` to process zero-width 'Pascal
172+
string' fields (``0p``).
173+
174+
..
175+
176+
.. date: 2024-09-19-10-36-18
177+
.. gh-issue: 81691
178+
.. nonce: Hyhp_U
179+
.. section: Library
180+
181+
Fix handling of multiple ``"--"`` (double dashes) in :mod:`argparse`. Only
182+
the first one has now been removed, all subsequent ones are now taken
183+
literally.
184+
185+
..
186+
187+
.. date: 2024-09-19-03-46-59
188+
.. gh-issue: 87041
189+
.. nonce: 9Ox7Bv
190+
.. section: Library
191+
192+
Fix a bug in :mod:`argparse` where lengthy subparser argument help is
193+
incorrectly indented.
194+
195+
..
196+
197+
.. date: 2024-09-17-18-06-42
198+
.. gh-issue: 124171
199+
.. nonce: PHCvRJ
200+
.. section: Library
201+
202+
Add workaround for broken :c:func:`!fmod()` implementations on Windows, that
203+
loose zero sign (e.g. ``fmod(-10, 1)`` returns ``0.0``). Patch by Sergey B
204+
Kirpichev.
205+
206+
..
207+
208+
.. date: 2024-09-13-10-34-19
209+
.. gh-issue: 123934
210+
.. nonce: yMe7mL
211+
.. section: Library
212+
213+
Fix :class:`unittest.mock.MagicMock` reseting magic methods return values
214+
after ``.reset_mock(return_value=True)`` was called.
215+
216+
..
217+
218+
.. date: 2024-09-11-13-33-19
219+
.. gh-issue: 123935
220+
.. nonce: fRZ_56
221+
.. section: Library
222+
223+
Fix parent slots detection for dataclasses that inherit from classes with
224+
``__dictoffset__``.
225+
226+
..
227+
228+
.. date: 2024-09-10-11-26-14
229+
.. gh-issue: 123892
230+
.. nonce: 2gzIrz
231+
.. section: Library
232+
233+
Add ``"_wmi"`` to :data:`sys.stdlib_module_names`. Patch by Victor Stinner.
234+
235+
..
236+
237+
.. date: 2024-08-23-15-49-10
238+
.. gh-issue: 116810
239+
.. nonce: QLBUU8
240+
.. section: Library
241+
242+
Resolve a memory leak introduced in CPython 3.10's :mod:`ssl` when the
243+
:attr:`ssl.SSLSocket.session` property was accessed. Speeds up read and
244+
write access to said property by no longer unnecessarily cloning session
245+
objects via serialization.
246+
247+
..
248+
249+
.. date: 2024-08-15-09-45-34
250+
.. gh-issue: 121735
251+
.. nonce: _1q0qf
252+
.. section: Library
253+
254+
When working with zip archives, importlib.resources now properly honors
255+
module-adjacent references (e.g. ``files(pkg.mod)`` and not just
256+
``files(pkg)``).
257+
258+
..
259+
260+
.. date: 2024-07-03-14-23-04
261+
.. gh-issue: 119004
262+
.. nonce: L5MoUu
263+
.. section: Library
264+
265+
Fix a crash in :ref:`OrderedDict.__eq__ <collections_OrderedDict__eq__>`
266+
when operands are mutated during the check. Patch by Bénédikt Tran.
267+
268+
..
269+
270+
.. bpo: 44864
271+
.. date: 2021-08-24-19-37-46
272+
.. nonce: KzxaDh
273+
.. section: Library
274+
275+
Do not translate user-provided strings in :class:`argparse.ArgumentParser`.
276+
277+
..
278+
279+
.. date: 2024-09-21-23-12-18
280+
.. gh-issue: 112938
281+
.. nonce: OeiDru
282+
.. section: IDLE
283+
284+
Fix uninteruptable hang when Shell gets rapid continuous output.
285+
286+
..
287+
288+
.. date: 2024-09-25-12-05-45
289+
.. gh-issue: 116510
290+
.. nonce: dhn8w8
291+
.. section: Core and Builtins
292+
293+
Fix a bug that can cause a crash when sub-interpreters use "basic"
294+
single-phase extension modules. Shared objects could refer to PyGC_Head
295+
nodes that had been freed as part of interpreter cleanup.
296+
297+
..
298+
299+
.. date: 2024-09-17-22-06-01
300+
.. gh-issue: 124188
301+
.. nonce: aFqNAB
302+
.. section: Core and Builtins
303+
304+
Fix reading and decoding a line from the source file witn non-UTF-8 encoding
305+
for syntax errors raised in the compiler.
306+
307+
..
308+
309+
.. date: 2024-09-10-13-27-16
310+
.. gh-issue: 77894
311+
.. nonce: ZC-Olu
312+
.. section: Core and Builtins
313+
314+
Fix possible crash in the garbage collector when it tries to break a
315+
reference loop containing a :class:`memoryview` object. Now a
316+
:class:`!memoryview` object can only be cleared if there are no buffers that
317+
refer it.
318+
319+
..
320+
321+
.. date: 2024-06-19-21-34-21
322+
.. gh-issue: 98442
323+
.. nonce: cqhjkN
324+
.. section: Core and Builtins
325+
326+
Fix too wide source locations of the cleanup instructions of a with
327+
statement.
328+
329+
..
330+
331+
.. date: 2024-06-14-22-02-25
332+
.. gh-issue: 113993
333+
.. nonce: MiA0vX
334+
.. section: Core and Builtins
335+
336+
Strings interned with :func:`sys.intern` are again garbage-collected when no
337+
longer used, as per the documentation. Strings interned with the C function
338+
:c:func:`PyUnicode_InternInPlace` are still immortal. Internals of the
339+
string interning mechanism have been changed. This may affect performance
340+
and identities of :class:`str` objects.
341+
342+
..
343+
344+
.. date: 2024-07-04-15-41-10
345+
.. gh-issue: 113993
346+
.. nonce: cLSiWV
347+
.. section: C API
348+
349+
:c:func:`PyUnicode_InternInPlace` no longer prevents its argument from being
350+
garbage collected.
351+
352+
Several functions that take ``char *`` are now documented as possibly
353+
preventing string objects from being garbage collected; refer to their
354+
documentation for details: :c:func:`PyUnicode_InternFromString`,
355+
:c:func:`PyDict_SetItemString`, :c:func:`PyObject_SetAttrString`,
356+
:c:func:`PyObject_DelAttrString`, :c:func:`PyUnicode_InternFromString`, and
357+
``PyModule_Add*`` convenience functions.
358+
359+
..
360+
361+
.. date: 2024-09-27-15-58-10
362+
.. gh-issue: 124487
363+
.. nonce: PAZTQf
364+
.. section: Build
365+
366+
Windows builds now use Windows 8.1 as their API baseline (installation
367+
already required Windows 8.1).
368+
369+
..
370+
371+
.. date: 2024-09-11-16-06-42
372+
.. gh-issue: 123917
373+
.. nonce: JuZl0r
374+
.. section: Build
375+
376+
Fix the check for the ``crypt()`` function in the configure script. Patch by
377+
Paul Smith and Victor Stinner.

Misc/NEWS.d/next/Build/2024-09-11-16-06-42.gh-issue-123917.JuZl0r.rst

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

Misc/NEWS.d/next/Build/2024-09-27-15-58-10.gh-issue-124487.PAZTQf.rst

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

0 commit comments

Comments
 (0)