Commit graph

119214 commits

Author SHA1 Message Date
Miss Islington (bot)
efbc8c78c5
[3.12] Remove Python 3.5 hardcoded version in the tutorial appendix (GH-117612) (GH-118707)
Remove Python 3.5 hardcoded version in the tutorial appendix (GH-117612)
(cherry picked from commit a855f824a2)

Co-authored-by: Kerim Kabirov <the.privat33r+gh@pm.me>
2024-05-07 13:35:09 +00:00
Miss Islington (bot)
8e53f66797
[3.12] gh-118310: Fix documentation for enum.Enum.__new__ (GH-118311) (GH-118699)
gh-118310: Fix documentation for `enum.Enum.__new__` (GH-118311)

The provided example was incorrect:
- The example enum was missing the `int` mixin as implied by the context
- The value of `int('1a', 16)` was incorrectly given as 17
  (should be 26)
(cherry picked from commit 48e52fe2c9)

Co-authored-by: Momo Eissenhauer <mmEissen@users.noreply.github.com>
2024-05-07 14:02:55 +02:00
Miss Islington (bot)
f85021a6a2
[3.12] gh-78612: Mark up eval() using param list (GH-115212) (#116044)
Also mention that the 'expression' parameter can be a string.
(cherry picked from commit a71e32ce8e)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
2024-05-07 13:49:29 +02:00
Miss Islington (bot)
56c61cc564
[3.12] gh-118314: Fix padding edge case in binascii.a2b_base64 strict mode (GH-118320) (GH-118691)
gh-118314: Fix padding edge case in binascii.a2b_base64 strict mode (GH-118320)

Fix an edge case in `binascii.a2b_base64` strict mode, where
excessive padding was not detected when no padding is necessary.

(cherry picked from commit fe47d9bee3)

Co-authored-by: Youfu Zhang <1315097+zhangyoufu@users.noreply.github.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
2024-05-07 09:35:49 +00:00
Raymond Hettinger
7b25d945e0
[3.12] Expand recipe for kernel density estimation to include common tasks. (gh-118659) 2024-05-06 14:51:27 -05:00
Serhiy Storchaka
bee1c322c0
[3.12] gh-71592: Add ability to trace Tcl commands executed by Tkinter (GH-118291) (GH-118662)
This is an experimental feature, for internal use.

Setting tkinter._debug = True before creating the root window enables
printing every executed Tcl command (or a Tcl command equivalent to the
used Tcl C API).

This will help to convert a Tkinter example into Tcl script to check
whether the issue is caused by Tkinter or exists in the underlying Tcl/Tk
library.
(cherry picked from commit 1ff626ebda)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-05-06 19:26:08 +00:00
Miss Islington (bot)
f6c2b04d02
[3.12] Fix typo in Doc/library/asyncio-task.rst (GH-118627) (#118657)
Fix typo in Doc/library/asyncio-task.rst (GH-118627)
(cherry picked from commit fc50f1bdba)

Co-authored-by: Xie Yanbo <xieyanbo@gmail.com>
2024-05-06 17:03:22 +00:00
Miss Islington (bot)
11888a8694
[3.12] GH-115577 Clarify netloc term usage in urllib.parse docs (GH-117632) (GH-118656)
(cherry picked from commit 3ed3bc379a)

Co-authored-by: Kerim Kabirov <the.privat33r+gh@pm.me>
2024-05-06 17:01:50 +00:00
Miss Islington (bot)
a4812fd8f7
[3.12] gh-118164: Break a loop between _pydecimal and _pylong and optimize int to str conversion (GH-118483) (GH-118590)
For converting large ints to strings, CPython invokes a function in _pylong.py,
which uses the decimal module to implement an asymptotically waaaaay
sub-quadratic algorithm. But if the C decimal module isn't available, CPython
uses _pydecimal.py instead. Which in turn frequently does str(int). If the int
is very large, _pylong ends up doing the work, which in turn asks decimal to do
"big" arithmetic, which in turn calls str(big_int), which in turn ... it can
become infinite mutual recursion.

This change introduces a different int->str function that doesn't use decimal.
It's asymptotically worse, "Karatsuba time" instead of quadratic time, so
still a huge improvement. _pylong switches to that when the C decimal isn't
available. It is also used for not too large integers (less than 450_000 bits),
where it is faster (up to 2 times for 30_000 bits) than the asymptotically
better implementation that uses the C decimal.

(cherry picked from commit 711c80bfca)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Tim Peters <tim.peters@gmail.com>
2024-05-06 12:10:05 +03:00
Erlend E. Aasland
a81fe2a8f8
[3.12] gh-115119: Bump CI to use Ubuntu 22.04 (#118631) (#118634)
Ubuntu 22.04 ships with mpdecimal 2.5.1, installable using 'apt install libmpdec-dev'.
2024-05-06 09:03:36 +00:00
Miss Islington (bot)
6abf8401db
[3.12] gh-78955: Use user-selected color theme for Help => IDLE Doc (GH-9502) (#118632)
gh-78955: Use user-selected color theme for Help => IDLE Doc (GH-9502)
(cherry picked from commit 7758be4318)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2024-05-06 08:12:39 +00:00
Miss Islington (bot)
11594da046
[3.12] gh-117389: Fix test_compileall.EncodingTest (GH-117390) (#118603)
gh-117389: Fix `test_compileall.EncodingTest` (GH-117390)
(cherry picked from commit 44f67916da)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-05-05 19:02:04 +00:00
Miss Islington (bot)
68316a04f3
[3.12] gh-118476: Fix corner cases in islice() rough equivalent. (Gh-118559) (#118587) 2024-05-05 06:49:19 +00:00
Miss Islington (bot)
d629819f60
[3.12] gh-118455: Fix mangle_from_ default value in email.policy.Policy.__doc__ (GH-118456) (#118586)
gh-118455: Fix mangle_from_ default value in email.policy.Policy.__doc__ (GH-118456)

* Fix mangle_from_ default value in email.policy.Policy.__doc__

The docstring says it defaults to True, but it actually defaults
to False. Only the Compat32 subclass overrides that.

---------

(cherry picked from commit fed8d73fde)

Co-authored-by: wim glenn <jump@wimglenn.com>
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-05-05 06:35:11 +00:00
Miss Islington (bot)
0c605244a8
[3.12] gh-118164: str(10**10000) hangs if the C _decimal module is missing (GH-118503) (GH-118584)
Serhiy and I independently concluded that exact powers of 10
aren't possible in these contexts, so just checking the
string length is sufficient.

(cherry picked from commit 999f0c5122)

Co-authored-by: Tim Peters <tim.peters@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-05-05 09:34:43 +03:00
Miss Islington (bot)
53e8bdd1e6
[3.12] gh-118569: Add a test for dynamic PEP695 classes (GH-118570) (#118574)
gh-118569: Add a test for dynamic PEP695 classes (GH-118570)
(cherry picked from commit 5f547585fa)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-05-04 15:26:30 +00:00
Miss Islington (bot)
7da5737bd8
[3.12] Minor improvements to the itertools recipes (GH-118563) (#118565) 2024-05-03 17:20:29 -05:00
Miss Islington (bot)
4a18a9b4b3
[3.12] docs: clarify csv.DictReader's treatment of the first data row (GH-118549) (#118555)
(cherry picked from commit 9d67b72a49)

Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
2024-05-03 15:55:09 +00:00
Miss Islington (bot)
3706eef02a
[3.12] gh-118513: Fix sibling comprehensions with a name bound in one and global in the other (GH-118526) (#118548)
gh-118513: Fix sibling comprehensions with a name bound in one and global in the other (GH-118526)
(cherry picked from commit c8deb1e4b4)

Co-authored-by: Carl Meyer <carl@oddbird.net>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
2024-05-03 14:40:05 +00:00
Miss Islington (bot)
a7f495c7ba
[3.12] gh-117492: Clarify documentation of typing.Never (GH-117678) (#118547)
(cherry picked from commit 852263e108)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Nice Zombies <nineteendo19d0@gmail.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2024-05-03 13:09:05 +00:00
Miss Islington (bot)
23ba96e243
[3.12] gh-90848: Fixed create_autospec ignoring configure_mock style kwargs (GH-118163) (#118517)
gh-90848: Fixed create_autospec ignoring configure_mock style kwargs (GH-118163)
(cherry picked from commit b28a3339e4)

Co-authored-by: infohash <46137868+infohash@users.noreply.github.com>
2024-05-02 18:01:17 +00:00
Irit Katriel
238efbecab
[3.12] gh-118272: Clear generator frame's locals when the generator is closed (#118451) 2024-05-02 16:22:50 +01:00
Miss Islington (bot)
f61de0de64
[3.12] gh-117903: Clarify that the staticmethod descriptor is callable (GH-117925) (GH-118509)
(cherry picked from commit b3372481b6)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-05-02 14:02:26 +00:00
Thomas Grainger
c48e0ef7dd
[3.12] GH-117881: fix athrow().throw()/asend().throw() concurrent access (GH-117882) (#118458)
GH-117881: fix athrow().throw()/asend().throw() concurrent access (GH-117882)

(cherry picked from commit fc7e1aa3c0)
2024-05-02 10:23:25 +02:00
Miss Islington (bot)
29be35c0ab
[3.12] Uncomment one grammar test (GH-118361) (#118385)
Uncomment one grammar test (GH-118361)
(cherry picked from commit 23d0371bb9)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-05-02 06:03:49 +00:00
Jelle Zijlstra
9ec7ddd826
[3.12] docs: typo: tiny grammar change: "pointed by" -> "pointed to by" (GH-118411) (#118504)
(cherry picked from commit a6b610a94b)

Co-authored-by: Andrew Zipperer <47086307+zipperer@users.noreply.github.com>
Co-authored-by: Andrew-Zipperer <atzipperer@gmail.com>
2024-05-02 06:01:06 +00:00
Irit Katriel
ebef3c5ba4
[3.12] gh-116767: fix crash on 'async with' with many context managers (GH-118348) (#118477)
gh-116767: fix crash on 'async with' with many context managers (GH-118348)

Account for `add_stopiteration_handler` pushing a block for `async with`.
To allow generator functions that previously almost hit the `CO_MAXBLOCKS`
limit by nesting non-async blocks, the limit is increased by 1.
This increase allows one more block in non-generator functions.

(cherry picked from commit c1bf4874c1)
2024-05-01 18:23:29 +01:00
Seth Michael Larson
f5406ef454
gh-116122: Add SBOM generation to PCbuild/build.bat (GH-116138)
(cherry picked from commit 72dae53e09)

Co-authored-by: Seth Michael Larson <seth@python.org>
2024-05-01 15:47:41 +01:00
Miss Islington (bot)
0586d54241
[3.12] gh-118418: Use a default value for type_params in typing._eval_type (GH-118431) (#118436)
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-04-30 16:26:38 +00:00
Miss Islington (bot)
a030bae584
[3.12] gh-117860: Add tests for resolving names when import rebind names (GH-118176) (GH-118432)
Add tests for "import", pkgutil.resolve_name() and unittest.mock.path()
for cases when "import a.b as x" and "from a import b as x" give
different results.
(cherry picked from commit c0eaa232f6)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-04-30 14:52:44 +00:00
Miss Islington (bot)
1b12ad5970
[3.12] gh-118404: Fix inspect.signature() for non-comparable callables (GH-118405) (GH-118424)
(cherry picked from commit 11f8348d78)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-04-30 12:33:54 +00:00
Miss Islington (bot)
668163865c
[3.12] gh-85453: Consistent backquotes on None occurences across datetime.rst (GH-118282) (#118419)
(cherry picked from commit 0f797402bc)

Co-authored-by: edson duarte <eduarte.uatach@gmail.com>
2024-04-30 10:44:23 +02:00
Miss Islington (bot)
97c0194c9f
gh-118347: Fix Windows installer not updating launcher (GH-118386)
(cherry picked from commit 96d8ca7ad6)

Co-authored-by: Steve Dower <steve.dower@python.org>
2024-04-29 21:16:17 +00:00
Miss Islington (bot)
8e7486f41d
[3.12] gh-118359: Improve docs for Bdb.user_call (GH-118368) (#118410)
gh-118359: Improve docs for Bdb.user_call (GH-118368)

The `argument_list` parameter of bdb.Bdb.user_call has been useless for 25 years. It is retained for backwards compatibility, but it will always be None.
(cherry picked from commit 8e4fb5d260)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2024-04-29 21:07:56 +00:00
Miss Islington (bot)
e99059445e
[3.12] gh-118401: Docs: Use Sphinx short options (GH-118403) (#118407)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-29 14:31:14 -06:00
Miss Islington (bot)
0a1bed102b
[3.12] Docs: Upgrade to Sphinx 7.3 (GH-118397) (#118400)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-29 17:58:06 +00:00
Miss Islington (bot)
3989894a39
[3.12] gh-117566: fix IPv6Address.is_loopback for IPv4-mapped loopbacks (GH-117567) (GH-118391)
gh-117566: fix IPv6Address.is_loopback for IPv4-mapped loopbacks (GH-117567)

While properties like IPv6Address.is_private account for IPv4-mapped
IPv6 addresses, such as for example:

    >>> ipaddress.ip_address("192.168.0.1").is_private
    True
    >>> ipaddress.ip_address("::ffff:192.168.0.1").is_private
    True
...the same doesn't currently apply to the is_loopback property:
    >>> ipaddress.ip_address("127.0.0.1").is_loopback
    True
    >>> ipaddress.ip_address("::ffff:127.0.0.1").is_loopback
    False

At minimum, this inconsistency between different properties is
counter-intuitive. Moreover, ::ffff:127.0.0.0/104 is for all intents and
purposes a loopback address, and should be treated as such.

(cherry picked from commit fb7f79b4da)

Co-authored-by: Faidon Liambotis <paravoid@debian.org>
2024-04-29 14:41:26 +00:00
Miss Islington (bot)
817190c303
[3.12] gh-101100: Fix Sphinx warnings in library/faulthandler.rst (GH-118353) (#118366)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-28 12:41:02 -06:00
Miss Islington (bot)
9a91c7051f
[3.12] gh-101100: Fix Sphinx warnings in whatsnew/3.10.rst (GH-118356) (#118367)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-28 12:40:46 -06:00
Hugo van Kemenade
666a360844
[3.12] gh-101100: Fix Sphinx warnings in whatsnew/3.9.rst (GH-118364) (#118365) 2024-04-28 11:52:58 -06:00
Jelle Zijlstra
186fbe82f7
[3.12] Fix note in Enum.__new__ docs (GH-118284) (#118325)
(cherry picked from commit 5a4d3df2fa)

Co-authored-by: Philipp A <flying-sheep@web.de>
2024-04-26 16:25:31 -07:00
Kirill Podoprigora
ef12d239fa
[3.12] gh-117928: Bump the minimum Sphinx version to 6.2.1 (GH-117853) (#118321)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-26 17:18:58 +03:00
Miss Islington (bot)
db474606f7
[3.12] gh-118235: Skip RAISE_SYNTAX_ERROR rules in the grammar spec (GH-118237) (GH-118309)
gh-118235: Skip RAISE_SYNTAX_ERROR rules in the grammar spec (GH-118237)
(cherry picked from commit ef940dec40)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-04-26 11:56:10 +02:00
Serhiy Storchaka
8e3bd342f3
[3.12] gh-118042: Fix error in Telnet.__del__ when __init__() was not called (GH-118274) 2024-04-26 08:53:54 +03:00
Miss Islington (bot)
82e26d6bd0
[3.12] gh-118207: Rename the COMMON_FIELDS macro in funcobject.h and undef it after use (GH-118208) (#118269)
gh-118207: Rename the COMMON_FIELDS macro in funcobject.h and undef it after use (GH-118208)
(cherry picked from commit 796b3fb280)

Co-authored-by: Itamar Oren <itamarost@gmail.com>
2024-04-25 22:29:45 -07:00
Erlend E. Aasland
7a843e8390
[3.12] gh-118221: Always use the default row factory in sqlite3.iterdump() (#118223) (#118270)
sqlite3.iterdump() depends on the row factory returning resulting rows
as tuples; it will fail with custom row factories like for example a
dict factory.

With this commit, we explicitly reset the row factory of the cursor used
by iterdump(), so we always get predictable results. This does not
affect the row factory of the parent connection.

Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-04-25 08:33:35 +00:00
Thomas Grainger
fc1732ce3f
[3.12] GH-117894: prevent aclose()/athrow() being re-used after StopIteration (GH-117851) (GH-118226)
(cherry picked from commit 7d369d471c)
2024-04-25 09:13:47 +02:00
Miss Islington (bot)
33d1cfffe1
[3.12] gh-117968: Make the test for closed file more safe in the C API tests (GH-118230) (GH-118266)
The behavior of fileno() after fclose() is undefined, but it is the only
practical way to check whether the file was closed.
Only test this on the known platforms (Linux, Windows, macOS), where we
already tested that it works.
(cherry picked from commit 546cbcfa0e)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-04-25 05:16:43 +00:00
Miss Islington (bot)
c784b3e8fc
[3.12] gh-85453: Make numeric literals consistent across datetime.rst (GH-118245) (#118248)
Remove code formatting from remaining numeric literals.
(cherry picked from commit 59a4d52973)

Co-authored-by: edson duarte <eduarte.uatach@gmail.com>
2024-04-24 20:27:19 +00:00
Miss Islington (bot)
0049e2bd38
[3.12] gh-85453: Adapt datetime.rst to devguide recommendations for code snippets and variables (GH-118068) (#118244)
Also remove formatting from numeric literals.

(cherry picked from commit 809aa9a682)

Co-authored-by: edson duarte <eduarte.uatach@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Erlend E. Aasland <erlend@python.org>
2024-04-24 20:02:53 +00:00