bunqueue v2.6.46
blog · release
bunqueue v2.6.46
Fixes 3 bugs. Cloud: resilient WebSocket with ring buffer, cloud: client-side ping heartbeat, cloud: dual-channel failover.
To install bunqueue v2.6.46
Section titled “To install bunqueue v2.6.46”bun add bunqueue@2.6.46npm install bunqueue@2.6.46To upgrade bunqueue
Section titled “To upgrade bunqueue”bun add bunqueue@latestCloud: resilient WebSocket with ring buffer
Section titled “Cloud: resilient WebSocket with ring buffer”Events are buffered (max 1000) when WS is disconnected and flushed after handshake_ack on reconnect (with 5s fallback timeout). Zero event loss during brief disconnections.
Cloud: client-side ping heartbeat
Section titled “Cloud: client-side ping heartbeat”Bunqueue sends { type: "ping" } every 10s to the dashboard; if no pong within 5s, closes socket and reconnects. Dead connection detection reduced from ~40s to ~10s.
Cloud: dual-channel failover
Section titled “Cloud: dual-channel failover”When WS is down, buffered events are embedded in the HTTP snapshot (snapshot.events), so the dashboard stays informed even during prolonged disconnections.
Bugfixes
Section titled “Bugfixes”- Cloud: double reconnect race: Pong timeout no longer calls
scheduleReconnect()directly; delegates tooncloseto prevent duplicate sockets. - Cloud: local socket reference: All handlers (pong, handshake, commands) use the local
wsvariable, notthis.ws, preventing replies on stale sockets after reconnect. - Cloud: old socket cleanup: Previous socket is explicitly closed and handlers nulled before creating a new connection.
Thanks to 1 contributor!
Section titled “Thanks to 1 contributor!”← bunqueue v2.6.45 · Release on GitHub · Commits since v2.6.45 · Full changelog · All posts