New submission from David Hilton :
If a python piece of code imports cython code with async defs,
`asyncio.iscoroutinefunction` cannot determine that the code is async.
https://github.com/cython/cython/issues/2273#issuecomment-531537624
scoder is open to marking async defs so that they can be identified, just like
`asyncio.coroutine`:
https://github.com/python/cpython/blob/ae239f6b0626e926613a4a1dbafa323bd41fec32/Lib/asyncio/coroutines.py#L156
However, that is an internal interface and `@coroutine` is deprecated.
--
Can we have some official way of marking functions as async that will not be
deprecated?
The easiest would be for `asyncio.iscoroutinefunction` to look for
`_is_coroutine = True`, and promise to keep looking for that value.
This would also allow for functools.partial to easily mark that it's returning
an async function, which some people seem to care about.
--
components: asyncio
messages: 352812
nosy: asvetlov, dhiltonp, yselivanov
priority: normal
severity: normal
status: open
title: iscoroutinefunction broken with cython - allow tagging of functions as
async?
type: enhancement
versions: Python 2.7, Python 3.5, Python 3.6, Python 3.7, Python 3.8, Python 3.9
___
Python tracker
<https://bugs.python.org/issue38225>
___
___
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com