Skip to content

asyncio.TaskGroup corrupts uncancel() stack when the parent task replaces the cancelled error#95289

@graingert

Description

@graingert

Bug report

importasyncioclassMyException(Exception): passasyncdefasync_fn(): awaitasyncio.sleep(0) raiseMyExceptionasyncdefmain(): task=asyncio.current_task() try: asyncwithasyncio.TaskGroup() astg: tg.create_task(async_fn()) try: awaitasyncio.sleep(1) exceptasyncio.CancelledError: pass except* MyException: print("done!") print(f"{task.cancelling()=} should be 0") asyncio.run(main())

Metadata

Metadata

Labels

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions