Terry J. Reedy <tjre...@udel.edu> 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 <rep...@bugs.python.org>
<http://bugs.python.org/issue1669539>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to