Gentoo Archives: gentoo-commits

From: Patrick McLean <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/jaraco-collections/, dev-python/jaraco-collections/files/
Date: Thu, 26 Mar 2020 22:39:20
Message-Id: 1585262343.56b7b2d4280e07a09e2d0547eb18330ea159d7a6.chutzpah@gentoo
commit:     56b7b2d4280e07a09e2d0547eb18330ea159d7a6
Author:     Patrick McLean <patrick.mclean <AT> sony <DOT> com>
AuthorDate: Thu Mar 26 21:32:22 2020 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Thu Mar 26 22:39:03 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56b7b2d4

dev-python/jaraco-collections-3.0.0: add pypy3

Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-2.3.96, Repoman-2.3.21
Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 .../files/jaraco-collections-3.0.0-pypy.patch      | 30 ++++++++++++++++++++++
 .../jaraco-collections-3.0.0.ebuild                |  9 +++++--
 2 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch b/dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch
new file mode 100644
index 00000000000..63cee6cb411
--- /dev/null
+++ b/dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch
@@ -0,0 +1,30 @@
+diff --git a/jaraco/collections.py b/jaraco/collections.py
+index 3ab9dc9..6a6e342 100644
+--- a/jaraco/collections.py
++++ b/jaraco/collections.py
+@@ -4,6 +4,7 @@ import collections.abc
+ import itertools
+ import copy
+ import functools
++import platform
+ 
+ from jaraco.classes.properties import NonDataProperty
+ import jaraco.text
+@@ -592,9 +593,14 @@ class DictStack(list, collections.abc.Mapping):
+         return list(set(itertools.chain.from_iterable(c.keys() for c in self)))
+ 
+     def __getitem__(self, key):
+-        for scope in reversed(self):
+-            if key in scope:
+-                return scope[key]
++        if 'PyPy' in platform.python_implementation():
++            for scope in reversed(list(self)):
++                if key in scope:
++                    return scope[key]
++        else:
++            for scope in reversed(self):
++                if key in scope:
++                    return scope[key]
+         raise KeyError(key)
+ 
+     push = list.append

diff --git a/dev-python/jaraco-collections/jaraco-collections-3.0.0.ebuild b/dev-python/jaraco-collections/jaraco-collections-3.0.0.ebuild
index 24a897750d9..e89935b5b5c 100644
--- a/dev-python/jaraco-collections/jaraco-collections-3.0.0.ebuild
+++ b/dev-python/jaraco-collections/jaraco-collections-3.0.0.ebuild
@@ -33,11 +33,16 @@ BDEPEND="
 		>=dev-python/pytest-2.8[${PYTHON_USEDEP}]
 	)
 "
-distutils_enable_sphinx docs '>=dev-python/jaraco-packaging-3.2' \
-	'>=dev-python/rst-linker-1.9'
 
 S="${WORKDIR}/${MY_PN}-${PV}"
 
+PATCHES=(
+	"${FILESDIR}/jaraco-collections-3.0.0-pypy.patch"
+)
+
+distutils_enable_sphinx docs '>=dev-python/jaraco-packaging-3.2' \
+	'>=dev-python/rst-linker-1.9'
+
 python_test() {
 	# Override pytest options to skip flake8
 	PYTHONPATH=. pytest -vv --override-ini="addopts=--doctest-modules" \