Repository navigation
Graceful shutdown & cross-instance broadcastExcept
This release fixes how Transmit behaves when you run several instances behind a transport, and how it shuts down.
Bug Fixes
broadcastExcept now reaches every instance (3c92c1b)
Until now, broadcastExcept only delivered messages to clients connected to the current instance and never published to the transport. With several instances (Redis, MQTT, …), clients connected elsewhere never got the message. The message now goes through the transport like broadcast, along with the UIDs to exclude, and every instance skips those UIDs.
Instances still on an older version ignore the exclusion list. During a rolling deploy, they deliver the message to all of their subscribers.
SSE streams are closed on shutdown (4a49eec, 5783183)
transmit.shutdown() now closes every open SSE connection, so open streams no longer keep the HTTP server alive. Connections attempted after shutdown are refused right away. A new transmit.closeAllStreams() method does the same thing without disconnecting the transport.
Lighter npm package (8fe319d)
Compiled tests and bin scripts are no longer published.
Dependencies
@poppinss/utilsupgraded to v7 (#51)@boringnode/bus^0.9.2,emittery^1.2.1, plus non-major updates (#45, #55)
Tooling
Full Changelog: v0.4.0...v0.4.1