Changes for version 0.14 - 2026-05-17
- Fix Hypersonic::Event::IOUring missing async-slot methods (gen_create_loop, gen_add_with_slot, gen_get_slot, gen_wait_once).
- Improve IOUring backend detection: read /proc/sys/kernel/io_uring_disabled and reject if non-zero (RHEL9 sets this to 2 by default); add a runtime probe via Hypersonic::JIT::Util->can_run that actually opens and closes a ring, catching kernels that link liburing but reject io_uring_setup().
- Fix `return -1;` leaking into the void XS body of hypersonic_run_event_loop from IOUring's and Select's gen_create.
- Fix Hypersonic::Compress::get_zlib_flags using `//` (defined-or) where it needed `||` (string-falsy)
- Fix pthread linking for Hypersonic::Future: Future->compile now passes -pthread / -lpthread. Linux+glibc auto-resolves the symbols via libc; FreeBSD, OpenBSD and Linux+musl don't, and the JIT-compiled .so failed at dlopen with "Undefined symbol 'pthread_create'".
- Diagnostics: Hypersonic::Socket::create_listen_socket now croak()s with strerror(errno) on socket/bind/listen failure instead of returning silent -1; new t/lib/HypersonicTest.pm helper captures the forked server child's STDERR/STDOUT and diag()s it when wait_for_port times out.
Modules
Blazing fast HTTP server with JIT-compiled C event loop
JIT-compiled gzip compression for Hypersonic
Event backend registry and selection
epoll event backend for Linux
Event Ports backend for Solaris/illumos
I/O Completion Ports backend for Windows
io_uring event backend for Linux 5.1+
kqueue event backend for BSD/macOS
poll() event backend (portable fallback)
Base class for event backends
select() event backend (universal)
High-performance JIT-compiled Future for async operations
Thread pool for async operations (OO interface)
Utilities for JIT compilation in Hypersonic
JIT compiled request ID middleware
JIT code generation for HTTP/1.1 protocol
JIT code generation for HTTP/2 protocol
Server-Sent Events protocol support
WebSocket handshake code generation
WebSocket frame encoding/decoding
JIT-compiled request object for Hypersonic
Fluent response builder for Hypersonic
Server-Sent Events streaming interface
JIT-compiled session management for Hypersonic
JIT-compiled socket operations for Hypersonic
TLS/HTTPS support for Hypersonic
High-performance JIT-compiled HTTP user agent
Async HTTP request handling for Hypersonic::UA
Connection pool for Hypersonic::UA
HTTP response object for Hypersonic::UA
High-level WebSocket connection API (JIT-compiled)
XS WebSocket connection management (OO)
XS Broadcast support for WebSocket connections
Provides
in lib/Hypersonic/Stream.pm
in lib/Hypersonic/UA/HTTP2.pm
in lib/Hypersonic/UA/Protocol/HTTP1.pm
in lib/Hypersonic/UA/SSE.pm
in lib/Hypersonic/UA/Socket.pm
in lib/Hypersonic/UA/Stream.pm
in lib/Hypersonic/UA/TLS.pm
in lib/Hypersonic/UA/WebSocket.pm