commit:     273243fabe44d56cf846f19ce37689d87a8f8bec
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 17 08:47:45 2017 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Fri Mar 17 08:51:55 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=273243fa

dev-python/kombu: Add python3_6 to PYTHON_COMPAT

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 dev-python/kombu/files/kombu-4.0.2-dict-iter.patch | 24 ++++++++++++++++++++++
 dev-python/kombu/kombu-4.0.2.ebuild                |  6 +++++-
 2 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/dev-python/kombu/files/kombu-4.0.2-dict-iter.patch 
b/dev-python/kombu/files/kombu-4.0.2-dict-iter.patch
new file mode 100644
index 00000000000..fa3e545c627
--- /dev/null
+++ b/dev-python/kombu/files/kombu-4.0.2-dict-iter.patch
@@ -0,0 +1,24 @@
+From 2940a4b1830bc2fc6d3f65de4feeec6ea5a49fe5 Mon Sep 17 00:00:00 2001
+From: Felix Yan <[email protected]>
+Date: Tue, 21 Feb 2017 11:52:18 -0600
+Subject: [PATCH] Don't modify dict size while iterating over it (#676)
+
+This fixes https://github.com/celery/kombu/issues/675.
+---
+ kombu/messaging.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/kombu/messaging.py b/kombu/messaging.py
+index 03e7e15..e1800b5 100644
+--- a/kombu/messaging.py
++++ b/kombu/messaging.py
+@@ -397,7 +397,8 @@ def revive(self, channel):
+         """Revive consumer after connection loss."""
+         self._active_tags.clear()
+         channel = self.channel = maybe_channel(channel)
+-        for qname, queue in items(self._queues):
++        # modify dict size while iterating over it is not allowed
++        for qname, queue in list(items(self._queues)):
+             # name may have changed after declare
+             self._queues.pop(qname, None)
+             queue = self._queues[queue.name] = queue(self.channel)

diff --git a/dev-python/kombu/kombu-4.0.2.ebuild 
b/dev-python/kombu/kombu-4.0.2.ebuild
index 0c15fca926a..b5d030da527 100644
--- a/dev-python/kombu/kombu-4.0.2.ebuild
+++ b/dev-python/kombu/kombu-4.0.2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
 
 inherit distutils-r1
 
@@ -44,6 +44,10 @@ DEPEND="${RDEPEND}
 # Req'd for test phase
 DISTUTILS_IN_SOURCE_BUILD=1
 
+PATCHES=(
+       "${FILESDIR}"/${P}-dict-iter.patch
+       )
+
 python_prepare_all() {
        # AttributeError: test_Etcd instance has no attribute 'patch'
        rm t/unit/transport/test_etcd.py || die

Reply via email to