This topic is intended to showcase everybody’s new Trio-compatible packages and projects.
“asyncwebsockets” can now play as a websocket server.
“distkv” (https://github.com/smurfix/distkv) is a modular distributed key-value storage that achieves eventual consistency without relying on a quorum, a master server, or anything else of that sort. Status: work in progress but the basics are already usable.
My goal is to add modules so that it can serve as a secure password store, simple-but-truly-distributed code orchestration, and whatever else I can think of.
As trio-websocket is fairly complete with high test coverage, was it cross-async that motivated you to put development time into asyncwebsockets?
Right. I needed a cross-async server implementation (I’m porting hbmqtt to anyio) and it was much easier to teach the existing asyncwebsockets to also be a server, than to convert trio-websocket to anyio.
More fun: I rewrote hbmqtt to use anyio. (Upstream didn’t yet tell me how hare-brained they think that idea is, bit I resolved a couple of race conditions while I was at it, so …)
Next step: Throw together with with asyncserf, the result will be a distributed mqtt server.
Then: Teach hbmqtt about pluggable message storage; use distkv for that.