v0.19.0-beta
Pre-releaseFocus: WebSocket Server + WebSocket Client + HTTP/2 Server
π MINOR version
Changes
WPI β Web Programming Interface
- β
WebSocket Server CLI (
WPI/Nodes/WS_Server_CLI)- β Handshake, frames, opcodes
- β Channels / rooms
- β Broadcasting (same-worker + cross-worker via per-worker datagram relay)
- β Ping/pong heartbeat
- β
Auth handshake middleware (reuses v0.15 Authentication guards) + Origin gate (
HandshakeRequested) - β permessage-deflate (RFC 7692, ext-zlib)
- β Streaming UTF-8 validation + outbound fragmentation
- β wss:// (TLS)
- β
WebSocket Client CLI (
WPI/Nodes/WS_Client_CLI) β wire-compatible withWS_Server_CLI(verified via live E2E + Autobahn 1-7/12/13 = 0 FAILED) β committed + pushed to main (137f54c)- β
Self-contained codec duplicated in the client (own
Message/Frame+masking,Message/UTF8,Handshake,MessageDTO, inline permessage-deflate) βWS_Server_CLINOT modified; the alpha-order rule (Client < Server) forbids importing the Server subtree, so the codec is duplicated by design - β
WS_Client_CLI extends TCP_Client_CLI implements WS, WS\Client(mirrorsHTTP_Client_CLI) +WS/Client.phpmarker - β
Client handshake β generate
Sec-WebSocket-Key, send upgrade GET, verify101+Sec-WebSocket-Accept - β Frames, opcodes β outbound frames masked (RFC 6455 Β§5.1); inbound unmasked
- β
Fragmentation (inbound reassembly + outbound
send(fragment:)) - β Ping/pong heartbeat (auto-pong to server ping + client-initiated ping)
- β permessage-deflate (RFC 7692, ext-zlib) β client offer / negotiate
- β Streaming UTF-8 validation (JIT-safe PCRE validator)
- β wss:// (TLS)
- β
Auth β send Bearer/Basic +
Originheader on upgrade - β
Unit + E2E test suites (live
WS_Server_CLIdriven by the client) + Demo project + docs (en-US + pt-BR) - β Auto-reconnect with backoff (client-only)
- β Autobahn client conformance β 462 cases / 0 FAILED (sections 1-7, 12, 13)
- β
Multi-client β instance-scoped callbacks + concurrent live clients on one shared loop (non-blocking
open()+ staticrun())
- β
Self-contained codec duplicated in the client (own
- β
HTTP/2 (over the existing
HTTP_Server_CLI)- β HPACK header compression
- β Binary framing layer
- β Stream multiplexing (concurrent requests on one connection)
- β Server push (optional β feature-flag)
- β ALPN negotiation on the existing TLS-capable HTTPS server
Commits
Features
feat β New features:
β’ feat(WPI): add WS_Server_CLI (native RFC 6455 WebSocket server)
β’ feat(WS_Client_CLI): native WebSocket client (RFC 6455 / RFC 7692)
β’ feat: HTTP/2 Server implemetation (WIP)
β’ feat(Cache): add in-process memory cache driver and related tests
β’ feat(CLI): single-role Terminal Client/Server over an injected channel
β’ feat(CLI): interactive terminals on emulated TTYs (BOOTGLY_TTY)
β’ feat(CLI): embedded-runtime (WASM) compatibility + non-TTY hardening
β’ feat(CLI): Mouse Reporting demo + parser hardening
β’ feat(Benchmark/WS_Server_CLI): add WebSocket server benchmark project
β’ feat(benchmark): derive HTTP_Server_CLI router from the load set
β’ feat(ACI/Tests/Benchmark): mandatory --loads=<set>:<indexes> syntax
β’ CLI: add Viewport (24) and Logs (25) demos; harden Logs viewer rendering
β’ Demo/Progress: ASCII bar symbols, emoji spacing, 1M milestones
Fixes
fix β Bug fixes:
β’ fix(WPI/HTTP2): harden h2 server per security audit S1-S6
β’ fix(projects/Benchmark): deadlock-free TechEmpower /updates
β’ fix(CLI): resolve the Client/Server role at Input construction
β’ fix(Dockerfile, Dockerfile.dockerignore, docker-compose.yml): update paths and command syntax for clarity
β’ fix(commands/Test): don't run case load-set validation under --help
β’ fix(commands/Test): enforce mandatory --opponents and --loads in benchmark
β’ fix(ACI/Tests/Benchmark): classify server run if any result has rps
β’ CLI: fix Alert Attention contrast; stop BCE bleed in coloring demo
β’ CLI: pin Alert Attention foreground to 256-color cube black
Implementations
docs β Documentation:
β’ docs(README): update core principles for clarity and efficiency
β’ docs: Updated README.md
β’ docs: Updated README.md
β’ docs: Updated README.md
β’ docs: Updated README.md
chore β Maintenance:
β’ chore(release): bump Dockerfile BOOTGLY_VERSION β 0.18.0-beta
πΌ Highlights
- WS_Server_CLI β native RFC 6455 WebSocket server: channels/rooms, cross-worker broadcast, permessage-deflate, auth handshake + Origin gate, streaming UTF-8, wss://.
- WS_Client_CLI β native RFC 6455 / RFC 7692 client, wire-compatible with the server (Autobahn 1-7/12/13 = 0 FAILED), auto-reconnect + multi-client on one shared loop.
- HTTP/2 over
HTTP_Server_CLIβ HPACK, binary framing, stream multiplexing, optional server push, ALPN negotiation; hardened per security audit S1-S6.