numberoverzero / bottom

asyncio-based rfc2812-compliant IRC Client
http://bottom-docs.readthedocs.io
MIT License
74 stars 23 forks source link

Dispatch blocks, incorrect async #12

Closed numberoverzero closed 8 years ago

numberoverzero commented 9 years ago

After unpacking, the reading loop will yield from the event dispatch, which means it waits until all handlers run for the event, before continuing.

Instead, events.trigger should be a non-blocking call. That is, it should push the event into a queue, then return execution to the caller.


I'm working on accordian to fix this - however, in trying to use the 3.5 syntax (await and async as keywords) I've run into other problems. Once I've finished testing the library, I'll integrate it into bottom. This will require 3.5+ to use bottom, but the migration from 3.4 (current requirement) to 3.5 is virtually painless (I haven't seen any reports of problems migrating).