Python os.path.join inconsistency?

Andres Corrada-Emmanuel corrada@ciirsrv.cs.umass.edu
Mon Aug 30 20:00:00 GMT 2004


Hello,

I just ran across an inconsistency on the os.path module for Cygwin
Python, specifically os.path.join:

>>> import os.path
>>> os.path.join( 'c:/foo', 'c:/foo/bar' )
'c:foo/c:/foo/bar'
>>> os.path.join( '/cygdrive/c/foo', '/cygdrive/c/foo/bar' )
'/cygdrive/c/foo/bar'

The first incantation of os.path.join with Windows style paths violates
the documentation statement that os.path.join neglects previous paths once
it encounters an absolute path.

Does it not seem inconsistent that if Cygwin Python understands how to
execute:

file( 'c:/foo/bar' ) as well as file( '/cygdrive/c/foo/bar' )

it should also treat Windows style paths correctly with os.path.join? In
other words, it seems that Python on Cygwin cannot default to using
posixpath.py for os.path. It's got to be posixpath.py with some additional
magic to get it to do os.path.join correctly.

How does one go about submitting a patch for Cygwin Python?

Andres Corrada-Emmanuel
Senior Research Fellow
Information Extraction and Synthesis Laboratory
University of Massachusetts, Amherst


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list