summaryrefslogtreecommitdiff
path: root/setuptools/__init__.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2014-03-21 22:46:59 -0400
committerJason R. Coombs <jaraco@jaraco.com>2014-03-21 22:46:59 -0400
commit8a4809f7c232a18d3192798c2e583726304efd4b (patch)
treefc4c37a00fd7f44634925641c1fc1c20e3b790b3 /setuptools/__init__.py
parent2b13fb2cdaf1bec24a36d874878505ba53272ff3 (diff)
downloadpython-setuptools-git-8a4809f7c232a18d3192798c2e583726304efd4b.tar.gz
Perform the inclusion filter after traversal for congruency with exclude
Diffstat (limited to 'setuptools/__init__.py')
-rw-r--r--setuptools/__init__.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/setuptools/__init__.py b/setuptools/__init__.py
index 8f0887c6..9d06d627 100644
--- a/setuptools/__init__.py
+++ b/setuptools/__init__.py
@@ -63,9 +63,10 @@ def find_packages(where='.', exclude=(), include=('*',)):
)
if looks_like_package:
pkg_name = prefix + name
- if any(fnmatchcase(pkg_name, pat) for pat in include):
- out.append(pkg_name)
- stack.append((fn, pkg_name + '.'))
+ out.append(pkg_name)
+ stack.append((fn, pkg_name + '.'))
+ for pat in include:
+ out = [item for item in out if fnmatchcase(item,pat)]
for pat in exclude:
out = [item for item in out if not fnmatchcase(item,pat)]
return out