Message ID | 20220823194732.701895-1-marcus.hoffmann@othermo.de |
---|---|
State | Superseded |
Headers | show |
Series | [1/2] package/python-paho-mqtt: bump to 1.6.1 to fix running on python 3.10 | expand |
On 23/08/2022 21:47, Marcus Hoffmann wrote: > Fixes the following error on calling mqtt.publish(): > > File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 222, in single > multiple([msg], hostname, port, client_id, keepalive, will, auth, tls, > File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 126, in multiple > if not isinstance(msgs, collections.Iterable): > AttributeError: module 'collections' has no attribute 'Iterable' > > This was actually changed in release 1.5.0 but 1.6.1 is alaready out for > almost a year, so we just update to that version. > > Changelog: > https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt Jumping from 1.4.0 to 1.6.1 at this point in the stabilisation month is not ideal... > Signed-off-by: Marcus Hoffmann <marcus.hoffmann@othermo.de> > --- > package/python-paho-mqtt/python-paho-mqtt.hash | 6 +++--- > package/python-paho-mqtt/python-paho-mqtt.mk | 4 ++-- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash b/package/python-paho-mqtt/python-paho-mqtt.hash > index bf3993e9195..56783e3fc08 100644 > --- a/package/python-paho-mqtt/python-paho-mqtt.hash > +++ b/package/python-paho-mqtt/python-paho-mqtt.hash > @@ -1,6 +1,6 @@ > -# md5 from https://pypi.python.org/pypi/paho-mqtt/json, sha256 locally computed > -md5 e3ac29cd5dc247a01083a2a8f3fddd08 paho-mqtt-1.4.0.tar.gz > -sha256 e440a052b46d222e184be3be38676378722072fcd4dfd2c8f509fb861a7b0b79 paho-mqtt-1.4.0.tar.gz > +# package hashes from from https://pypi.org/project/paho-mqtt/#copy-hash-modal-e8e8e0de-1aec-462d-8ae0-d858d4f5a0d7 > +md5 bdb20f88db291fdb4a0fe804c0f29316 paho-mqtt-1.6.1.tar.gz > +sha256 2a8291c81623aec00372b5a85558a372c747cbca8e9934dfe218638b8eefc26f paho-mqtt-1.6.1.tar.gz > sha256 76f13729e84e9222e543303df00f87d1b2c0995b6a505cd859a285667e44babb LICENSE.txt Unfortunately, the LICENSE hash changed, because in fact the license changed: @@ -1,3 +1,3 @@ -This project is dual licensed under the Eclipse Public License 1.0 and the -Eclipse Distribution License 1.0 as described in the epl-v10 and edl-v10 files. +This project is dual licensed under the Eclipse Public License 2.0 and the +Eclipse Distribution License 1.0 as described in the epl-v20 and edl-v10 files. And to top things up, epl-v20 is missing in the tarball... Could you check if there is a version that does have the epl-v20 file? Perhaps even from an upstream git repo? Regards, Arnout > sha256 e8cf7d54ea46c19aba793983889b7f7425e1ebfcaaccec764a7db091646e203c edl-v10 > sha256 3b9be6b894d0769de796e653571ff6cef494913c0ce78c35a97db939e7d9087c epl-v10 > diff --git a/package/python-paho-mqtt/python-paho-mqtt.mk b/package/python-paho-mqtt/python-paho-mqtt.mk > index d192749e1e1..892f5f33c74 100644 > --- a/package/python-paho-mqtt/python-paho-mqtt.mk > +++ b/package/python-paho-mqtt/python-paho-mqtt.mk > @@ -4,9 +4,9 @@ > # > ################################################################################ > > -PYTHON_PAHO_MQTT_VERSION = 1.4.0 > +PYTHON_PAHO_MQTT_VERSION = 1.6.1 > PYTHON_PAHO_MQTT_SOURCE = paho-mqtt-$(PYTHON_PAHO_MQTT_VERSION).tar.gz > -PYTHON_PAHO_MQTT_SITE = https://files.pythonhosted.org/packages/25/63/db25e62979c2a716a74950c9ed658dce431b5cb01fde29eb6cba9489a904 > +PYTHON_PAHO_MQTT_SITE = https://files.pythonhosted.org/packages/f8/dd/4b75dcba025f8647bc9862ac17299e0d7d12d3beadbf026d8c8d74215c12 > PYTHON_PAHO_MQTT_LICENSE = EPL-1.0 or EDLv1.0 > PYTHON_PAHO_MQTT_LICENSE_FILES = LICENSE.txt edl-v10 epl-v10 > PYTHON_PAHO_MQTT_SETUP_TYPE = setuptools
Hi Arnout, thanks for the review. On 24.08.22 22:48, Arnout Vandecappelle wrote: > > > On 23/08/2022 21:47, Marcus Hoffmann wrote: >> Fixes the following error on calling mqtt.publish(): >> >> File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line >> 222, in single >> multiple([msg], hostname, port, client_id, keepalive, will, auth, >> tls, >> File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line >> 126, in multiple >> if not isinstance(msgs, collections.Iterable): >> AttributeError: module 'collections' has no attribute 'Iterable' >> >> This was actually changed in release 1.5.0 but 1.6.1 is alaready out for >> almost a year, so we just update to that version. >> >> Changelog: >> https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt > > Jumping from 1.4.0 to 1.6.1 at this point in the stabilisation month > is not ideal... There's two other options I can think of, I wasn't sure what's best here: * backport https://github.com/eclipse/paho.mqtt.python/pull/497/files, that should be easy enough * Update to 1.5.1 (not 1.5.0 as I claimed above) which is the first release that includes the fix for the problem Do you have a preference for one of the two over updating to the latest release? (I.e. defer the 1.6.1 update to next) > >> Signed-off-by: Marcus Hoffmann <marcus.hoffmann@othermo.de> >> --- >> package/python-paho-mqtt/python-paho-mqtt.hash | 6 +++--- >> package/python-paho-mqtt/python-paho-mqtt.mk | 4 ++-- >> 2 files changed, 5 insertions(+), 5 deletions(-) >> >> diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash >> b/package/python-paho-mqtt/python-paho-mqtt.hash >> index bf3993e9195..56783e3fc08 100644 >> --- a/package/python-paho-mqtt/python-paho-mqtt.hash >> +++ b/package/python-paho-mqtt/python-paho-mqtt.hash >> @@ -1,6 +1,6 @@ >> -# md5 from https://pypi.python.org/pypi/paho-mqtt/json, sha256 >> locally computed >> -md5 e3ac29cd5dc247a01083a2a8f3fddd08 paho-mqtt-1.4.0.tar.gz >> -sha256 >> e440a052b46d222e184be3be38676378722072fcd4dfd2c8f509fb861a7b0b79 >> paho-mqtt-1.4.0.tar.gz >> +# package hashes from from >> https://pypi.org/project/paho-mqtt/#copy-hash-modal-e8e8e0de-1aec-462d-8ae0-d858d4f5a0d7 >> +md5 bdb20f88db291fdb4a0fe804c0f29316 paho-mqtt-1.6.1.tar.gz >> +sha256 >> 2a8291c81623aec00372b5a85558a372c747cbca8e9934dfe218638b8eefc26f >> paho-mqtt-1.6.1.tar.gz >> sha256 >> 76f13729e84e9222e543303df00f87d1b2c0995b6a505cd859a285667e44babb >> LICENSE.txt > > Unfortunately, the LICENSE hash changed, because in fact the license > changed: > @@ -1,3 +1,3 @@ > -This project is dual licensed under the Eclipse Public License 1.0 and the > -Eclipse Distribution License 1.0 as described in the epl-v10 and > edl-v10 files. > +This project is dual licensed under the Eclipse Public License 2.0 and the > +Eclipse Distribution License 1.0 as described in the epl-v20 and > edl-v10 files. > > And to top things up, epl-v20 is missing in the tarball... > > Could you check if there is a version that does have the epl-v20 file? > Perhaps even from an upstream git repo? Ah, I suppose those hashes are only checked on `legal-info` and not a normal build of the package? https://www.eclipse.org/paho/index.php?page=clients/python/index.php suggests installation via pypi/pip is the canonical way but offers from source installation as an alternative. https://github.com/eclipse/paho.mqtt.python and the github auto-generated tarball contain the epl-20 license file, should I change the source download to that? (I remember github auto-generated tarballs being problematic in the past because they might silently change. Does the buildroot project have a policy here?) > > Regards, > Arnout > [...] Best, Marcus
On 25/08/2022 12:40, Marcus Hoffmann wrote: > Hi Arnout, > thanks for the review. > > On 24.08.22 22:48, Arnout Vandecappelle wrote: >> >> >> On 23/08/2022 21:47, Marcus Hoffmann wrote: >>> Fixes the following error on calling mqtt.publish(): >>> >>> File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 222, >>> in single >>> multiple([msg], hostname, port, client_id, keepalive, will, auth, tls, >>> File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 126, >>> in multiple >>> if not isinstance(msgs, collections.Iterable): >>> AttributeError: module 'collections' has no attribute 'Iterable' >>> >>> This was actually changed in release 1.5.0 but 1.6.1 is alaready out for >>> almost a year, so we just update to that version. >>> >>> Changelog: >>> https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt >> >> Jumping from 1.4.0 to 1.6.1 at this point in the stabilisation month is not >> ideal... > > There's two other options I can think of, I wasn't sure what's best here: > > * backport https://github.com/eclipse/paho.mqtt.python/pull/497/files, that > should be easy enough > * Update to 1.5.1 (not 1.5.0 as I claimed above) which is the first release that > includes the fix for the problem > > Do you have a preference for one of the two over updating to the latest release? > (I.e. defer the 1.6.1 update to next) If you feel up to it, both is ideal: backport the fix for master and 2022.02.x, and do the bump for next. >>> Signed-off-by: Marcus Hoffmann <marcus.hoffmann@othermo.de> >>> --- >>> package/python-paho-mqtt/python-paho-mqtt.hash | 6 +++--- >>> package/python-paho-mqtt/python-paho-mqtt.mk | 4 ++-- >>> 2 files changed, 5 insertions(+), 5 deletions(-) >>> >>> diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash >>> b/package/python-paho-mqtt/python-paho-mqtt.hash >>> index bf3993e9195..56783e3fc08 100644 >>> --- a/package/python-paho-mqtt/python-paho-mqtt.hash >>> +++ b/package/python-paho-mqtt/python-paho-mqtt.hash >>> @@ -1,6 +1,6 @@ >>> -# md5 from https://pypi.python.org/pypi/paho-mqtt/json, sha256 locally computed >>> -md5 e3ac29cd5dc247a01083a2a8f3fddd08 paho-mqtt-1.4.0.tar.gz >>> -sha256 e440a052b46d222e184be3be38676378722072fcd4dfd2c8f509fb861a7b0b79 >>> paho-mqtt-1.4.0.tar.gz >>> +# package hashes from from >>> https://pypi.org/project/paho-mqtt/#copy-hash-modal-e8e8e0de-1aec-462d-8ae0-d858d4f5a0d7 >>> >>> +md5 bdb20f88db291fdb4a0fe804c0f29316 paho-mqtt-1.6.1.tar.gz >>> +sha256 2a8291c81623aec00372b5a85558a372c747cbca8e9934dfe218638b8eefc26f >>> paho-mqtt-1.6.1.tar.gz >>> sha256 76f13729e84e9222e543303df00f87d1b2c0995b6a505cd859a285667e44babb >>> LICENSE.txt >> >> Unfortunately, the LICENSE hash changed, because in fact the license changed: >> @@ -1,3 +1,3 @@ >> -This project is dual licensed under the Eclipse Public License 1.0 and the >> -Eclipse Distribution License 1.0 as described in the epl-v10 and edl-v10 files. >> +This project is dual licensed under the Eclipse Public License 2.0 and the >> +Eclipse Distribution License 1.0 as described in the epl-v20 and edl-v10 files. >> >> And to top things up, epl-v20 is missing in the tarball... >> >> Could you check if there is a version that does have the epl-v20 file? >> Perhaps even from an upstream git repo? > > Ah, I suppose those hashes are only checked on `legal-info` and not a normal > build of the package? Yes, I always do 'make foo-legal-info' on a version bump to check exactly this. > https://www.eclipse.org/paho/index.php?page=clients/python/index.php suggests > installation via pypi/pip is the canonical way but offers from source > installation as an alternative. > > https://github.com/eclipse/paho.mqtt.python and the github auto-generated > tarball contain the epl-20 license file, should I change the source download to > that? (I remember github auto-generated tarballs being problematic in the past > because they might silently change. Does the buildroot project have a policy here?) github autogenerated tarballs have been stable for the last 6 years or so. Please do use the github helper however. It's weird that the github tag does have the file, but the pip upload doesn't... Regards, Arnout > >> >> Regards, >> Arnout >> > > [...] > > Best, > Marcus
On 25.08.22 16:17, Arnout Vandecappelle wrote: [...] > > > github autogenerated tarballs have been stable for the last 6 years or > so. Please do use the github helper however. > > It's weird that the github tag does have the file, but the pip upload > doesn't... > In setuptools world everything to be packaged into the sdist (which is uploaded to pypi) needs to be manually specified: https://github.com/eclipse/paho.mqtt.python/blob/master/MANIFEST.in Seems like Fabrice also noticed already: https://github.com/eclipse/paho.mqtt.python/pull/635 Marcus
diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash b/package/python-paho-mqtt/python-paho-mqtt.hash index bf3993e9195..56783e3fc08 100644 --- a/package/python-paho-mqtt/python-paho-mqtt.hash +++ b/package/python-paho-mqtt/python-paho-mqtt.hash @@ -1,6 +1,6 @@ -# md5 from https://pypi.python.org/pypi/paho-mqtt/json, sha256 locally computed -md5 e3ac29cd5dc247a01083a2a8f3fddd08 paho-mqtt-1.4.0.tar.gz -sha256 e440a052b46d222e184be3be38676378722072fcd4dfd2c8f509fb861a7b0b79 paho-mqtt-1.4.0.tar.gz +# package hashes from from https://pypi.org/project/paho-mqtt/#copy-hash-modal-e8e8e0de-1aec-462d-8ae0-d858d4f5a0d7 +md5 bdb20f88db291fdb4a0fe804c0f29316 paho-mqtt-1.6.1.tar.gz +sha256 2a8291c81623aec00372b5a85558a372c747cbca8e9934dfe218638b8eefc26f paho-mqtt-1.6.1.tar.gz sha256 76f13729e84e9222e543303df00f87d1b2c0995b6a505cd859a285667e44babb LICENSE.txt sha256 e8cf7d54ea46c19aba793983889b7f7425e1ebfcaaccec764a7db091646e203c edl-v10 sha256 3b9be6b894d0769de796e653571ff6cef494913c0ce78c35a97db939e7d9087c epl-v10 diff --git a/package/python-paho-mqtt/python-paho-mqtt.mk b/package/python-paho-mqtt/python-paho-mqtt.mk index d192749e1e1..892f5f33c74 100644 --- a/package/python-paho-mqtt/python-paho-mqtt.mk +++ b/package/python-paho-mqtt/python-paho-mqtt.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PAHO_MQTT_VERSION = 1.4.0 +PYTHON_PAHO_MQTT_VERSION = 1.6.1 PYTHON_PAHO_MQTT_SOURCE = paho-mqtt-$(PYTHON_PAHO_MQTT_VERSION).tar.gz -PYTHON_PAHO_MQTT_SITE = https://files.pythonhosted.org/packages/25/63/db25e62979c2a716a74950c9ed658dce431b5cb01fde29eb6cba9489a904 +PYTHON_PAHO_MQTT_SITE = https://files.pythonhosted.org/packages/f8/dd/4b75dcba025f8647bc9862ac17299e0d7d12d3beadbf026d8c8d74215c12 PYTHON_PAHO_MQTT_LICENSE = EPL-1.0 or EDLv1.0 PYTHON_PAHO_MQTT_LICENSE_FILES = LICENSE.txt edl-v10 epl-v10 PYTHON_PAHO_MQTT_SETUP_TYPE = setuptools
Fixes the following error on calling mqtt.publish(): File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 222, in single multiple([msg], hostname, port, client_id, keepalive, will, auth, tls, File "/usr/lib/python3.10/site-packages/paho/mqtt/publish.py", line 126, in multiple if not isinstance(msgs, collections.Iterable): AttributeError: module 'collections' has no attribute 'Iterable' This was actually changed in release 1.5.0 but 1.6.1 is alaready out for almost a year, so we just update to that version. Changelog: https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt Signed-off-by: Marcus Hoffmann <marcus.hoffmann@othermo.de> --- package/python-paho-mqtt/python-paho-mqtt.hash | 6 +++--- package/python-paho-mqtt/python-paho-mqtt.mk | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-)