This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2013年04月21日 05:37 by koobs, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| expanduser.log | koobs, 2013年04月21日 05:37 | |||
| test_posixpath.patch | koobs, 2013年05月05日 04:33 | |||
| test_posixpath_v2.diff | koobs, 2013年05月08日 08:39 | review | ||
| Messages (8) | |||
|---|---|---|---|
| msg187494 - (view) | Author: Kubilay Kocak (koobs) (Python triager) | Date: 2013年04月21日 05:37 | |
test_expanduser in test.test_posixpath.PosixPathTest fails when the users $HOME ends with "/" ====================================================================== FAIL: test_expanduser (test.test_posixpath.PosixPathTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/home/buildbot/python/3.x.koobs-freebsd/build/Lib/test/test_posixpath.py", line 264, in test_expanduser self.assertEqual(posixpath.expanduser("~"), home) AssertionError: '/usr/home/buildbot' != '/usr/home/buildbot/' - /usr/home/buildbot + /usr/home/buildbot/ ? + ---------------------------------------------------------------------- Test failures can be seen in the following FreeBSD 9-STABLE buildbots on all branches except 2.7: 3.x - http://buildbot.python.org/all/builders/AMD64%20FreeBSD%209.0%20dtrace%203.x/builds/1256/steps/test/logs/stdio 3.3 - http://buildbot.python.org/all/builders/AMD64%20FreeBSD%209.0%20dtrace%203.3/builds/546/steps/test/logs/stdio 3.2 - http://buildbot.python.org/all/builders/AMD64%20FreeBSD%209.0%20dtrace%203.2/builds/490/steps/test/logs/stdio It is also reproducible outside of the buildbot environment using fresh Python 3.3.1 sources with default build configuration (see attached expanduser.log) Commenting out Lib/test/test_posixpath.py#l264 results in the test passing |
|||
| msg187913 - (view) | Author: Kubilay Kocak (koobs) (Python triager) | Date: 2013年04月27日 15:45 | |
After some sleuthing with Ezio (thank you for the help) and some amateur debugging, all conditions in expanduser return the the home directory after stripping trailing slashes. The assertion in Lib/test/test_posixpath.py:264 compares expanduser(path) with a path obtained directly from pwd.getpwuidpw_dir "without" submitting it to the same treatment, and thus the test fails when $HOME ends in a "/". The assertion was added in f11da6cecffd (2011年03月17日) in order to show that expanduser() "does" infact derive a path from pw_dir, when $HOME is undefined, as the test indicates by deleting the environment variable In so far as using exact path equivalence to make that assertion, the 'home' variable in the test either ought to be subjected to the same treatment as paths derived via expanduser(), or the assertion relaxed to use assertIsNotNone. Given the comment in the test: "# expanduser should fall back to using the password database", my feeling is that the failure case is that no path is returned if a username is not provided in the path passed to expanduser, and as such assertIsNotNone is the more specific assertion, but I'll leave it in the hands of the experts to make the call. |
|||
| msg188426 - (view) | Author: Kubilay Kocak (koobs) (Python triager) | Date: 2013年05月05日 04:33 | |
The attached patch strips the trailing slash from the home directory obtained from pw_dir in test_expanduser ./python -m test -j3 test_posixpath [1/1] test_posixpath 1 test OK. Can someone take care of the commit please, and thank you again Ezio for the assistance |
|||
| msg188430 - (view) | Author: Kubilay Kocak (koobs) (Python triager) | Date: 2013年05月05日 06:37 | |
Thanks Antoine, I'm removing the 'Library' component on this one given the proposed resolution. Additionally, given the trivial nature and isolation of the change strictly to the test, I'd like to request this go into 3.2 as well. For any future security fixes to 3.2 until its EoL, having our buildbots 'green' is imperative and a prerequisite for identifying regressions |
|||
| msg188711 - (view) | Author: Kubilay Kocak (koobs) (Python triager) | Date: 2013年05月08日 08:39 | |
Spoil Ezio and learn me some python dev guide conventions, with an updated patch generated via hg diff, containing a comment, and including a bug #ID reference |
|||
| msg188716 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2013年05月08日 11:31 | |
Looks good to me. |
|||
| msg188768 - (view) | Author: Roundup Robot (python-dev) (Python triager) | Date: 2013年05月09日 12:25 | |
New changeset dee0a2dea11e by Ezio Melotti in branch '3.3': #17809: fix a test failure in test_expanduser when $HOME has a trailing /. Patch by Kubilay Kocak. http://hg.python.org/cpython/rev/dee0a2dea11e New changeset 489f075430de by Ezio Melotti in branch 'default': #17809: merge with 3.3. http://hg.python.org/cpython/rev/489f075430de |
|||
| msg188771 - (view) | Author: Ezio Melotti (ezio.melotti) * (Python committer) | Date: 2013年05月09日 12:27 | |
Fixed, thanks for the patch! |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:44 | admin | set | github: 62009 |
| 2013年05月09日 12:27:37 | ezio.melotti | set | status: open -> closed resolution: fixed messages: + msg188771 stage: commit review -> resolved |
| 2013年05月09日 12:25:24 | python-dev | set | nosy:
+ python-dev messages: + msg188768 |
| 2013年05月08日 11:31:59 | pitrou | set | nosy:
+ pitrou messages: + msg188716 stage: patch review -> commit review |
| 2013年05月08日 08:39:11 | koobs | set | files:
+ test_posixpath_v2.diff messages: + msg188711 |
| 2013年05月05日 06:37:11 | koobs | set | messages:
+ msg188430 components: - Library (Lib) |
| 2013年05月05日 06:24:39 | pitrou | set | assignee: ezio.melotti stage: patch review |
| 2013年05月05日 04:33:58 | koobs | set | files:
+ test_posixpath.patch keywords: + patch messages: + msg188426 |
| 2013年04月27日 15:57:23 | ezio.melotti | set | nosy:
+ ezio.melotti type: behavior versions: - Python 3.2, Python 3.5 |
| 2013年04月27日 15:45:11 | koobs | set | messages: + msg187913 |
| 2013年04月21日 05:37:29 | koobs | create | |