summaryrefslogtreecommitdiff
path: root/setuptools/command/build_py.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2021-05-22 19:19:05 -0400
committerJason R. Coombs <jaraco@jaraco.com>2021-05-22 19:19:05 -0400
commit9c2cf25a13bf33a3fd706c97064c0d2fa22be179 (patch)
treec304c7604a18029b4fdff76f97a38b9bbdd6edf0 /setuptools/command/build_py.py
parent28f4890f20704e8aa0248843fef703883bdea544 (diff)
downloadpython-setuptools-git-9c2cf25a13bf33a3fd706c97064c0d2fa22be179.tar.gz
Use unique_everseen from more_itertools.
Diffstat (limited to 'setuptools/command/build_py.py')
-rw-r--r--setuptools/command/build_py.py22
1 files changed, 2 insertions, 20 deletions
diff --git a/setuptools/command/build_py.py b/setuptools/command/build_py.py
index b30aa129..df6fd323 100644
--- a/setuptools/command/build_py.py
+++ b/setuptools/command/build_py.py
@@ -8,6 +8,7 @@ import io
import distutils.errors
import itertools
import stat
+from setuptools.extern.more_itertools import unique_everseen
try:
from setuptools.lib2to3_ex import Mixin2to3
@@ -214,7 +215,7 @@ class build_py(orig.build_py, Mixin2to3):
if fn not in bad
)
# ditch dupes
- return list(_unique_everseen(keepers))
+ return list(unique_everseen(keepers))
@staticmethod
def _get_platform_patterns(spec, package, src_dir):
@@ -235,25 +236,6 @@ class build_py(orig.build_py, Mixin2to3):
)
-# from Python docs
-def _unique_everseen(iterable, key=None):
- "List unique elements, preserving order. Remember all elements ever seen."
- # unique_everseen('AAAABBBCCDAABBB') --> A B C D
- # unique_everseen('ABBCcAD', str.lower) --> A B C D
- seen = set()
- seen_add = seen.add
- if key is None:
- for element in itertools.filterfalse(seen.__contains__, iterable):
- seen_add(element)
- yield element
- else:
- for element in iterable:
- k = key(element)
- if k not in seen:
- seen_add(k)
- yield element
-
-
def assert_relative(path):
if not os.path.isabs(path):
return path