- Make vibe-d version dependency more generic
- Fix still being processed messages when disconnected (could cause problems during reconnects too)
- Droped support for old vibe-d:core
- Fix disconnect deadlock when no ConAck is received from server
- Fix possible contract assert when starting listener/dispatcher tasks
- Support for TLS ALPN extensions by @kubo39
- Fix reconnect not working when disisconnected during ConnAck timeout
- Fix possible reconnect segfault when used with old vibe-d:core
- Fix subscribe to go through session, not directly
- Fix unittest imports
- Fix #10 - check packetId usage in session
- Fix #18 - unsubscribe is not implemented
- Fix #4 - A way to block publish instead of throwing old messages
- Fix #19 - Dispatcher only works with session.front packet
- Fix #9 - Wait for ConnAck before sending pending messages
- Fix #13 - Maintain client session state
- Fix #12 - QoS 2 level support
- Fix #28 - allow more than 23B for client identifier
- Fix #29 - Acquiring writer of already owned connection
- Fix #26 - compilable with the new vibe-core
- Fix unsubscribe sending blank topics
- Fix possible recursion on sending Disconnect while connection is failing
- Fix possible assert in dispatcher during disconnect
- Fix connection FD leak
- Added possibility to set size of send (queue of messages to be send) and inflight (queue of messages being currently handled) queues
- Added support to set KeepAlive interval for sending control packets to determine connection state with the broker (PingReq/PingResp)
- Various refactorings and optimizations
- Added safe attribute throughout the library
- Make compatible with vibe-0.8.0
- Added possibility to set reconnect interval in settings to enable autoreconnect
- Added basic SSL/TLS support using vibe.d streams
- Added optional callbacks to settings - fixes #23
connect()
anddisconnect()
aren't final anymore - fixes #23
- Fix #25 - 32bit platform type fix
- Fix unittest imports
- Fix subscribe to go through session, not directly
- Partial fix to be usable with vibe-0.8.0
- Fix import in tests.d
- Make client.subscribe topics parameter const to allow receive immutable
- onDisconnect() added to detect client disconnection from broker
- Remove repeated allocation of buffer in listener loop
- Clean read buffer before connect
- Check if TCPConnection is empty in listener loop
- Fix #6 - disconnect() hangs up then listener() fibre in different task
- Remove assert from connected property to be able to check even if the connection is not set yet
- Use of vibe submodules
- Fixes publishing QoS1 messages
- Fix imports for dmd-2.071
- Fix assertion failure due to packet buffer filling up
- Fix connecting with username / password
- Fix FixedRingBuffer.freeOnDestruct deprecation
- Fix default struct constructor warning
- Basic session state implemented (requirement for QoS1,2)
- Supports QoS1 packet handling (delivery retry still missing)
- Packet ID generator returns 0 on rollover - which is invalid
- Fix compilation error with dmd-2.068-b2
- Fix - set packet state when added to Session queue
- Initial release