Commit graph

50727 commits

Author SHA1 Message Date
Miss Islington (bot)
d15fac2a67
[3.12] gh-111644: Fix asyncio test_unhandled_exceptions() (GH-111713) (#111718)
gh-111644: Fix asyncio test_unhandled_exceptions() (GH-111713)

Fix test_unhandled_exceptions() of test_asyncio.test_streams: break
explicitly a reference cycle.

Fix also StreamTests.tearDown(): the loop must not be closed
explicitly, but using set_event_loop() which takes care of shutting
down the executor with executor.shutdown(wait=True).
BaseEventLoop.close() calls executor.shutdown(wait=False).
(cherry picked from commit ac01e2243a)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-11-04 06:29:20 +00:00
Miss Islington (bot)
02f8f781da
[3.12] gh-111644: Fix support threading_cleanup() (GH-111714) (#111716)
gh-111644: Fix support threading_cleanup() (GH-111714)

Copy the list of dangling threads to make sure that the list of
"Dangling thread" is complete. Previously, the list was incomplete if
threads completed just before the list was displayed.

Changes:

* Rewrite the warning to make it easier to understand.
* Use support.sleeping_retry().
* threading_cleanup() no longer copies threading._dangling,
  but only counts the number of dangling thread.
* Remove support.gc_support() call.
(cherry picked from commit f62c7ccf9a)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-11-04 00:56:34 +00:00
Jelle Zijlstra
1a95ad68b4
[3.12] gh-111654: remove redundant decref in LOAD_FROM_DICT_OR_DEREF (GH-111655) (#111674)
(cherry picked from commit 3a1b09e6d0)

Co-authored-by: AN Long <aisk@users.noreply.github.com>
2023-11-03 07:02:07 -07:00
Miss Islington (bot)
fcf91cd35f
[3.12] gh-111625: Fix link to Info-ZIP homepage (GH-111626) (#111639)
Co-authored-by: partev <petrosyan@gmail.com>
2023-11-02 12:04:27 +00:00
Kumar Aditya
9aa88290d8
[3.12] GH-110894: Call loop exception handler for exceptions in client_connected_cb (GH-111601) (#111632)
Call loop exception handler for exceptions in `client_connected_cb` of `asyncio.start_server` so that applications can handle it..
(cherry picked from commit 229f44d353)
2023-11-02 08:18:49 +00:00
Miss Islington (bot)
f1087855e2
[3.12] gh-111495: Add tests for PyBytes and PyByteArray C API (GH-111496) (GH-111607)
(cherry picked from commit 97b3cd38d1)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-11-01 18:23:39 +00:00
Miss Islington (bot)
2162512d71
[3.12] gh-110367: Make regrtest --verbose3 compatible with --huntrleaks -jN (GH-111577) (#111589)
gh-110367: Make regrtest --verbose3 compatible with --huntrleaks -jN (GH-111577)

"./python -m test -j1 -R 3:3 --verbose3" now works as expected, since
run_single_test() does not replace sys.stdout with StringIO in this
case.
(cherry picked from commit d9a5530d23)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-11-01 03:51:24 +00:00
Miss Islington (bot)
ec00397912
[3.12] gh-111181: Fix enum doctests (GH-111180) (GH-111518)
gh-111181: Fix enum doctests (GH-111180)
(cherry picked from commit c4dc5a6ae8)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2023-10-31 15:01:28 -07:00
Miss Islington (bot)
dde5a99ba2
[3.12] gh-111531: Tkinter: fix reference leaks in bind_class() and bind_all() (GH-111533) (GH-111535)
(cherry picked from commit e3353c498d)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-31 07:26:31 +00:00
Pablo Galindo Salgado
ca36426b1c
[3.12] gh-111366: Correctly show custom syntax error messages in the codeop module functions (GH-111384). (#111517) 2023-10-30 19:53:01 +00:00
Miss Islington (bot)
7ac2c53333
[3.12] gh-111284: Make multiprocessing tests with threads faster and more reliable (GH-111285) (GH-111510)
(cherry picked from commit 624ace5a2f)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-30 18:00:57 +00:00
Miss Islington (bot)
748bc48648
[3.12] gh-108082: C API: Add tests for PyErr_WriteUnraisable() (GH-111455) (GH-111507)
Also document the behavior when called with NULL.
(cherry picked from commit bca3305429)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-30 17:36:00 +00:00
Miss Islington (bot)
0681b4c82c
[3.12] gh-111347: Remove wrong assertion in test_sendfile (GH-111377) (#111461)
gh-111347: Remove wrong assertion in test_sendfile (GH-111377)

Windows is different.
(cherry picked from commit fa35b9e89b)

Co-authored-by: zcxsythenew <30565051+zcxsythenew@users.noreply.github.com>
2023-10-29 10:29:29 -07:00
Miss Islington (bot)
f7ce40213d
[3.12] gh-111426: Remove test_cmd.test_coverage (GH-111427) (#111432)
gh-111426: Remove `test_cmd.test_coverage` (GH-111427)
(cherry picked from commit 66bea2555d)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-28 23:40:02 +00:00
Miss Islington (bot)
2e5d4e24eb
[3.12] gh-79033: Try to fix asyncio.Server.wait_closed() again (GH-111336) (#111424)
gh-79033: Try to fix asyncio.Server.wait_closed() again (GH-111336)

* Try to fix asyncio.Server.wait_closed() again

I identified the condition that `wait_closed()` is intended
to wait for: the server is closed *and* there are no more
active connections.

When this condition first becomes true, `_wakeup()` is called
(either from `close()` or from `_detach()`) and it sets `_waiters`
to `None`. So we just check for `self._waiters is None`; if it's
not `None`, we know we have to wait, and do so.

A problem was that the new test introduced in 3.12 explicitly
tested that `wait_closed()` returns immediately when the server
is *not* closed but there are currently no active connections.
This was a mistake (probably a misunderstanding of the intended
semantics). I've fixed the test, and added a separate test that
checks exactly for this scenario.

I also fixed an oddity where in `_wakeup()` the result of the
waiter was set to the waiter itself. This result is not used
anywhere and I changed this to `None`, to avoid a GC cycle.

* Update Lib/asyncio/base_events.py

---------

(cherry picked from commit 2655369559)

Co-authored-by: Guido van Rossum <guido@python.org>
Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
2023-10-28 18:42:53 +00:00
Miss Islington (bot)
c3f75b757f
[3.12] gh-111342: fix typo in math.sumprod (GH-111416) (gh-111419) 2023-10-28 05:27:33 +00:00
Miss Islington (bot)
2398036eea
[3.12] gh-110205: Fix asyncio ThreadedChildWatcher._join_threads() (GH-110884) (#111412)
- `ThreadedChildWatcher.close()` is now *officially* a no-op; `_join_threads()` never did anything.
- Threads created by that class are now named `asyncio-waitpid-NNN`.
- `test.test_asyncio.utils.TestCase.close_loop()` now waits for the child watcher's threads, but not forever; if a thread hangs, it raises `RuntimeError`.
(cherry picked from commit c3bb10c930)

Co-authored-by: Guido van Rossum <guido@python.org>
2023-10-27 16:36:05 -07:00
Miss Islington (bot)
713210985b
[3.12] gh-111276: Clarify docs and comments about the role of LC_CTYPE (GH-111319) (#111391)
Fix locale.LC_CTYPE documentation to no longer mention string.lower() et al. Those functions were removed in Python 3.0:
https://docs.python.org/2/library/string.htmlGH-deprecated-string-functions

Also, fix a comment in logging about locale-specific behavior of `str.lower()`.

(cherry picked from commit 6d42759c5e)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-10-27 17:15:06 +02:00
Hugo van Kemenade
7d22e85550
[3.12] gh-111187: Postpone removal version for locale.getdefaultlocale() to 3.15 (GH-111188) (#111323) 2023-10-27 16:08:45 +03:00
Miss Islington (bot)
307ca78d7f
[3.12] gh-111380: Show SyntaxWarnings only once when parsing if invalid syntax is encouintered (GH-111381) (#111382)
gh-111380: Show SyntaxWarnings only once when parsing if invalid syntax is encouintered (GH-111381)
(cherry picked from commit 3d2f1f0b83)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2023-10-27 04:02:17 +00:00
Miss Islington (bot)
a70b2cd2d2
[3.12] GH-94438: Fix RuntimeWarning for jump tests in test_sys_settrace (GH-111369)
(cherry picked from commit a254120f2f)
Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2023-10-26 22:44:47 +00:00
Pablo Galindo Salgado
c81ebf5b3d
[3.12] bpo-43950: handle wide unicode characters in tracebacks (GH-28150) (#111346) 2023-10-27 06:43:38 +09:00
Miss Islington (bot)
78c6faee08
[3.12] gh-111348: Fix direct invocation of test_doctest; remove test_doctest.test_coverage (GH-111349) (#111359)
gh-111348: Fix direct invocation of `test_doctest`; remove `test_doctest.test_coverage` (GH-111349)
(cherry picked from commit 31c05b72c1)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
2023-10-26 13:10:58 +00:00
Miss Islington (bot)
3641dae42f
[3.12] gh-111165: Add missed "support." prefix for "verbose" (GH-111327) (GH-111328)
(cherry picked from commit a4981921aa)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-25 15:28:07 +00:00
Serhiy Storchaka
5c4f9a1c7e
[3.12] gh-111165: Move test running code from test.support to libregrtest (GH-111166) (GH-111316)
Remove no longer used functions run_unittest() and run_doctest() from
the test.support module.
(cherry picked from commit f6a45a03d0)
2023-10-25 14:56:27 +03:00
Miss Islington (bot)
45c0b38880
[3.12] gh-111174: Fix crash in getbuffer() called repeatedly for empty BytesIO (GH-111210) (GH-111314)
(cherry picked from commit 9da98c0d9a)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-25 11:25:31 +00:00
Serhiy Storchaka
54e93d36d0
[3.12] gh-111065: Add more tests for the C API with the PySys_ prefix (GH-111067) (GH-111305)
* Move existing tests for PySys_GetObject() and PySys_SetObject() into
  specialized files.
* Add test for PySys_GetXOptions() using _testcapi.
* Add tests for PySys_FormatStdout(), PySys_FormatStderr(),
  PySys_WriteStdout() and PySys_WriteStderr() using ctypes.

(cherry picked from commit b2ba298527)
2023-10-25 09:10:03 +00:00
Miss Islington (bot)
6f130f231b
[3.12] gh-102956: Fix returning of empty byte strings after seek in zipfile … (GH-103565) (#111289)
gh-102956: Fix returning of empty byte strings after seek in zipfile … (GH-103565)
(cherry picked from commit c73b0f3560)


gh-102956: Fix returning of empty byte strings after seek in zipfile module. This was a regression in 3.12.0 due to a performance enhancement.

Co-authored-by: Jokimax <77680901+Jokimax@users.noreply.github.com>
2023-10-24 17:32:08 -07:00
Miss Islington (bot)
b6e508cc86
[3.12] gh-109017: Use non alternate name for Kyiv (GH-109251) (GH-111280)
tzdata provides Kiev as an alternative to Kyiv:
https://sources.debian.org/src/tzdata/2023c-10/backward/?hl=314GH-L314

But Debian moved it to the tzdata-legacy package breaking the test:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050530

This patch switches to the name provided by tzdata.

Also check that the new name is actually available.
(cherry picked from commit 46407fe79c)

Co-authored-by: Jochen Sprickerhof <github@jochen.sprickerhof.de>
2023-10-24 17:44:46 +00:00
Miss Islington (bot)
df531912a7
[3.12] gh-75666: Tkinter: add tests for binding (GH-111202) (GH-111255)
(cherry picked from commit 9bb202a1a9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-24 14:53:21 +03:00
Miss Islington (bot)
0bbdfe611a
[3.12] GH-94438: Restore ability to jump over None tests (GH-111243)
(cherry picked from commit 6640f1d8d2)
Co-authored-by: Savannah Ostrowski <sostrowski@microsoft.com>
2023-10-24 06:39:26 +00:00
Furkan Onder
d4d947dd71
[3.12] gh-67565: Add tests for C-contiguity checks (GH-110951) (GH-111198)
(cherry picked from commit 9376728ce4)
2023-10-23 12:50:07 +03:00
Miss Islington (bot)
9e73c71aa9
[3.12] gh-110196: Fix ipaddress.IPv6Address.__reduce__ (GH-110198) (GH-111191)
(cherry picked from commit 767f416feb)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2023-10-22 19:14:50 +00:00
Miss Islington (bot)
028f47754c
[3.12] gh-111085: Fix invalid state handling in TaskGroup and Timeout (GH-111111) (GH-111171)
asyncio.TaskGroup and asyncio.Timeout classes now raise proper RuntimeError
if they are improperly used.

* When they are used without entering the context manager.
* When they are used after finishing.
* When the context manager is entered more than once (simultaneously or
  sequentially).
* If there is no current task when entering the context manager.

They now remain in a consistent state after an exception is thrown,
so subsequent operations can be performed correctly (if they are allowed).

(cherry picked from commit 6c23635f2b)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2023-10-21 19:48:53 +00:00
Miss Islington (bot)
322f79f5a2
[3.12] Synchronize test_contextlib with test_contextlib_async (GH-111000) (GH-111114)
(cherry picked from commit ff4e53cb74)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-21 22:46:41 +03:00
Miss Islington (bot)
f6cde99bdb
[3.12] gh-111159: Fix doctest output comparison for exceptions with notes (GH-111160) (#111169)
gh-111159: Fix `doctest` output comparison for exceptions with notes (GH-111160)
(cherry picked from commit fd60549c0a)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-21 18:39:34 +00:00
Serhiy Storchaka
1ea93024d4
[3.12] gh-110918: regrtest: allow to intermix --match and --ignore options (GH-110919) (GH-111167)
Test case matching patterns specified by options --match, --ignore,
--matchfile and --ignorefile are now tested in the order of
specification, and the last match determines whether the test case be run
or ignored.
(cherry picked from commit 9a1fe09622)
2023-10-21 17:33:26 +00:00
Miss Islington (bot)
6a5ff93654
[3.12] gh-111157: Mention __notes__ in traceback.format_exception_only docstring (GH-111158) (#111163)
gh-111157: Mention `__notes__` in `traceback.format_exception_only` docstring (GH-111158)
(cherry picked from commit 5e7727b052)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-21 18:07:09 +01:00
Miss Islington (bot)
0409057c86
[3.12] gh-110932: Fix regrtest for SOURCE_DATE_EPOCH (GH-111143) (#111154)
gh-110932: Fix regrtest for SOURCE_DATE_EPOCH (GH-111143)

If the SOURCE_DATE_EPOCH environment variable is defined, use its
value as the random seed.
(cherry picked from commit 7237fb578d)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-10-21 09:18:35 +00:00
Miss Islington (bot)
4a1026077a
[3.12] gh-111126: Use isinstance instead of assert[Not]IsInstance in test_typing (GH-111127) (#111130)
gh-111126: Use `isinstance` instead of `assert[Not]IsInstance` in `test_typing` (GH-111127)
(cherry picked from commit ea7c26e4b8)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-20 18:27:35 +00:00
Miss Islington (bot)
6b38ddba97
[3.12] Add tests for failing PyUnicode_AsUTF8AndSize() with psize=NULL (GH-111100) (GH-111105)
(cherry picked from commit b60f058708)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-20 10:22:09 +00:00
Miss Islington (bot)
42fd44ac97
[3.12] gh-111092: Make turtledemo run without default root enabled (GH-111093) (#111095)
gh-111092: Make turtledemo run without default root enabled (GH-111093)

Add missing 'root' argument to PanedWindow call.
Other root children already have it.
(cherry picked from commit b802882fb2)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-10-20 04:22:15 +00:00
Radislav Chugunov
68a5640a36
[3.12] gh-108791: Fix pdb CLI invalid argument handling (GH-108816) (#111064)
* [3.12] gh-108791: Fix `pdb` CLI invalid argument handling (GH-108816)
(cherry picked from commit 162213f2db)

Co-authored-by: Radislav Chugunov <52372310+chgnrdv@users.noreply.github.com>
2023-10-19 14:25:49 +01:00
Miss Islington (bot)
40db34c901
[3.12] gh-111031: Check more files in test_tokenize (GH-111032) (#111061)
gh-111031: Check more files in `test_tokenize` (GH-111032)
(cherry picked from commit e9b5399bee)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-19 09:18:22 +00:00
Miss Islington (bot)
e37d56e8dd
[3.12] gh-111050: IDLE - Simplify configdialog.HighPage.theme_elements (GH-111053) (#111055)
gh-111050: IDLE - Simplify configdialog.HighPage.theme_elements (GH-111053)

Replace tuple value with internal name, removing numbers.
Remove sorting of already ordered dislay names.
Remove '[0]' indexing into now-gone tuple.
(cherry picked from commit 642eb8df95)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-10-19 04:32:06 +00:00
Miss Islington (bot)
b8ce5d9c17
[3.12] gh-103737: IDLE - Remove unneeded .keys() for dict iteration (GH-110960) (#111026)
gh-103737: IDLE - Remove unneeded .keys() for dict iteration (GH-110960)

Add comments where .keys() is needed.
Leave debugger usages along because situation is unclear as indicated in expanded comment.
Most testing is manual.
(cherry picked from commit baefbb21d9)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-10-18 09:05:08 +00:00
Miss Islington (bot)
577a8fb72b
[3.12] gh-111019: Align expected and actual titles in test output (GH-111020) (#111024)
gh-111019: Align expected and actual titles in test output (GH-111020)

Align expected and actual titles in output from
assert_has_calls/assert_called_with for greater readability
(cherry picked from commit 77dbd95609)

Co-authored-by: James <morisja@gmail.com>
2023-10-18 08:01:18 +00:00
Miss Islington (bot)
004618fed7
[3.12] gh-110938: More syntax tests for PEP695 funcs and classes (GH-110986) (#111023)
gh-110938: More syntax tests for PEP695 funcs and classes (GH-110986)
(cherry picked from commit 220bcc9e27)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-10-18 06:02:17 +00:00
Jelle Zijlstra
2bca5f43af
[3.12] gh-110938: Fix error messages for indented blocks with functio… (#110990)
[3.12] gh-110938: Fix error messages for indented blocks with functions and classes with generic type parameters (GH-110973)
(cherry picked from commit 24e4ec7766)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2023-10-17 22:26:34 -07:00
Miss Islington (bot)
f0c2390a1f
[3.12] gh-110995: Fix test_gdb check_usable_gdb() (GH-110998) (#111003)
gh-110995: Fix test_gdb check_usable_gdb() (GH-110998)

Fix detection of gdb built without Python scripting support.

* check_usable_gdb() doesn't check gdb exit code when calling
  run_gdb().
* Use shutil.which() to get the path to the gdb program.
(cherry picked from commit 920b3dfaca)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-10-17 18:45:55 +00:00