For #CircuitPython2026, I've distilled my 2025 #CircuitPython wish list (https://fosstodon.org/@anecdata/113773025044962141) to one item:

• asyncio support for sockets

(it can be done for TCP currently, though I don't think it's CPython-compatible, I'm not sure it's complete, and it hardfaults https://gist.github.com/anecdata/89b4458fd7c0c01c7fc0a9ff4be5b4e6)

anecdata (@[email protected])

#CircuitPython2025 Core software wish list: • Low-level async for sockets • Updated APIs (e.g., gc, espidf) for examining runtime use of various memory pools • API to expose pre-safemode execution info (e.g., github.com/adafruit/circuitpython/issues/8704) • Ethernet over USB (would allow network access for any board) New hardware wish list: • Metro and Feather with RM2 wifi • 240x135 TFT FeatherWing • Tiny TFT BFF #CircuitPython

Fosstodon
@anecdata Do we have an issue open for this? I would like to see us better support asyncio in the core. (I'm getting more comfortable using it in the CP Zephyr build process.)

@tannewt Not sure what all needs to get added or changed. There are various related issues in the core (and abandoned PRs), and open enhancement issues in asyncio and various network libraries.

Notable perhaps:

async wifi.radio.connect...
https://github.com/adafruit/circuitpython/issues/6000

socketpool/ssl: refactor to use micropython-style "stream protocol"...
https://github.com/adafruit/circuitpython/issues/7009

Expand poll'able types in core...
https://github.com/adafruit/circuitpython/issues/6736

Dan and others have done work on aspects of async sockets, requests, httpserver

Add support for async wifi.radio.connect · Issue #6000 · adafruit/circuitpython

With the recent introduction of asyncio, it has allowed great simplification of simultaneous code loops for things like animations or playing audio. However, the interface to wifi.radio.connect is ...

GitHub
@anecdata I think you should file one for your example since it crashes. We should at least fix it.