Skip to content

v3.0.0-alpha.1

Pre-release
Pre-release

Choose a tag to compare

@empicano empicano released this 02 Apr 23:26
· 7 commits to main since this release
  • Replace paho-mqtt dependency with mqtt5
  • Drop support for MQTTv3.1 and MQTTv3.1.1
  • All Client parameters are now keyword-only
  • Messages are now mqtt5.PublishPacket instances instead of aiomqtt.Message
  • publish payload is now a positional bytes argument instead of keyword payload=
  • client.messages is now client.messages() (method call)
  • message.mid renamed to message.packet_id
  • message.properties replaced by individual attributes (e.g. message.content_type, message.user_properties)
  • Manual acknowledgment of QoS=1 and QoS=2 messages (no longer automatic)
  • packet_id parameter for QoS>0 publishes, enabling retries via client.packet_ids
  • Built-in reconnection with exponential backoff via reconnect=True
  • client.connected() and client.disconnected() awaitables for connection state
  • Flow control via receive_max
  • Unix domain socket support via unix_socket parameter
  • ssl_context replaces tls_context, tls_params, and tls_insecure
  • qos subscription parameter renamed to max_qos
  • ConnectError, ProtocolError, and NegativeAckError replace MqttError
  • Remove protocol, transport, proxy, socket_options, timeout, queue_type, max_queued_incoming_messages, max_queued_outgoing_messages parameters
  • Remove message.topic.matches() (see guides for routing with regular expressions)