From e1c45570f61f9d6b28f8604c8a8cd6dd94f959ed Mon Sep 17 00:00:00 2001 From: Brishen Hawkins Date: Tue, 9 Jun 2020 00:18:39 -0600 Subject: [PATCH] Fix for Python 3.9 moving Iterable to collections.abc Signed-off-by: Brishen Hawkins Backported from: e1c45570f61f9d6b28f8604c8a8cd6dd94f959ed Signed-off-by: Marcus Hoffmann --- src/paho/mqtt/publish.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/paho/mqtt/publish.py b/src/paho/mqtt/publish.py index f9f1986e..dcb34ff1 100644 --- a/src/paho/mqtt/publish.py +++ b/src/paho/mqtt/publish.py @@ -21,6 +21,10 @@ from __future__ import absolute_import import collections +try: + from collections.abc import Iterable +except ImportError: + from collections import Iterable from . import client as paho from .. import mqtt @@ -124,7 +128,7 @@ def multiple(msgs, hostname="localhost", port=1883, client_id="", keepalive=60, proxy_args: a dictionary that will be given to the client. """ - if not isinstance(msgs, collections.Iterable): + if not isinstance(msgs, Iterable): raise TypeError('msgs must be an iterable') client = paho.Client(client_id=client_id, userdata=collections.deque(msgs),