process.py problems

Justin Johnson justinjohnson at fastmail.fm
Wed Jul 9 14:36:28 CEST 2003


Never mind the part about commands hanging....  that appears to be
related to something else in my code.  I think your process stuff is
working fine for .exe commands.  :-)

So just the dir command is failing now.

On Wed, 09 Jul 2003 06:30:05 -0600, "Justin Johnson"
<justinjohnson at fastmail.fm> said:
> After replacing my process.py I still get an error with the dir command
> (see below).
> 
> I'm getting some wierd results with normal .exe commands though. 
> Commands that don't have much output come back just fine, but commands
> that have more output, even if they don't take long to run necessarily,
> seem to get stuck and just hang, never returning.
> 
> E:\ccase\python\uhg\uht>python
> ActivePython 2.2.2 Build 224 (ActiveState Corp.) based on
> Python 2.2.2 (#37, Nov 26 2002, 10:24:37) [MSC 32 bit (Intel)] on win32
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import process
> >>> p = process.ProcessOpen("dir")
> process: info:ProcessOpen.__init__(cmd='dir', mode='t', cwd=None,
> env=None)
> process.res: info:[11054544] ProcessOpen._start(): create child stdin:
> <_FileWra
> pper: file:None fd:3 os_handle:<PyHANDLE object at 0x00A8ACA4>>
> process.res: info:[11054544] ProcessOpen._start(): create child stdout:
> <_FileWr
> apper: file:None fd:4 os_handle:<PyHANDLE object at 0x00A8D6B4>>
> process.res: info:[11054544] ProcessOpen._start(): create child stderr:
> <_FileWr
> apper: file:None fd:5 os_handle:<PyHANDLE object at 0x00A8D694>>
> process: debug:_whichFirstArg: first='dir', rest=''
> Traceback (most recent call last):
>   File "<stdin>", line 1, in ?
>   File "process.py", line 1118, in __init__
>     self._startOnWindows()
>   File "process.py", line 1289, in _startOnWindows
>     cmd = _fixupCommand(cmd, self._env)
>   File "process.py", line 516, in _fixupCommand
>     cmd = _whichFirstArg(cmd, env)
>   File "process.py", line 325, in _whichFirstArg
>     candidate = which.which(first)
>   File "which.py", line 251, in which
>     raise WhichError("Could not find '%s' on the path." % command)
> which.WhichError: Could not find 'dir' on the path.
> >>>
> 
> >>> p = process.ProcessOpen("cleartool lsvob -l")
> process: info:ProcessOpen.__init__(cmd='cleartool lsvob -l', mode='t',
> cwd=None,
>  env=None)
> process.res: info:[18469440] ProcessOpen._start(): create child stdin:
> <_FileWra
> pper: file:None fd:3 os_handle:<PyHANDLE object at 0x01198B44>>
> process.res: info:[18469440] ProcessOpen._start(): create child stdout:
> <_FileWr
> apper: file:None fd:4 os_handle:<PyHANDLE object at 0x0119CA74>>
> process.res: info:[18469440] ProcessOpen._start(): create child stderr:
> <_FileWr
> apper: file:None fd:5 os_handle:<PyHANDLE object at 0x0119A9E4>>
> process: debug:_whichFirstArg: first='cleartool', rest='lsvob -l'
> process: debug:_SaferCreateProcess(appName=None,
>                     cmd='"C:\\Program
>                     Files\\Rational\\ClearCase\\bin\\cleartool
> .EXE" lsvob -l',
>                     env=None,
>                     cwd=None)
>     os.getcwd(): 'E:\\ccase\\python\\uhg\\uht'
> 
> process: info:_registerprocess(process=<process.ProcessOpen instance at
> 0x0119D2
> 40>)
> ***** It doesn't return here *****
> 
> 
> On Tue, 8 Jul 2003 17:01:32 -0700, "Trent Mick" <trentm at ActiveState.com>
> said:
> > 
> > Yup, process.py is expected a which.py <1.0. Crappy. I need to put up a
> > new process.py. To work around in it in your current build you need to
> > changes process.py's usages of which.which() to expect a single hit
> > instead of a list of a all hits. In other words, which.which() changed
> > from:
> >     >>> which.which("python")
> >     ["C:\\Python22\\python.exe", "C:\\Python21\\python.exe", ...]
> > to:
> >     >>> which.which("python")
> >     "C:\\Python22\\python.exe"
> > 
> > This is a little bit of a pain to do though. I have attached an untested
> > process.py that should have this fixed. I apologize for the informalness
> > of this. I'll try to get a new process.py version up on
> > <starship.python.net/~tmick> when I get a chance.
> > 
> > Cheers,
> > Trent
> > 
> > 
> > [Justin Johnson wrote]
> > > Thanks for the reply!
> > > 
> > > which 1.0.2
> > > 
> > > Here's the log output with the dir command
> > > -----------------------
> > > process.res: info:[18392288] ProcessOpen._start(): create child stdin:
> > > <_FileWra
> > > pper: file:None fd:3 os_handle:<PyHANDLE object at 0x0118C694>>
> > > process.res: info:[18392288] ProcessOpen._start(): create child stdout:
> > > <_FileWr
> > > apper: file:None fd:4 os_handle:<PyHANDLE object at 0x0118C674>>
> > > process.res: info:[18392288] ProcessOpen._start(): create child stderr:
> > > <_FileWr
> > > apper: file:None fd:5 os_handle:<PyHANDLE object at 0x0118C654>>
> > > process.res: info:[18392288] ProcessOpen.__del__()
> > > process: info:[18392288] ProcessOpen.close()
> > > process: info:[18392288] ProcessOpen: closing stdin (<_FileWrapper:
> > > file:None fd
> > > :3 os_handle:<PyHANDLE object at 0x0118C694>>).
> > > process: debug:[18400496] _FileWrapper.close()
> > > process: debug:[18400496] _FileWrapper.close: close handle
> > > process: debug:[18400496] _FileWrapper.close: closing handle raised
> > > process: debug:[18400496] _FileWrapper.close: done closing handle
> > > process: info:[18392288] ProcessOpen: closing stdout (<_FileWrapper:
> > > file:None f
> > > d:4 os_handle:<PyHANDLE object at 0x0118C674>>).
> > > process: debug:[18400720] _FileWrapper.close()
> > > process: debug:[18400720] _FileWrapper.close: close handle
> > > process: debug:[18400720] _FileWrapper.close: closing handle raised
> > > process: debug:[18400720] _FileWrapper.close: done closing handle
> > > process: info:[18392288] ProcessOpen: closing stderr (<_FileWrapper:
> > > file:None f
> > > d:5 os_handle:<PyHANDLE object at 0x0118C654>>).
> > > process: debug:[18403024] _FileWrapper.close()
> > > process: debug:[18403024] _FileWrapper.close: close handle
> > > process: debug:[18403024] _FileWrapper.close: closing handle raised
> > > process: debug:[18403024] _FileWrapper.close: done closing handle
> > > process: debug:[18400720] _FileWrapper.close()
> > > process: debug:[18400496] _FileWrapper.close()
> > > process: debug:[18403024] _FileWrapper.close()
> > > ----------------
> > > 
> > > I also get the following results running commands that are in my path...
> > > ------------------
> > > g`"apper: file:None fd:5 os_handle:<PyHANDLE object at 0x011D30A4>>
> > > process: debug:_SaferCreateProcess(appName=None,
> > >                     cmd='C lsview -s',
> > >                     env=None,
> > >                     cwd=None)
> > >     os.getcwd(): 'E:\\ccase\\python\\uhg\\uht'
> > > 
> > > process.res: info:[18680944] ProcessOpen.__del__()
> > > process: info:[18680944] ProcessOpen.close()
> > > process: info:[18680944] ProcessOpen: closing stdin (<_FileWrapper:
> > > file:None fd
> > > :3 os_handle:<PyHANDLE object at 0x011D4744>>).
> > > process: debug:[18696880] _FileWrapper.close()
> > > process: debug:[18696880] _FileWrapper.close: close handle
> > > process: debug:[18696880] _FileWrapper.close: closing handle raised
> > > process: debug:[18696880] _FileWrapper.close: done closing handle
> > > process: info:[18680944] ProcessOpen: closing stdout (<_FileWrapper:
> > > file:None f
> > > d:4 os_handle:<PyHANDLE object at 0x011D47C4>>).
> > > process: debug:[18696832] _FileWrapper.close()
> > > process: debug:[18696832] _FileWrapper.close: close handle
> > > process: debug:[18696832] _FileWrapper.close: closing handle raised
> > > process: debug:[18696832] _FileWrapper.close: done closing handle
> > > process: info:[18680944] ProcessOpen: closing stderr (<_FileWrapper:
> > > file:None f
> > > d:5 os_handle:<PyHANDLE object at 0x011D30A4>>).
> > > process: debug:[18699984] _FileWrapper.close()
> > > process: debug:[18699984] _FileWrapper.close: close handle
> > > process: debug:[18699984] _FileWrapper.close: closing handle raised
> > > process: debug:[18699984] _FileWrapper.close: done closing handle
> > > process: debug:[18696832] _FileWrapper.close()
> > > process: debug:[18696880] _FileWrapper.close()
> > > process: debug:[18699984] _FileWrapper.close()
> > > ---------
> > > 
> > > 
> > 
> > -- 
> > Trent Mick
> > TrentM at ActiveState.com
> 
> -- 
> http://mail.python.org/mailman/listinfo/python-list
> 





More information about the Python-list mailing list