R. David Murray <rdmur...@bitdance.com> added the comment:

Well, it seems I was mistaken when I thought I knew how this worked :)
Checking the os.exec documentation linked from the subprocess page, I see that 
when an environment is supplied PATH is indeed checked in it.  The 
documentation for CreateProcess, however, indicates that PATH is ignored, and 
any extension must be supplied explicitly.

At the very least the docs should be updated to clarify that execvpe is used 
when an environment is passed on posix, and to link to the CreateProcess docs.  
A discussion of PATH could perhaps be put in a note or footnote (probably 
footnote, there are enough notes already in those docs!)

I'm not sure how one creates a good portability story out of these pieces.  It 
doesn't seem as though there is any way to harmonize the two, since we are 
dealing with the semantics of system calls over which we have no control.

For reference, here is (a?) link to CreateProcess docs that I found via Google:

http://msdn.microsoft.com/en-us/library/ms682425(VS.85).aspx

It doesn't look like the kind of link that one could trust to be stable, 
though, so I'm not sure if we should include it in the docs.

I'm adding Brian Curtin as nosy to see if he knows whether or not there are 
permalink-like links to the relevant Microsoft documentation that we could use.

----------
nosy: +brian.curtin
stage:  -> needs patch
title: subprocess PATH semantics -> subprocess PATH semantics and portability
versions: +Python 2.7, Python 3.1, Python 3.2

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue8557>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to