aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2016-12-14 20:45:11 -0500
committerGitHub <noreply@github.com>2016-12-14 20:45:11 -0500
commiteabe1b5305d2335dcfa73193f8ef349cac28c448 (patch)
tree35225f0ffc4ae5489af300c7875de594fea48ef7
parent5c5d40c367a1d32fdb0379e5961abd659f67a01f (diff)
parentb92763bc598c489ea4e5c04dd9713bf7583fd546 (diff)
downloadexternal_python_setuptools-eabe1b5305d2335dcfa73193f8ef349cac28c448.tar.gz
external_python_setuptools-eabe1b5305d2335dcfa73193f8ef349cac28c448.tar.bz2
external_python_setuptools-eabe1b5305d2335dcfa73193f8ef349cac28c448.zip
Merge pull request #890 from timheap/revert-849
Revert #853 implicit wildcards in MANIFEST.in
-rw-r--r--CHANGES.rst14
-rwxr-xr-xsetuptools/command/egg_info.py4
-rw-r--r--setuptools/tests/test_manifest.py12
3 files changed, 15 insertions, 15 deletions
diff --git a/CHANGES.rst b/CHANGES.rst
index 7d6386c2..50c505a8 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,3 +1,11 @@
+In development
+--------------
+
+* #890: Revert #849. ``global-exclude .foo`` will not match all
+ ``*.foo`` files any more. Package authors must add an explicit
+ wildcard, such as ``global-exclude *.foo``, to match all
+ ``.foo`` files. See #886, #849.
+
v31.0.1
-------
@@ -132,7 +140,11 @@ v28.5.0
* #810: Tests are now invoked with tox and not setup.py test.
* #249 and #450 via #764: Avoid scanning the whole tree
- when building the manifest.
+ when building the manifest. Also fixes a long-standing bug
+ where patterns in ``MANIFEST.in`` had implicit wildcard
+ matching. This caused ``global-exclude .foo`` to exclude
+ all ``*.foo`` files, but also ``global-exclude bar.py`` to
+ exclude ``foo_bar.py``.
v28.4.0
-------
diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py
index 8a06e496..6f8fd874 100755
--- a/setuptools/command/egg_info.py
+++ b/setuptools/command/egg_info.py
@@ -457,7 +457,7 @@ class FileList(_FileList):
"""
if self.allfiles is None:
self.findall()
- match = translate_pattern(os.path.join('**', '*' + pattern))
+ match = translate_pattern(os.path.join('**', pattern))
found = [f for f in self.allfiles if match.match(f)]
self.extend(found)
return bool(found)
@@ -466,7 +466,7 @@ class FileList(_FileList):
"""
Exclude all files anywhere that match the pattern.
"""
- match = translate_pattern(os.path.join('**', '*' + pattern))
+ match = translate_pattern(os.path.join('**', pattern))
return self._remove_files(match.match)
def append(self, item):
diff --git a/setuptools/tests/test_manifest.py b/setuptools/tests/test_manifest.py
index 62b6d708..602c43a2 100644
--- a/setuptools/tests/test_manifest.py
+++ b/setuptools/tests/test_manifest.py
@@ -449,11 +449,6 @@ class TestFileListTest(TempDirTestCase):
assert file_list.files == ['a.py', l('d/c.py')]
self.assertWarnings()
- file_list.process_template_line('global-include .txt')
- file_list.sort()
- assert file_list.files == ['a.py', 'b.txt', l('d/c.py')]
- self.assertNoWarnings()
-
def test_global_exclude(self):
l = make_local_path
# global-exclude
@@ -470,13 +465,6 @@ class TestFileListTest(TempDirTestCase):
assert file_list.files == ['b.txt']
self.assertWarnings()
- file_list = FileList()
- file_list.files = ['a.py', 'b.txt', l('d/c.pyc'), 'e.pyo']
- file_list.process_template_line('global-exclude .py[co]')
- file_list.sort()
- assert file_list.files == ['a.py', 'b.txt']
- self.assertNoWarnings()
-
def test_recursive_include(self):
l = make_local_path
# recursive-include