dev-python/jaraco-collections-3.0.0: add pypy3
authorPatrick McLean <patrick.mclean@sony.com>
Thu, 26 Mar 2020 21:32:22 +0000 (14:32 -0700)
committerPatrick McLean <chutzpah@gentoo.org>
Thu, 26 Mar 2020 22:39:03 +0000 (15:39 -0700)
Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-2.3.96, Repoman-2.3.21
Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch [new file with mode: 0644]
dev-python/jaraco-collections/jaraco-collections-3.0.0.ebuild

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 (file)
index 0000000..63cee6c
--- /dev/null
@@ -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
index 24a897750d90ee6b854e3b3c8666c8b08a2dadc9..e89935b5b5cd41084507d94c3fcfdaf60fde2ce9 100644 (file)
@@ -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" \