cpython/Lib/test/test_asyncio
Miss Islington (bot) d481d4b767
[3.13] gh-87744: fix waitpid race while calling send_signal in asyncio (GH-121126) (#121194)
gh-87744: fix waitpid race while calling send_signal in asyncio (GH-121126)

asyncio earlier relied on subprocess module to send signals to the process, this has some drawbacks one being that subprocess module unnecessarily calls waitpid on child processes and hence it races with asyncio implementation which internally uses child watchers. To mitigate this, now asyncio sends signals directly to the process without going through the subprocess on non windows systems. On Windows it fallbacks to subprocess module handling but on windows there are no child watchers so this issue doesn't exists altogether.

(cherry picked from commit bd473aa598)

Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2024-07-01 05:11:47 +00:00
..
__init__.py
__main__.py
echo.py
echo2.py
echo3.py
functional.py
test_base_events.py gh-71042: Add `platform.android_ver` (#116674) 2024-03-27 17:53:27 +01:00
test_buffered_proto.py
test_context.py
test_eager_task_factory.py gh-109653: Remove unused imports in the `Lib/` directory (#109803) 2023-09-24 15:07:23 +01:00
test_events.py [3.13] gh-121025: Improve partialmethod.__repr__ (GH-121033) (#121037) 2024-06-26 09:49:42 +00:00
test_futures.py gh-117459: Keep the traceback in _convert_future_exc (#117460) 2024-04-03 20:13:32 -07:00
test_futures2.py GH-96764: rewrite `asyncio.wait_for` to use `asyncio.timeout` (#98518) 2023-02-17 00:18:21 +05:30
test_locks.py gh-112202: Ensure that condition.notify() succeeds even when racing with Task.cancel() (#112201) 2024-02-03 08:19:37 -08:00
test_pep492.py GH-102748: remove legacy support for generator based coroutines from `asyncio.iscoroutine` (#102749) 2023-03-16 20:28:10 +05:30
test_proactor_events.py [3.13] gh-113892: Add a extra check to `ProactorEventLoop.sock_connect` to ensure that the given socket is in non-blocking mode (GH-119519) (#119912) 2024-06-01 16:27:54 +00:00
test_protocols.py
test_queues.py gh-96471: Add asyncio queue shutdown (#104228) 2024-04-06 07:27:13 -07:00
test_runners.py gh-112559: Avoid unnecessary conversion attempts to enum_klass in signal.py (#113040) 2023-12-23 17:07:52 -08:00
test_selector_events.py gh-113812: Allow DatagramTransport.sendto to send empty data (#115199) 2024-02-16 18:38:07 -08:00
test_sendfile.py gh-111347: Remove wrong assertion in test_sendfile (#111377) 2023-10-29 08:22:15 -07:00
test_server.py gh-113538: Add asycio.Server.{close,abort}_clients (redo) (#116784) 2024-03-18 13:15:53 -07:00
test_sock_lowlevel.py gh-91227: Ignore ERROR_PORT_UNREACHABLE in proactor recvfrom() (#32011) 2024-03-23 08:39:35 -07:00
test_ssl.py gh-95649: Document that asyncio contains uvloop code (#107536) 2024-01-12 22:21:13 +00:00
test_sslproto.py GH-113214: Fix SSLProto exception handling in SSL-over-SSL scenarios (#113334) 2023-12-20 15:09:01 -08:00
test_staggered.py [3.13] gh-119121: Fix and test `async.staggered.staggered_race` (GH-119173) (#119206) 2024-05-20 11:31:31 +00:00
test_streams.py gh-117722: Fix Stream.readuntil with non-bytes buffer objects (#117723) 2024-04-11 07:41:55 -07:00
test_subprocess.py [3.13] gh-87744: fix waitpid race while calling send_signal in asyncio (GH-121126) (#121194) 2024-07-01 05:11:47 +00:00
test_taskgroups.py gh-116720: Fix corner cases of taskgroups (#117407) 2024-04-09 08:17:28 -07:00
test_tasks.py gh-116720: Fix corner cases of taskgroups (#117407) 2024-04-09 08:17:28 -07:00
test_threads.py
test_timeouts.py gh-96037: Always insert TimeoutError when exit an expired asyncio.timeout() block (GH-113819) 2024-01-10 12:50:31 +02:00
test_transports.py
test_unix_events.py [3.13] gh-119064: Use os_helper.FakePath instead of pathlib.Path in tests (GH-119065) (GH-119087) 2024-05-16 10:51:18 +03:00
test_waitfor.py chore: fix typos (#116345) 2024-03-05 09:05:52 -07:00
test_windows_events.py gh-116773: Ensure overlapped objects on Windows are not deallocated too early by asyncio (GH-116774) 2024-03-20 14:33:28 +00:00
test_windows_utils.py
utils.py gh-110205: Fix asyncio ThreadedChildWatcher._join_threads() (#110884) 2023-10-27 15:44:12 -07:00