Terry J. Reedy <[email protected]> added the comment:
A bug for tracker purposes is a discrepancy between doc and code. That can be
fixed in current versions. A design change is a feature request and can only go
in future versions. A deprecation warning for one cycle is desirable when
appropriate.
"os.path.isabs(path)
Return True if path is an absolute pathname. On Unix, that means it begins with
a slash, on Windows that it begins with a (back)slash after chopping off a
potential drive letter."
>From what you report, the code does just that, so there is no bug.
Breaking code just because you do not like the current definition is very
unlikely to be accepted.
Adding a .isrelative(path) that seems to be equivalent to 'not .ispath' is
unlikely to accepted. People who care about the presence of a drive letter can
write "path[1]==':'"
"os.path.join(path1[, path2[, ...]])
Join one or more path components intelligently. If any component is an absolute
path, all previous components (on Windows, including the previous drive letter,
if there was one) are thrown away, and joining continues."
>>> import os
>>> os.path.join('foo', 'a:bar')
'foo\\a:bar'
Producing a non-path does not seem intelligent, so I agree that this a bug. I
am not sure what this should produce. 'foo/bar', 'a:foo/bar', and raising an
exception would be candidates. All would be better than the current useless
return. In any case, a bug fix patch can only fix bugs and should not be
intermixed with feature patches.
As to the second sentence: your proposal to change documented and inplemented
semantics is, again, a feature request, not a bug fix.
If you want to continue with your feature requests, you can if you wish
reclassify this issue, retitle again, and open a new behavior issue for the
path bug and upload a bugfix-only patch. Before or along with doing so, I would
suggest discussion on the python-ideas list.
----------
nosy: +terry.reedy -BreamoreBoy
title: Change (fix!) os.path.isabs() semantics on Win32 -> Fix bug in
os.path.join
versions: +Python 3.3 -Python 2.6, Python 3.1
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue1669539>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com