importsysimportasyncioifsys.platform=="win32":
EventLoop=asyncio.ProactorEventLoopelse:
EventLoop=asyncio.SelectorEventLoopasyncdefdemo():
classMyError(Exception):
passasyncdefthrow_error():
raiseMyErrortry:
asyncwithasyncio.TaskGroup() astg:
tg.create_task(throw_error())
except* MyError:
passdefloop_factory():
loop=EventLoop()
loop.set_task_factory(asyncio.eager_task_factory)
returnloopasyncio.run(demo(), loop_factory=loop_factory)
Traceback (most recent call last):
File "/home/graingert/projects/anyio/demo.py", line 29, in <module>
asyncio.run(demo(), loop_factory=loop_factory)
File "/usr/lib/python3.12/asyncio/runners.py", line 194, in runreturn runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/runners.py", line 118, in runreturnself._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/base_events.py", line 687, in run_until_completereturn future.result()
^^^^^^^^^^^^^^^
asyncio.exceptions.CancelledError
Bug report
Bug description:
results in:
CPython versions tested on:
3.12
Operating systems tested on:
Linux
Linked PRs