Releases: swift-server-community/mqtt-nio
Releases · swift-server-community/mqtt-nio
v1.3.1
- Don't reset pingreq timer when a read occurs. This was stopping the client sending PINGREQs when reading QoS0 packets
v1.3.0
- Remove references to NIOSSL on iOS, tvOS, watchOS
- Include port in initial http request "host" header for websocket connection if not default value
v1.2.2
- Make member variables of
MQTTClient.Configurationpublic - Add logging of packet id
- Set initial packet id to be different from one return by broker CONNACK
- Ensure packet id is always non-zero
v1.2.1
- Deal with PUBLISH packets with no payload
- FIx crash with double insert of
ByteToMQTTMessageDecoder
v1.2.0
Breaking changes
MQTTClient.connecthas new parametercleanSession. Setting this to false will mean the broker stores a record of the session and on reconnection will resume communication based on previous state.MQTTClient.connectreturns whether the server restored a session for this connection.- MQTTClient.unsubscribe takes an array of Strings instead of
MQTTSubscribeInfo - Set
MQTTClient.connectiontonilon disconnect - Catch server disconnect
- Fail any tasks in progress if the connection is closed
v1.1.1
- Fix two issues with downloading large payloads
v1.1.0
- Extend support to Swift 5.1 and tvOS
- Always response to a PUBREL with a PUBCOMP
v1.0.0
- Added retry on tasks that time out (including update of publish message dup flag)
- Process QoS2 messages correctly with retries.
- Fixed issue where timed out tasks did not have their handlers removed
- Propogate message serialization errors back to client
v0.4.0
Major version changes
- Added support for NIO Transport services TLS configuration. Added new struct
TSTLSConfigurationwith NIOTS specific attributes. MQTTClient is no longer initialized with aTLSConfigurationit now takes an enumTLSConfigurationTypewhich can hold either aTLSConfigurationor TSTLSConfiguration`.
Patch version changes
- Attach
MQTTClient.identifiertoLoggerinMQTTClient.init.
v0.3.0
Major version changes
Change public APIs so they take list of parameters instead of the core MQTT types