Commit graph

28649 commits

Author SHA1 Message Date
Miss Islington (bot)
8559dc3124
[3.12] gh-129712: Document the wheels tags corresponding to each universal SDK. (GH-130389) (#130450)
Document the architectures supported by macOS universal SDK configuration flags,
and add details on wheel tag naming.
(cherry picked from commit 474c388740)

Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
2025-02-22 08:38:41 +00:00
Miss Islington (bot)
8db2fa2575
[3.12] gh-130285: Fix handling of zero or empty counts in random.sample() (gh-130291) (gh-130417) 2025-02-21 17:48:46 +00:00
Miss Islington (bot)
f314cc4db5
[3.12] gh-129838: Don't redefine _Py_NO_SANITIZE_UNDEFINED (GH-129839) (#130365)
gh-129838: Don't redefine _Py_NO_SANITIZE_UNDEFINED (GH-129839)

Newer GCC versions accept both __attribute__((no_sanitize("undefined")))
and __attribute__((no_sanitize_undefined)) so check that the macro is
not already defined.
(cherry picked from commit 568db400ff)

Co-authored-by: Collin Funk <collin.funk1@gmail.com>
2025-02-20 16:20:27 +00:00
Miss Islington (bot)
5c0aba0b81
[3.12] gh-46236: Document PyUnicode_RSplit, PyUnicode_Partition and PyUnicode_RPartition (GH-130191) (#130361)
gh-46236: Document PyUnicode_RSplit, PyUnicode_Partition and PyUnicode_RPartition (GH-130191)
(cherry picked from commit 0f5b82169e)

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2025-02-20 15:50:37 +00:00
Hugo van Kemenade
ecfca20719
[3.12] gh-119727: Add --single-process option to regrtest (GH-119728) (#130359)
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-02-20 15:47:10 +00:00
Miss Islington (bot)
8d58070d7e
[3.12] gh-130250: fix regression in traceback.print_last (GH-130318) (#130326)
gh-130250: fix regression in traceback.print_last (GH-130318)
(cherry picked from commit 6c982aeb54)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2025-02-19 22:01:32 +00:00
Miss Islington (bot)
042b49246b
[3.12] gh-118761: Revert "Improve import time of subprocess (GH-129427)" (GH-130201) (#130205)
gh-118761: Revert "Improve import time of `subprocess` (GH-129427)" (GH-130201)

* Revert "gh-118761: Improve import time of `subprocess` (GH-129427)"

This reverts commit 49f24650e4.
Also known as f502c8f6a6 in 3.13 (PR GH-129447)
Also known as f65aa0d1bf in 3.12 (PR GH-129448)

This caused bugs in the `__del__` finalizer:
 https://github.com/python/cpython/issues/118761#issuecomment-2661504264

---------
(cherry picked from commit ae30646089)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-02-16 18:56:18 +00:00
Miss Islington (bot)
a122415c02
gh-128703: Fix mimetypes.guess_type for empty Content-Type in registry (GH-128854)
(cherry picked from commit 303043f506)

Co-authored-by: RUANG (James Roy) <longjinyii@outlook.com>
2025-02-14 17:45:28 +00:00
Pablo Galindo Salgado
5e8a9eb13d
[3.12] gh-116042: Fix location for SyntaxErrors of invalid escapes in the tokenizer (GH-116049) (#130065)
(cherry picked from commit 56eda25633)
2025-02-13 01:42:24 +00:00
Tomas R.
96a6ee04b1
[3.12] gh-97850: Update the deprecation warning of importlib.abc.Loader.load_module (GH-129855) (GH-130017)
(cherry picked from commit aa81a6f6e4)
2025-02-11 15:31:44 -08:00
Miss Islington (bot)
2db4a9d053
[3.12] gh-127712: Fix secure argument of logging.handlers.SMTPHandler (GH-127726) (GH-129956)
(cherry picked from commit d7672e5d5a)
2025-02-10 14:29:57 +00:00
Erlend E. Aasland
02e00a7373
[3.12] gh-129603: Don't segfault if sqlite3.Row description is None (#129604) (#129924)
(cherry picked from commit 7e6ee50b6b)
2025-02-10 00:14:40 +00:00
Miss Islington (bot)
fd8d445cb3
[3.12] gh-129873: IDLE: Improve help.py's method of parsing HTML (GH-129859) (#129885)
gh-129873: IDLE: Improve help.py's method of parsing HTML (GH-129859)

In `help.copy_strip`, only copy the text `<section>`.  In `help.HelpParser.handle_starttag` and elsewhere, remove code to skip the no longer present html.  Add a reminder at the top of idle.rst to run copy_strip after changes.
---------

(cherry picked from commit 6fbf15f98e)

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2025-02-09 04:19:55 -05:00
Miss Islington (bot)
62fafd867d
[3.12] gh-129660: Do not use test_embed in PGO profile builds (GH-129662) (#129685)
[3.13] gh-129660: Do not use test_embed in PGO profile builds (GH-129662)
(cherry picked from commit 19ceb342b5)

Co-authored-by: neonene <53406459+neonene@users.noreply.github.com>
2025-02-05 11:39:58 +00:00
Thomas Wouters
8b0c113325 Merge branch '3.12' of https://github.com/python/cpython into 3.12 2025-02-04 20:39:37 +01:00
Miss Islington (bot)
0d207c3dd1
[3.12] gh-128772: Fix pydoc for methods with __module__ is None (GH-129177) (GH-129654)
(cherry picked from commit 979d766209)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-02-04 14:44:02 +00:00
Thomas Wouters
fdb81425a9 Python 3.12.9 2025-02-04 15:38:38 +01:00
Serhiy Storchaka
0d51b29806
[3.12] Use roles :data: and :const: for referencing module variables (GH-129507) (GH-129650)
(cherry picked from commit 078ab828b9)
2025-02-04 14:30:57 +00:00
Serhiy Storchaka
86451b146a
[3.12] gh-129502: Fix handling errors in ctypes callbacks (GH-129504) (#129639)
Unlikely errors in preparing arguments for ctypes callback are now
handled in the same way as errors raised in the callback of in converting
the result of the callback -- using sys.unraisablehook() instead of
sys.excepthook() and not setting sys.last_exc and other variables.
(cherry picked from commit 9d63ae5fe5)
2025-02-04 15:04:46 +01:00
Miss Islington (bot)
6985b4be9b
[3.12] gh-129345: null check for indent syslogmodule (GH-129348) (#129443)
gh-129345: null check for indent syslogmodule (GH-129348)
(cherry picked from commit 25cf79a082)

Co-authored-by: Burkov Egor <xwooffie@gmail.com>
2025-02-04 00:24:56 +01:00
Victor Stinner
6186021c14
[3.12] gh-129539: Include sysexits.h before checking EX_OK (#129590) (#129609)
[3.13] gh-129539: Include sysexits.h before checking EX_OK (#129590)

Previously, the macro would be redefined when the header was included.

(cherry picked from commit 65f3432ac3)

Co-authored-by: Collin Funk <collin.funk1@gmail.com>
2025-02-03 12:00:10 +00:00
Miss Islington (bot)
97097469c7
[3.12] gh-127975: Avoid reusing quote types in ast.unparse if not needed (GH-127980) (#129601)
gh-127975: Avoid reusing quote types in ast.unparse if not needed (GH-127980)
(cherry picked from commit 8df5193d37)

Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2025-02-02 22:58:22 +00:00
Adam Turner
834b9d65a9
[3.12] GH-121970: Extract `misc_news` into a new extension (GH-129577) (#129587)
(cherry picked from commit ae4788809d)
2025-02-02 16:26:50 +00:00
Miss Islington (bot)
e20963a12a
[3.12] gh-115514: Fix incomplete writes after close while using ssl in asyncio(GH-128037) (#129582)
gh-115514: Fix incomplete writes after close while using ssl in asyncio(GH-128037)

(cherry picked from commit 4e38eeafe2)

Co-authored-by: Vojtěch Boček <vbocek@gmail.com>
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2025-02-02 15:47:37 +00:00
Miss Islington (bot)
a7084f6075
[3.12] gh-105704: Disallow square brackets ([ and ]) in domain names for parsed URLs (GH-129418) (GH-129527)
gh-105704: Disallow square brackets (`[` and `]`) in domain names for parsed URLs (GH-129418)

* gh-105704: Disallow square brackets ( and ) in domain names for parsed URLs

* Use Sphinx references



* Add mismatched bracket test cases, fix news format

* Add more test coverage for ports

---------

(cherry picked from commit d89a5f6a6e)

Co-authored-by: Seth Michael Larson <seth@python.org>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-02-02 08:30:28 +00:00
Miss Islington (bot)
40d7f745e9
[3.12] gh-126108: Fix potential null pointer dereference in PySys_AddWarnOptionUnicode (GH-126118) (#129522)
gh-126108: Fix potential null pointer dereference in `PySys_AddWarnOptionUnicode` (GH-126118)
(cherry picked from commit fad36bf382)

Co-authored-by: Valery Fedorenko <federicovalenso@gmail.com>
2025-01-31 20:32:30 +05:30
Irit Katriel
d2f551db12
[3.12] gh-128799: Add frame of except* to traceback when wrapping a naked exception (GH-128971) (#129328) 2025-01-30 12:02:46 +00:00
Miss Islington (bot)
f463d05a09
[3.12] gh-129403: Fix ValueError messages in asyncio.Barrier and threading.Barrier (GH-129419) (#129469)
gh-129403: Fix `ValueError` messages in `asyncio.Barrier` and `threading.Barrier` (GH-129419)
(cherry picked from commit bcb25d60b1)

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-01-30 08:28:06 +00:00
Miss Islington (bot)
f65aa0d1bf
[3.12] gh-118761: Improve import time of subprocess (GH-129427) (#129448)
gh-118761: Improve import time of `subprocess` (GH-129427)

* subprocess: lazy import signal and locale to improve module import time
(cherry picked from commit 49f24650e4)

Co-authored-by: Taneli Hukkinen <3275109+hukkin@users.noreply.github.com>
2025-01-29 16:48:48 +00:00
Miss Islington (bot)
cdaec318cb
[3.12] gh-129409: Fix Integer overflow - SEGV while writing data more than 2GB in CSV file (GH-129413) (#129437)
gh-129409: Fix Integer overflow -  SEGV while writing data more than 2GB in CSV file (GH-129413)
(cherry picked from commit 97b0ef05d9)

Co-authored-by: Srinivas Reddy Thatiparthy (తాటిపర్తి శ్రీనివాస్  రెడ్డి) <thatiparthysreenivas@gmail.com>
2025-01-29 11:32:54 +00:00
Miss Islington (bot)
e5ab9e3740
[3.12] gh-112064: Fix incorrect handling of negative read sizes in HTTPResponse.read() (GH-128270) (#129396)
gh-112064: Fix incorrect handling of negative read sizes in `HTTPResponse.read()` (GH-128270)

The parameter `amt` of `HTTPResponse.read()`, which could be a negative integer,
has not been handled before and led to waiting for the connection to close
for `keep-alive connections`. Now, this has been fixed, and passing negative values
to `HTTPResponse().read()` works the same as passing `None` value.
(cherry picked from commit 4d0d24f6e3)

Co-authored-by: Yury Manushkin <manushkin@gmail.com>
2025-01-28 11:54:27 +00:00
Miss Islington (bot)
2df8b395b0
[3.12] gh-119511: Fix a potential denial of service in imaplib (GH-119514) (GH-129356)
gh-119511: Fix a potential denial of service in imaplib (GH-119514)

The IMAP4 client could consume an arbitrary amount of memory when trying
to connect to a malicious server, because it read a "literal" data with a
single read(size) call, and BufferedReader.read() allocates the bytes
object of the specified size before reading. Now the IMAP4 client reads data
by chunks, therefore the amount of used memory is limited by the
amount of the data actually been sent by the server.
(cherry picked from commit 735f25c5e3)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2025-01-27 14:06:14 -08:00
Miss Islington (bot)
23faf5f2dc
[3.12] gh-129346: Handle allocation errors for SQLite aggregate context (GH-129347) (#129373)
(cherry picked from commit 379ab856f5)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
2025-01-27 17:33:18 +00:00
Miss Islington (bot)
c17d30bf34
[3.12] gh-58956: Set f_trace on frames with breakpoints after setting a new breakpoint (GH-124454) (#125549)
* gh-58956: Set f_trace on frames with breakpoints after setting a new breakpoint (GH-124454)
(cherry picked from commit 12eaadc0ad)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2025-01-25 15:12:19 -05:00
Miss Islington (bot)
e94939cedb
[3.12] gh-128479: fix asyncio staggered race leaking tasks, and logging unhandled exception.append exception (GH-128475) (#129228)
gh-128479: fix asyncio staggered race leaking tasks, and logging unhandled exception.append exception (GH-128475)
(cherry picked from commit ec91e1c276)

Co-authored-by: Thomas Grainger <tagrain@gmail.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-01-23 22:16:21 +01:00
Pablo Galindo Salgado
9ed04d9516
[3.12] gh-124363: Treat debug expressions in f-string as raw strings (GH-128399) (#129190)
(cherry picked from commit 60a3a0dd6f)

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
2025-01-22 18:08:58 +00:00
Pablo Galindo Salgado
e577ff4ce4
[3.12] gh-129093: Fix f-string debug text sometimes getting cut off when expression contains ! (#129164) 2025-01-22 00:47:20 +00:00
Thomas Grainger
bc214545f9
[3.12] gh-128588: fix refcycles in eager task creation and remove eager tasks optimization that missed and introduced incorrect cancellations (#129063) (#128586)
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2025-01-21 11:11:39 +05:30
Miss Islington (bot)
03bce18992
[3.12] GH-128131: Completely support random read access of uncompressed unencrypted files in ZipFile (GH-128143) (#129092)
GH-128131: Completely support random read access of uncompressed unencrypted files in ZipFile (GH-128143)
(cherry picked from commit dda02eb7be)

Co-authored-by: 5ec1cff <56485584+5ec1cff@users.noreply.github.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-01-20 20:40:28 +00:00
Miss Islington (bot)
6f19c6a705
[3.12] GH-125722: Increase minimum supported Sphinx to 8.1.3 (GH-128922) (#129038)
(cherry picked from commit d46b577ec0)

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-01-20 00:46:05 +00:00
Miss Islington (bot)
b8170e5884
[3.12] gh-80222: Fix email address header folding with long quoted-string (GH-122753) (#129008)
gh-80222: Fix email address header folding with long quoted-string (GH-122753)

Email generators using email.policy.default could incorrectly omit the
quote ('"') characters from a quoted-string during header refolding,
leading to invalid address headers and enabling header spoofing. This
change restores the quote characters on a bare-quoted-string as the
header is refolded, and escapes backslash and quote chars in the string.
(cherry picked from commit 5aaf416858)

Co-authored-by: Mike Edmunds <medmunds@gmail.com>
2025-01-19 16:07:39 -05:00
Victor Stinner
6df22cbf60
[3.12] gh-128679: Fix tracemalloc.stop() race conditions (#128897) (#129022)
[3.13] gh-128679: Fix tracemalloc.stop() race conditions (#128897)

tracemalloc_alloc(), tracemalloc_realloc(), PyTraceMalloc_Track(),
PyTraceMalloc_Untrack() and _PyTraceMalloc_TraceRef() now check
tracemalloc_config.tracing after calling TABLES_LOCK().

_PyTraceMalloc_Stop() now protects more code with TABLES_LOCK(),
especially setting tracemalloc_config.tracing to 1.

Add a test using PyTraceMalloc_Track() to test tracemalloc.stop()
race condition.

Call _PyTraceMalloc_Init() at Python startup.

(cherry picked from commit 6b47499510)
2025-01-19 13:24:14 +00:00
Tian Gao
6d638c2655
[3.12] gh-128991: Release the enter frame reference within bdb callba… (#129003)
[3.12] gh-128991: Release the enter frame reference within bdb callback (GH-128992)

* Release the enter frame reference within bdb callback

* 📜🤖 Added by blurb_it.

---------

(cherry picked from commit 61b35f74aa)
2025-01-18 17:21:34 -05:00
Ed Nutting
bca489076f
[3.12] gh-127599: Fix _Py_RefcntAdd missing calls to _Py_INCREF_STAT_INC/_Py_INCREF_IMMORTAL_STAT_INC (GH-127717) (#128712)
Previously, `_Py_RefcntAdd` hasn't called
`_Py_INCREF_STAT_INC/_Py_INCREF_IMMORTAL_STAT_INC` which is incorrect.

Now it has been fixed.
(cherry picked from commit ab05beb8ce)
2025-01-18 19:00:18 +02:00
Bénédikt Tran
fbbef609d1
[3.12] gh-127637: add tests for dis command-line interface (#127759) (#127780) 2025-01-18 12:01:56 +01:00
Miss Islington (bot)
405f6d72bb
[3.12] gh-128961: Fix exhausted array iterator crash in __setstate__() (GH-128962) (#128977)
(cherry picked from commit 4dade055f4)

Co-authored-by: Tomasz Pytel <tompytel@gmail.com>
2025-01-18 10:14:07 +00:00
Miss Islington (bot)
8a8f5d636d
[3.12] gh-128916: Do not set SO_REUSEPORT on non-AF_INET* sockets (GH-128933) (#128970)
gh-128916: Do not set `SO_REUSEPORT` on non-`AF_INET*` sockets (GH-128933)

* gh-128916: Do not set `SO_REUSEPORT` on non-`AF_INET*` sockets

Do not attempt to set ``SO_REUSEPORT`` on sockets of address familifies other
than ``AF_INET`` and ``AF_INET6``, as it is meaningless with these address
families, and the call with fail with Linux kernel 6.12.9 and newer.

* Apply suggestions from code review



---------
(cherry picked from commit 3829104ab4)

Co-authored-by: Michał Górny <mgorny@gentoo.org>
Co-authored-by: Vinay Sajip <vinay_sajip@yahoo.co.uk>
2025-01-18 01:06:45 +00:00
Tian Gao
f45da82c11
[3.12] gh-58956: Fix a frame refleak in bdb (GH-128190) (#128953)
* [3.12] gh-58956: Fix a frame refleak in bdb (GH-128190)
(cherry picked from commit 767c89ba7c)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2025-01-17 14:19:37 -05:00
Miss Islington (bot)
85255c4df2
[3.12] gh-67206: Document that string.printable is not printable in the POSIX sense (GH-128820) (#128867)
gh-67206: Document that `string.printable` is not printable in the POSIX sense (GH-128820)
(cherry picked from commit d906bde250)

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-01-15 14:28:21 +00:00
Miss Islington (bot)
5675e06eca
[3.12] gh-128874: Fix the documentation for blurb 2.0 (GH-128875) (#128878)
gh-128874: Fix the documentation for blurb 2.0 (GH-128875)
(cherry picked from commit 40a4d88a14)

Co-authored-by: Victor Stinner <vstinner@python.org>
2025-01-15 14:20:08 +00:00