Skip to content

Releases: swift-server-community/mqtt-nio

v1.2.2

06 Jan 16:43
Compare
Choose a tag to compare
  • Make member variables of MQTTClient.Configuration public
  • 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

05 Jan 08:46
Compare
Choose a tag to compare
  • Deal with PUBLISH packets with no payload
  • FIx crash with double insert of ByteToMQTTMessageDecoder

v1.2.0

12 Dec 07:58
Compare
Choose a tag to compare

Breaking changes

  • MQTTClient.connect has new parameter cleanSession. 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.connect returns whether the server restored a session for this connection.
  • MQTTClient.unsubscribe takes an array of Strings instead of MQTTSubscribeInfo
  • Set MQTTClient.connection to nil on disconnect
  • Catch server disconnect
  • Fail any tasks in progress if the connection is closed

v1.1.1

06 Dec 13:12
d99d6c2
Compare
Choose a tag to compare
  • Fix two issues with downloading large payloads

v1.1.0

05 Dec 08:41
b15660d
Compare
Choose a tag to compare
  • Extend support to Swift 5.1 and tvOS
  • Always response to a PUBREL with a PUBCOMP

v1.0.0

04 Dec 14:09
Compare
Choose a tag to compare
  • 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

24 Nov 15:50
d8df5b8
Compare
Choose a tag to compare
v0.4.0 Pre-release
Pre-release

Major version changes

  • Added support for NIO Transport services TLS configuration. Added new struct TSTLSConfiguration with NIOTS specific attributes. MQTTClient is no longer initialized with a TLSConfiguration it now takes an enum TLSConfigurationType which can hold either a TLSConfiguration or TSTLSConfiguration`.

Patch version changes

  • Attach MQTTClient.identifier to Logger in MQTTClient.init.

v0.3.0

20 Nov 17:48
1b593ff
Compare
Choose a tag to compare
v0.3.0 Pre-release
Pre-release

Major version changes

Change public APIs so they take list of parameters instead of the core MQTT types

v0.2.0

19 Nov 09:20
2fa8624
Compare
Choose a tag to compare
v0.2.0 Pre-release
Pre-release

Major release changes

  • Replaced publish callback with an array of publish listeners which can be added and removed
  • pingreq is now called ping

Minor release changes

  • Added closeListeners that are notified of when the connection is closed.

Patch release changes

  • Moved bootstrap creation and sendMessage functions into MQTTConnection class

v0.1.0

18 Nov 20:12
Compare
Choose a tag to compare
v0.1.0 Pre-release
Pre-release

Initial release

MQTT client based around Swift NIO and FreeRTO coreMQTT C library
Support WebSocket and SSL connections