summaryrefslogtreecommitdiffstats
path: root/meta-python/recipes-devtools/python/python3-paho-mqtt_1.6.1.bb
Commit message (Collapse)AuthorAgeFilesLines
* python3-paho-mqtt: Upgrade 1.6.1 -> 2.0.0Leon Anavi2024-03-251-33/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade to version 2.0.0: - **BREAKING** Added callback_api_version. This break *ALL* users of paho-mqtt Client class. See migrations.md for details on how to upgrade. tl; dr; add CallbackAPIVersion.VERSION1 to first argument of Client() - **BREAKING** Drop support for Python 2.7, Python 3.5 and Python 3.6. Minimum tested version is Python 3.7. Python version up to Python 3.12 are tested. - **BREAKING** connect_srv changed it signature to take an additional bind_port parameter. This is a breaking change, but in previous version connect_srv was broken anyway. - **BREAKING** Remove some deprecated argument and method: * ``max_packets`` argument in loop(), loop_write() and loop_forever() is removed * ``force`` argument in loop_stop() is removed * method ``message_retry_set()`` is removed - **BREAKING** Remove the base62, WebsocketWrapper and ConnectionState, as user shouldn't directly use them. - Possible breaking change: Add properties to access most Client attribute. Since this add new properties like `logger`, if a sub-class defined `logger`, the two `logger` will conflict. - Add version 2 of user-callback which allow to access MQTTv5 reason code & properties that were missing from on_publish callback. Also it's more consistent in parameter order or between MQTTv3 and MQTTv5. - Add types to Client class, which caused few change which should be compatible. Known risk of breaking changes: - Use enum for returned error code (like MQTT_ERR_SUCCESS). It use an IntEnum which should be a drop-in replacement. Excepted if someone is doing "rc is 0" instead of "rc == 0". - reason in on_connect callback when using MQTTv5 is now always a ReasonCode object. It used to possibly be an integer with the value 132. - MQTTMessage field "dup" and "retain" used to be integer with value 0 and 1. They are now boolean. - Add support for ALPN protocols on TLS connection. - Add on_pre_connect() callback, which is called immediately before a connection attempt is made. - Fix subscribe.simple with MQTTv5. - Use better name for thread started by loop_start. - Fix possible bug during disconnection where self._sock is unexpectedly None. - Fix loading too weak TLS CA file but setting allowed ciphers before loading CA. - Allow to manually ack QoS > 0 messages. - Improve tests & linters. Modernize build (drop setup.py, use pyproject.toml) - Fix is_connected property to correctly return False when connection is lost and loop_start/loop_forever isn't used. - Fix wait_for_publish that could hang with QoS == 0 message on reconnection or publish during connection. - Correctly mark connection as broken on SSL error and don't crash loop_forever. - Fix handling of MQTT v5.0 PUBREL messages with remaining length not equal to 2. - Raise error on ``subscribe()`` when `topic` is an empty list. - Raise error on `publish.multiple()` when ``msgs`` is an empty list. - Don't add port to Host: header for websockets connections when the port if the default port. Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-python: drop ${PYTHON_PN}Tim Orling2024-02-191-7/+7
| | | | | | | python 2 is long unsupported, so we no longer need this variable. Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* python3-paho-mqtt: Upgrade 1.5.1 -> 1.6.1Leon Anavi2021-10-281-0/+33
Upgrade to release 1.6.1: - Fix Python 2.7 compatilibity. - Changed default TLS version to 1.2 instead of 1.0. - Fix incoming MQTT v5 messages with overall property length > 127 bytes being incorrectly decoded. Closes #541. - MQTTMessageInfo.wait_for_publish() and MQTTMessageInfo.is_published() will now raise exceptions if called when the publish call produced an error. - Remove periodic retry checks for outgoing messages with QoS>0. This means that outgoing messages will only be retried on the client reconnecting to the server. They will *not* be retried when the client is still connected. - The `rc` parameter in the `on_disconnect` callback now has meaningful values in the case of an error. - Callbacks can now be applied to client instances using decorators. - PUBACK messages are now sent to the broker only after the on_message callback has returned. - Raise exceptions when attempting to set MQTT v5 properties to forbidden values. - Callbacks can now be updated from within a callback. - Remove _out_packet_mutex and _current_out_packet_mutex and convert the _out_packet queue use to thread safe. - Add basic MQTT v5 support to the subscribe and publish helper functions. - Fix on_disconnect() sometimes calling the MQTT v3.x callback when it should call the MQTT v5 callback. - Big performance improvement when receiving large payloads, particularly for SSL. - Fix connecting with MQTT v5 to a broker that doesn't support MQTT v5. - Removed ancient Mosquitto compatibility class. - Fix exception on calling Client(client_id="", clean_session=False). - Experimental support for Websockets continuation frames. - `Properties.json()` now converts Correlation Data bytes() objects to hex. - Only use the internal sockpair wakeup when running with loop_start() or loop(). This removes problems when running with an external event loop. - Drain all of sockpairR bytes to avoid unnecessary wakeups and possible timeouts. - Add timeout to MQTTMessageInfo:wait_for_publish(). License-Update: Update to EPL-2.0 Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>