[issue26552] Failing ensure_future still creates a Task

Guido van Rossum report at bugs.python.org
Fri Jan 28 17:16:17 EST 2022


Guido van Rossum <guido at python.org> added the comment:

So I just realized that the OP's description is slightly misleading. (Their code is spot on though!)

The code does not create an unwaited-for *task*, assuming that "task" refers to the asyncio.Task class.

What is created is a *coroutine* object that's never awaited (as the quoted RuntimeWarning message says: "coroutine 'foo' was never awaited").

So the thing that needs to be closed in the bowels of _ensure_future() is indeed the argument (coro_or_future), in case it is a coroutine object.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue26552>
_______________________________________


More information about the Python-bugs-list mailing list