SleekXMPP uses threads
And as we all know, thread sucks.
Use poll/epoll/kqueue/select to implement a threadless version of SleekXMPP.
The goal of the threadless branch:
- The API should NOT change (even the block=True arguments should remain, even if they become useless (mark them as deprecated somewhere)
- Not one single Thread should be used
- All tests should pass
- We must be able to add our own file descriptors to the event loop. For example SleekXMPP should be able to monitor stdin, a ZMQ socket, etc transparently, and call our own callbacks when SleekXMPP detects an event on them.
- Revision 956807eec4a23f15dae8d545122760538c790e5a by linkmauve on 2017-10-14T17:39:50Z:
Add support for italic on ^Ci. Fixes #2272.