Issue11751
Created on 2011-04-03 19:07 by jlove, last changed 2022-04-11 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| increase_distutils_filelist_test_coverage.patch | jlove, 2011-04-03 19:07 | review | ||
| increase_distutils_filelist_test_coverage_v2.patch | jlove, 2011-04-07 17:27 | -NO COVER; combine test_translate_pattern; more expressive test names | review | |
| distutils-filelist.diff | eric.araujo, 2011-06-03 16:04 | review | ||
| packaging-manifest.diff | eric.araujo, 2011-06-03 16:05 | review | ||
| packaging-manifest_v2.diff | jlove, 2011-09-24 01:27 | review | ||
| packaging-manifest_v3.diff | jlove, 2011-09-25 20:19 | review | ||
| distutils2-manifest.diff | eric.araujo, 2011-10-19 19:10 | |||
| Messages (23) | |||
|---|---|---|---|
| msg132869 - (view) | Author: Justin Love (jlove) | Date: 2011-04-03 19:07 | |
Increase test coverage of distutils/filelist.py from 49% to 100%. One line was marked as excluded because it was a "this cannot happen" error, and I agreed. |
|||
| msg132877 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-04-03 20:06 | |
Thanks for the patch! Please use the Distutils and/or Distutils2 component in the future so that some people are automatically notified of the report. I made a review (follow “review” link on the right of the diff file). |
|||
| msg133238 - (view) | Author: Justin Love (jlove) | Date: 2011-04-07 17:27 | |
Removed NO COVER Combined test_translate_pattern Added on to some test names to make them more descriptive |
|||
| msg133313 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-04-08 15:07 | |
FYI, I currently only have sporadic Internet access, moreover with SSH blocked, and I want to wait for the merge of distutils2 into the stdlib before I commit some fixes, so don’t worry if this sits for a while. |
|||
| msg137543 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-06-03 16:04 | |
Hi! I cleaned up your patch and fixed a bug: you have to call sort before calling remove_duplicates (the result in your patch had two 'a' entries). > One line was marked as excluded because it was a "this cannot happen" > error, and I agreed. How about we add a test to make this it cannot happen and then remove the line? I also ported it to packaging, the replacement for distutils; I get this failure: FAIL: test_process_template (__main__.ManifestTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "Lib/packaging/tests/test_manifest.py", line 166, in test_process_template action) AssertionError: PackagingTemplateError not raised by _process_template_line I haven’t investigated if the test is wrong or the code buggy yet; do you have any insight? |
|||
| msg144458 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-09-23 16:52 | |
Hi Justin, is there any way I can help you move forward with this? Please tell if you don’t have the time, I can work on completing the patch. |
|||
| msg144481 - (view) | Author: Justin Love (jlove) | Date: 2011-09-24 01:27 | |
Sorry, it's been sitting at the bottom of my starred list for months, the prospect of reloading context always making it a little less attractive than something else. I turned out I had to update to even have 'packaging' Error was caused by an actual change in behavior - I was testing the argument-check by providing an action with no argument. The new code assumes a single 'word' is a filename, and translates it to include, eg. 'include include' which then passes the parse. I modified the Manifest to test against the list of actions, since this makes it harder for users to make a mistake. Of course we could just drop the test, or only check multi-argument actions. |
|||
| msg144515 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-09-25 01:54 | |
> Sorry, it's been sitting at the bottom of my starred list for months, > the prospect of reloading context always making it a little less > attractive than something else. I understand that very well :) > Error was caused by an actual change in behavior Ah, good, I had missed that change. I’ll just adapt the test to check that one-word == include. I think I won’t add the Manifest._actions attribute as in your patch; it does not cost much to have the list once in manifest and another time in test_manifest. The only change I’ll make (or maybe you’d like to do it?) before committing is to add a test to make sure the line marked with “this cannot happen” really cannot happen. |
|||
| msg144530 - (view) | Author: Justin Love (jlove) | Date: 2011-09-25 20:19 | |
Incorporated some formatting suggestions. Removed _actions. Just as well, as I accidentally left in the 'blarg' bogus action ;^) Added a test for implicit-include. Whether 'this cannot happen' can happen depends on the output of _parse_template_line. If you wanted to remove the catch-all and still have test backup, you'd probably have to restort to some form of fuzz-testing _process_template_line. As the code stands now it could be removed. I left it alone as insurance against future changes. |
|||
| msg145412 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-10-12 16:32 | |
I made a few edits and committed to distutils and packaging. Then I ported the packaging patch to distutils2, which supports Python 2.4-2.7, and got this failure:
FAIL: test_glob_to_re (__main__.ManifestTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "distutils2/tests/test_manifest.py", line 88, in test_glob_to_re
self.assertEqual(_glob_to_re('foo*'), 'foo[^/]*\\Z(?ms)')
AssertionError: 'foo[^/]*$' != 'foo[^/]*\\Z(?ms)'
I haven’t dug into it yet.
|
|||
| msg145525 - (view) | Author: Roundup Robot (python-dev) ![]() |
Date: 2011-10-14 14:57 | |
New changeset 866d098367c1 by Éric Araujo in branch '3.2': Increase test coverage for distutils.filelist (#11751). http://hg.python.org/cpython/rev/866d098367c1 New changeset ba894d8a2a57 by Éric Araujo in branch 'default': Merge #11751 from 3.2 http://hg.python.org/cpython/rev/ba894d8a2a57 New changeset a30d4864a8e4 by Éric Araujo in branch 'default': Increase test coverage for packaging.manifest (#11751). http://hg.python.org/cpython/rev/a30d4864a8e4 |
|||
| msg145546 - (view) | Author: Roundup Robot (python-dev) ![]() |
Date: 2011-10-14 16:15 | |
New changeset 368134e10d09 by Éric Araujo in branch '2.7': Increase test coverage for distutils.filelist (#11751). http://hg.python.org/cpython/rev/368134e10d09 |
|||
| msg145882 - (view) | Author: Justin Love (jlove) | Date: 2011-10-19 00:21 | |
re: test_glob_to_re Could not reproduce (OS X 10.6) I built branch 2.7, and also tried the expressions from glob_to_re on my system 2.7 and 3.2, all returned the (?ms) version. |
|||
| msg145940 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-10-19 19:10 | |
Python 2.7 contains distutils, not distutils2. You’d have to clone hg.python.org/distutils2 and apply the patch I’m attaching. Thanks for the help! |
|||
| msg146143 - (view) | Author: Justin Love (jlove) | Date: 2011-10-21 22:05 | |
Still can't reproduce (though I got one failure and three other errors) $ patch -p 1 <distutils2-manifest.diff $ ../devinabox/cpython/python.exe runtests.py ... test_glob_to_re (distutils2.tests.test_manifest.ManifestTestCase) ... ok ... |
|||
| msg146207 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-10-23 00:31 | |
> Still can't reproduce It only shows in 2.4 and 2.5. > (though I got one failure and three other errors) If these are not covered in #13170, please add them to that report. |
|||
| msg146208 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-10-23 00:53 | |
I’ve found the reason: #6665. fnmatch.translate (used by _glob_to_re was changed to support filenames with embedded newlines. I don’t think it’s a concern for us: As the input we give to _glob_to_re comes one line at a time from a file, we just never have filenames with newlines. We can do one of these things for d2: - Special-case 2.4 and 2.5 in the tests. - Tweak _glob_to_re so that it changes the generated regex to match what we get in newer versions. - Tweak _glob_to_re to remove the inline flags, as we don’t need them. I think the last idea would be best. |
|||
| msg147595 - (view) | Author: Roundup Robot (python-dev) ![]() |
Date: 2011-11-14 14:24 | |
New changeset 3dda26cfc1d7 by Éric Araujo in branch 'default': Increase test coverage for manifest (#11751). http://hg.python.org/distutils2/rev/3dda26cfc1d7 |
|||
| msg147997 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-11-20 15:45 | |
Advice from Ezio Melotti: > I would keep the flags even if you don't need them > someone in the present or in the future might need them, and having them doesn't harm |
|||
| msg148037 - (view) | Author: Roundup Robot (python-dev) ![]() |
Date: 2011-11-21 13:21 | |
New changeset 723517bf6708 by Éric Araujo in branch 'default': Make test_manifest pass on 2.4 and 2.5 (fixes #11751). http://hg.python.org/distutils2/rev/723517bf6708 |
|||
| msg148041 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2011-11-21 13:47 | |
Did the second idea as suggested by Ezio. |
|||
| msg153181 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2012-02-12 05:47 | |
FYI the tests revealed a bug in the code on Windows: #13193 |
|||
| msg153623 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2012-02-18 01:46 | |
It was actually already known: #6884 (and then found again: #14004). |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:57:15 | admin | set | github: 55960 |
| 2012-02-18 01:46:26 | eric.araujo | set | messages: + msg153623 |
| 2012-02-12 05:47:18 | eric.araujo | set | messages: + msg153181 |
| 2011-11-21 13:47:45 | eric.araujo | set | status: open -> closed resolution: fixed messages: + msg148041 stage: patch review -> resolved |
| 2011-11-21 13:21:51 | python-dev | set | messages: + msg148037 |
| 2011-11-20 15:45:17 | eric.araujo | set | messages: + msg147997 |
| 2011-11-14 14:24:18 | python-dev | set | messages: + msg147595 |
| 2011-10-23 00:53:40 | eric.araujo | set | messages: + msg146208 |
| 2011-10-23 00:31:50 | eric.araujo | set | messages: + msg146207 |
| 2011-10-21 22:05:52 | jlove | set | messages: + msg146143 |
| 2011-10-19 19:10:53 | eric.araujo | set | files:
+ distutils2-manifest.diff messages: + msg145940 |
| 2011-10-19 00:21:41 | jlove | set | messages: + msg145882 |
| 2011-10-14 16:15:40 | python-dev | set | messages: + msg145546 |
| 2011-10-14 14:57:12 | python-dev | set | nosy:
+ python-dev messages: + msg145525 |
| 2011-10-12 16:32:06 | eric.araujo | set | messages: + msg145412 |
| 2011-09-25 20:19:27 | jlove | set | files:
+ packaging-manifest_v3.diff messages: + msg144530 |
| 2011-09-25 01:54:19 | eric.araujo | set | messages: + msg144515 |
| 2011-09-24 01:27:49 | jlove | set | files:
+ packaging-manifest_v2.diff messages: + msg144481 |
| 2011-09-23 16:52:54 | eric.araujo | set | messages: + msg144458 |
| 2011-06-03 16:05:05 | eric.araujo | set | files: + packaging-manifest.diff |
| 2011-06-03 16:04:54 | eric.araujo | set | files:
+ distutils-filelist.diff status: pending -> open versions: - Python 3.1 title: Increase distutils.filelist test coverage -> Increase distutils.filelist / packaging.manifest test coverage messages: + msg137543 |
| 2011-05-29 17:36:05 | eric.araujo | set | status: open -> pending |
| 2011-04-08 15:07:37 | eric.araujo | set | messages: + msg133313 |
| 2011-04-07 17:27:21 | jlove | set | files:
+ increase_distutils_filelist_test_coverage_v2.patch messages: + msg133238 |
| 2011-04-03 20:06:26 | eric.araujo | set | assignee: tarek -> eric.araujo components:
+ Distutils2 |
| 2011-04-03 19:43:48 | brett.cannon | set | assignee: tarek components:
+ Distutils, - Tests |
| 2011-04-03 19:20:03 | JoelLuellwitz | set | versions: + Python 3.3 |
| 2011-04-03 19:07:37 | jlove | create | |

