Add yield support in async function
Checks
-
I agree to follow the MicroPython Code of Conduct to ensure a safe and respectful space for everyone.
-
I've searched for existing issues regarding this feature, and didn't find any.
Description
Just in PEP 525, it's really easy to make a async generator instead of coding a new class with aiter and anext .
Just like this:
async def test():
for i in range(5):
await something
' yield i
Code Size
I believe this is an important syntax that makes asynchronous generation as convenient as normal generators.
Implementation
- I intend to implement this feature and would submit a Pull Request if desirable.
- I hope the MicroPython maintainers or community will implement this feature.
- I would like to Sponsor development of this feature.
[webassembly] element.onclick = async fn fails
Checks
-
I agree to follow the MicroPython Code of Conduct to ensure a safe and respectful space for everyone.
-
I've searched for existing issues matching this bug, and didn't find any.
Port, board and/or hardware
webassembly PyScript port
MicroPython version
latest
Reproduction
async def thing(event):
print(event)
element.onclick = thing
There's no way to have an async listener.
Expected behaviour
in JS and other runtimes, element.onclick = async_ref works, in MicroPython nothing happens ... async def(): are all ignored when assigned, either via run or runAsync utilities.
Observed behaviour
in JS and other runtimes, element.onclick = async_ref works, in MicroPython nothing happens ... async def(): are all ignored when assigned, either via run or runAsync utilities.
Additional Information
No, I've provided everything above.