diff --git a/CHANGELOG.md b/CHANGELOG.md index f1f23ad..0dfd85a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ This document describes the changes to Minimq between releases. -# [Unreleased] +# [0.6.0] - 2022-11-03 ## Added * Allow configuration of non-default broker port numbers @@ -100,8 +100,9 @@ keep-alive interval * Initial library release and publish to crates.io -[Unreleased]: https://github.com/quartiq/minimq/compare/0.5.3...HEAD -[0.5.2]: https://github.com/quartiq/minimq/releases/tag/0.5.3 +[Unreleased]: https://github.com/quartiq/minimq/compare/0.6.0...HEAD +[0.6.0]: https://github.com/quartiq/minimq/releases/tag/0.6.0 +[0.5.3]: https://github.com/quartiq/minimq/releases/tag/0.5.3 [0.5.2]: https://github.com/quartiq/minimq/releases/tag/0.5.2 [0.5.1]: https://github.com/quartiq/minimq/releases/tag/0.5.1 [0.5.0]: https://github.com/quartiq/minimq/releases/tag/0.5.0 diff --git a/Cargo.toml b/Cargo.toml index 73ff9a0..8d1e1d6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "minimq" -version = "0.5.3" +version = "0.6.0" authors = ["Ryan Summers ", "Max Rottenkolber "] edition = "2018" @@ -22,10 +22,7 @@ log = {version = "0.4", optional = true} embedded-time = "0.12" varint-rs = {version = "2.2", default-features = false } serde = { version = "1", features = ["derive"], default-features = false } - -[dependencies.smlang] -git = "https://github.com/ryan-summers/smlang-rs" -branch = "feature/versatile-guard-errors" +smlang = "0.6.0" [dependencies.embedded-nal] version = "0.6" diff --git a/README.md b/README.md index bd110b4..e30ac64 100644 --- a/README.md +++ b/README.md @@ -14,18 +14,23 @@ subscribe to topics. ## Features Minimq supports all of the fundamental operations of MQTT, such as message subscription and -publication. Below is a detailed list of features, indicating what aspects are supported and what -aren't: -* Will messages are fully supported. -* Message publication is supported for all quality-of-service (QoS) levels -* Message subscription is only supported for the following QoS levels: - 1. At Most once (Level 0) - 2. At Least Once (Level 1) -* Topic aliasing is not yet supported +publication. Below is a detailed list of features, indicating what aspects are supported: +* Publication at all quality-of-service levels (at-most-once, at-least-once, and exactly-once) +* Retained messages +* Connection will messages +* Session state reconnection and republication +* Topic subscriptions at quality-of-service at-most-once and at-least-once + * exactly-once subscription support is not yet implemented +* Subscription option flags +* Zero-copy message deserialization +* Serde-compatible MQTT message serialization and deserialization If there are features that you would like to have that are not yet supported, we are always accepting pull requests to extend Minimq's capabilities. +Minimq also provides convenient APIs to implement request-response interfaces over MQTT leveraging +the `ResponseTopic` and `CorrelationData` properties for in-bound and out-bound messages. + ### Smoltcp Support If using `smoltcp`, check out the [`smoltcp-nal`](https://github.com/quartiq/smoltcp-nal) to quickly create an interface that can be used by Minimq.