Under RSGI __rsgi_init__ is called before the loop starts, so asyncio.get_running_loop() raises RuntimeError inside setup(). Spell out that mixins must use the loop they are given, since the ASGI lifespan incidentally runs with a live loop.
kaya-core
Core package of the Kaya web framework.
Provides method-aware routing, path matching, HTTP/WebSocket abstractions, and an ASGI adapter.