libp2p / py-libp2p

The Python implementation of the libp2p networking stack 🐍 [under development]
https://libp2p.io
Other
481 stars 105 forks source link

Make py-libp2p async-library-agnostic with anyio #383

Open ShadowJonathan opened 4 years ago

ShadowJonathan commented 4 years ago

Coming from https://github.com/libp2p/py-libp2p/issues/174#issuecomment-560470465, and based on some conversation with @mhchia, I'm making this issue as a reminder to eventually make the library completely io-agnostic by implimenting it with anyio, an asynchronous io abstraction library (which currently supports asyncio, trio, and curio).

This'll tie #349, #347 and #174 into one problem, while staying in async library ecosystems of all 3 (possibly 4)

Anyio documentation: https://anyio.readthedocs.io/en/latest/index.html Pypi project: https://pypi.org/project/anyio/

ShadowJonathan commented 4 years ago

(I've read up on sans-io, and I realise that it's a mentality about async code instead of an actual library implimentation of the python async loop, my apologies)