I've been a Python dev for roughly a decade and had no idea about asyncio.Protocol, asyncio.transports.Transport, or that asyncio's event loops could be used to create a TCP listening server.
I always thought of asyncio as synonymous with async def and websockets. But perhaps the websockets should have clued me in that it's an actual server protocol.
Between this and "On the beauty of Python's ExitStack" (https://www.rath.org/on-the-beauty-of-pythons-exitstack.html) it's been a good week.
I was hoping that it implemented a Redis protocol reader, but pydis uses hiredis.Reader(). I wonder if there's a pure python version...
./benchmark.sh produced some warnings related to a lack of CONFIG GET, so I added a basic one just now: https://github.com/boramalper/pydis/pull/13
The benchmarks are indeed pretty close to Redis on my MBP!