include $(TOPDIR)/rules.mk
PKG_NAME:=python-paho-mqtt
-PKG_VERSION:=1.6.1
-PKG_RELEASE:=2
+PKG_VERSION:=2.1.0
+PKG_RELEASE:=1
PKG_MAINTAINER:=Josef Schlehofer <pepe.schlehofer@gmail.com>, Alexandru Ardelean <ardeleanalex@gmail.com>
PKG_LICENSE:=EPL-2.0 Eclipse Distribution License v1.0
PKG_LICENSE_FILES:=epl-v20 edl-v10 LICENSE.txt
PYPI_NAME:=paho-mqtt
-PKG_HASH:=2a8291c81623aec00372b5a85558a372c747cbca8e9934dfe218638b8eefc26f
+PYPI_SOURCE_NAME:=paho_mqtt
+PKG_HASH:=12d6e7511d4137555a3f6ea167ae846af2c7357b10bc6fa4f7c3968fc1723834
+
+PKG_BUILD_DEPENDS:=python-hatchling/host
include ../pypi.mk
include $(INCLUDE_DIR)/package.mk
SUBMENU:=Python
TITLE:=MQTT version 5.0/3.1.1 client class
URL:=http://eclipse.org/paho
- DEPENDS:=+python3-light +python3-uuid
+ DEPENDS:=+python3-light +python3-uuid +python3-logging +python3-urllib
endef
define Package/python3-paho-mqtt/description
--- /dev/null
+#!/bin/sh
+[ "$1" = python3-paho-mqtt ] || exit 0
+
+python3 - << 'EOF'
+import paho.mqtt.client as mqtt
+
+# Verify version
+assert hasattr(mqtt, '__version__') or hasattr(mqtt.Client, '__module__')
+
+# Test basic client instantiation
+client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2)
+assert client is not None
+
+# Test that the client has expected methods
+assert callable(getattr(client, 'connect', None))
+assert callable(getattr(client, 'publish', None))
+assert callable(getattr(client, 'subscribe', None))
+assert callable(getattr(client, 'disconnect', None))
+
+# Test MQTTMessage
+msg = mqtt.MQTTMessage(topic=b'test/topic')
+msg.payload = b'hello'
+assert msg.topic == 'test/topic'
+assert msg.payload == b'hello'
+
+print("paho-mqtt OK")
+EOF