summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2013-06-17 10:55:09 -0500
committerJason R. Coombs <jaraco@jaraco.com>2013-06-17 10:55:09 -0500
commit3c86c861ab9665df0e502f250a7471d09240e413 (patch)
tree23121b96edc44065c47332bcc19218b6120160d8
parent4d2396983ae8db3429a4e1a96f6112ef0c659422 (diff)
downloadpython-setuptools-git-3c86c861ab9665df0e502f250a7471d09240e413.tar.gz
Fix Python3 compatibility issue in filterfalse
--HG-- branch : distribute extra : rebase_source : 71e3e89efe6483924a07e7f9819ee86f08dbf1f2 extra : histedit_source : fa75c7bc174b248c74da7b4efd5f6f05c36b6ae4
-rw-r--r--setuptools/compat.py3
-rwxr-xr-xsetuptools/package_index.py4
2 files changed, 5 insertions, 2 deletions
diff --git a/setuptools/compat.py b/setuptools/compat.py
index 05417c6e..e2f64de2 100644
--- a/setuptools/compat.py
+++ b/setuptools/compat.py
@@ -1,4 +1,5 @@
import sys
+import itertools
if sys.version_info[0] < 3:
PY3 = False
@@ -30,6 +31,7 @@ if sys.version_info[0] < 3:
from urllib2 import urlopen, HTTPError, URLError, unquote, splituser
from urlparse import urlparse, urlunparse, urljoin
xrange = xrange
+ filterfalse = itertools.ifilterfalse
def exec_(code, globs=None, locs=None):
if globs is None:
@@ -72,6 +74,7 @@ else:
from urllib.request import urlopen, url2pathname
from urllib.parse import urlparse, urlunparse, unquote, splituser, urljoin
xrange = range
+ filterfalse = itertools.filterfalse
def execfile(fn, globs=None, locs=None):
if globs is None:
diff --git a/setuptools/package_index.py b/setuptools/package_index.py
index 85a1deeb..1e2a086d 100755
--- a/setuptools/package_index.py
+++ b/setuptools/package_index.py
@@ -1,6 +1,5 @@
"""PyPI and direct package downloading"""
import sys, os.path, re, shutil, random, socket
-import itertools
import base64
from pkg_resources import *
from distutils import log
@@ -9,6 +8,7 @@ from setuptools.compat import (urllib2, httplib, StringIO, HTTPError,
urlparse, urlunparse, unquote, splituser,
url2pathname, name2codepoint,
unichr, urljoin)
+from setuptools.compat import filterfalse
try:
from hashlib import md5
except ImportError:
@@ -148,7 +148,7 @@ def unique_everseen(iterable, key=None):
seen = set()
seen_add = seen.add
if key is None:
- for element in itertools.ifilterfalse(seen.__contains__, iterable):
+ for element in filterfalse(seen.__contains__, iterable):
seen_add(element)
yield element
else: