The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
- Fixed WebSocket connections disconnecting when no response is received on ping request #14 @jasoncodes
- Added support for certificate chains for client authentication #10 @MuniekMg
Added `Sendable` conformance. For backwards compatibility, `@preconccurency` is used to prevent any warnings or errors.
- Fixed compiler issues when compiling for previews with `SwiftUI`
- Added option to pass `EventLoopGroup` to init of `MQTTConfiguration`, making sure the correct `TLSConfiguration` is used when setting up with a `URL`.
- Fixed @available issues when compiling with Xcode 14
- Added proper connection shutdown and warning message when `MQTTClient` gets deallocated.
- Added `Network` TLS implementation using transport services for iOS, watchOS and tvOS. (fixes #5, #6)
- Added validation methods for topics and topic filters
- Now returning errors when trying to publish/subscribe to or unsubscribe from an invalid topic
- Updated for Xcode 13.2 allowing concurrency to work with older versions of macOS and iOS.
- When listing for messages for a specific topic, the topic to listen for is now treated as a topic filter, taking into account any wildcards (`+` and `#`).
So the following now works correctly:
```swift
let topic = "some/topic/+/with/wildcards/#"
try await client.subscribe(to: topic)
for await message in client.messages(forTopic: topic) {
print("Received: \(message)")
}
```