eclipse-paho/paho.mqtt.rust
 Watch   
 Star   
 Fork   
2026-03-26 12:25:21
paho.mqtt.rust

Version 0.14.0

Updates for some performance increases, event streams, and fixes to MQTT v5 error reporting.

  • Support for Paho C v1.3.16
    • Improved performance and lower latency for connect and publish operations.
  • Added synchronous (blocking) and async event streams.
    • All events from the client flow through the stream: Connect, Connection Lost, Disconnected, Incoming Message
  • Typeof Variable Byte Integer is u32 (not i32)
  • PropertyType enum now supports Ord, PartialOrd, and Hash traits
  • Added a tokio build feature for cargo, and a few tokio example apps. Enabing the feature simply builds the tokio examples. (The library is still fully runtime agnostic).
  • Removed async-std from examples. Using smol instead.
  • Properties::byte_len and Properties::get_at no longer cast *const MQTTProperties to *mut before calling C functions that are correctly declared const in the bindings.
  • #244 Error handling for MQTT5 seems inconsistent
    • #264 Fix async MQTT5 error handling
    • Proper handling of v5 failures w/ Reason Codes
    • [Breaking] Reason Code Error variant now contains Properties from ACK packet
    • [Breaking] ACKs with a single reason code error generate an Error result, instead of an Ok() with a possible error code in it.
      • Subscribe Many & Unsubscribe Many still return Ok, possibly with a combination of success and error reason codes
  • Bumped MSRV to Rust v1.75
  • Bumped paho-mqtt-sys to v0.11
  • Various new clippy warnings fixed
  • #257 initialize mqtt version from create options instead of assuming
  • #261 Remove undefined property from Cargo.toml
2025-05-15 07:34:35
paho.mqtt.rust

-sys Version 0.10.3

Fixed the build of the C library for C23 compilers (gcc 15+, etc)

2025-04-29 00:34:02
paho.mqtt.rust

Version 0.13.3

Fixed TopicMapper

  • TopicMatcher implements From(HashMap) for the value type.
  • #243 TopicMatcher not matching parent when using '#' wildcard.
2025-03-28 04:55:09
paho.mqtt.rust

Version 0.13.2

Minor updates to TopicFilter.

  • Added some methods to TopicFilter:
    • Queries has_wildcards() and num_fields().
    • TryFrom for &str and String
2025-02-19 23:25:25
paho.mqtt.rust

Version 0.13.1

Bug fixes.

  • #240 Display trait for MqttVersion enumeration.
  • #241 Restored the ability to turn off the ssl feature.
2025-01-22 06:22:26
paho.mqtt.rust

Version 0.13.0

Update for Paho C v1.3.14 with support for UNIX-domain sockets. It also includes:

  • Updated License to EPL-v2.0
  • Bumped MSRV to Rust v1.73.0
  • Bumped -sys to v0.10.0
    • Wrapping Paho C v1.3.14
      • Support for UNIX-domain sockets on local machine (*nix only)
    • build.rs builds optional UNIX sockets into Paho C on non-Windows systems (*nix)
  • Reworked the Error type
    • Remove Paho and PahoDescr errors. De-nested them into the top-level.
    • Parsing the error messages from PahoDescr for new error types.
    • Removed Paho error constants. Now errors can be matched easily/directly.
  • Token simplified to create an Option<Result<ServerResponse>> instead of individual components.
  • Created new enumeration types:
    • MqttVersion
    • ConnectReturnCode (for MQTT v3.x)
    • QoS
  • #181 Updated README.md with explanation on how to build for apple m1/x86_64
  • #216 Deref QoS pointers for SubscribeMany and UnsubscribeMany in server response
  • #224 Fix QoS 0 and 1 conversion
  • #236 Make from_c_parts only visible inside crate
2024-05-25 21:36:49
paho.mqtt.rust

Version 0.12.5

Some bug fixes and License update.

  • Updated the License to EPL-v2.0
  • Added some missing Eclipse Paho legal documents.
  • Added TopicMatcher::insert_many()
  • #216 Deref QoS pointers for SubscribeMany and UnsubscribeMany in server response
  • #215 Now subscribe_many() returns an error if slices not the same length. Also added subscribe_many_same_qos() to the clients.
2024-05-20 08:34:51
paho.mqtt.rust

Version 0.12.4

Fixes for topic matching

  • TopicMatcher
    • Fixed a number of corner cases
    • Iterator optimized
    • Added prune() and shrink_to_fit(), and get_key_value()
  • TopicFilter fixed corner cases
  • Added stand-alone topic_matches() and topic_matches_iter() functions from PR #228
2023-10-26 04:21:47
paho.mqtt.rust

Version 0.12.3

Upgrade to Paho C v1.3.13 to fix a number of bugs, including numerous issues with reconnecting to the broker.

  • The -sys crate now wraps Paho C v1.3.13, fixing several issues, including crashes on reconnect callbacks.
  • Made the C logs less verbose
  • #203 AsyncClient::server_uri() getter.
  • #202 Fix disconnect timeout (from sec to ms)
2023-09-13 05:13:02
paho.mqtt.rust

Version 0.12.2

  • #209 Forwarding trace/log statements from the Paho C library to the Rust logs
  • Minor cleanup of subscriber examples.