Skip to content

TaskGroup fails to cancel tasks pending creation, if that task starts a failing task #128550

Closed
@graingert

Description

@graingert

Bug report

Bug description:

this 'deadlocks' on eager tasks, but raises an EG as expected on regular 'lazy' tasks.

import sys import asyncio if sys.version_info >= (3, 13): from asyncio import EventLoop elif sys.platform == "win32": from asyncio import ProactorEventLoop as EventLoop else: from asyncio import SelectorEventLoop as EventLoop def loop_factory(): loop = EventLoop() loop.set_task_factory(asyncio.eager_task_factory) return loop async def main(): async with asyncio.TaskGroup() as tg: async def third_task(): raise RuntimeError("third task failed") async def second_task(): tg.create_task(third_task()) await asyncio.Event().wait() tg.create_task(second_task()) # asyncio.run(main()) asyncio.run(main(), loop_factory=loop_factory)

CPython versions tested on:

3.12, 3.13, 3.14

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    stdlibPython modules in the Lib dirtopic-asynciotype-bugAn unexpected behavior, bug, or error

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions