It’s been quite a while since I wrote on here. Time flies I guess. I’ve finally come back around to working on libwebsock when I get a chance. Before I went into hibernation, I’d been working out threading for the callbacks. In versions 1.0.4 and previous, the callbacks would block the event loop. This really isn’t such a big deal for small experimentation and some usefulness as long as you keep your callback work short or thread it out on your own inside the callback, but for any kind of production use it was absolutely absurd to have blocking callbacks. I’ve finally got most of the threading worked out using pthreads. Libwebsock now depends on pthreads, so you must have pthreads and libevent-pthreads (part of the libevent library, though you may need to configure to enable it) installed in order to use libwebsock. It’s generally pretty stable right now, though it leaks memory like a sieve. The autobahn tests are mostly passing and I think I’ve gotten rid of most potential SIGSEGVs. I bumped the version because this is indeed a big step forward for libwebsock. The 2.x.x series is going to focus on stabilizing the library, getting rid of remaining memory leaks, and fully passing the Autobahn Test Suite. I hope to make this library rock solid and fast. After that, I’ll begin implementing some higher level libraries (Python, PHP, NodeJS) to wrap libwebsock. My hope is that libwebsock will be a solid foundation on which higher-level languages can depend on to provide smooth, stable, and fast WebSocket server end points. So, we’ll see how this progresses and as always, I’ll be posting any interesting updates here.