summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch')
-rw-r--r--dev-python/jaraco-collections/files/jaraco-collections-3.0.0-pypy.patch30
1 files changed, 30 insertions, 0 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 000000000000..63cee6cb4115
--- /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