Message10251

Author adamburke
Recipients adamburke
Date 2015-09-13.01:57:01
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1442109423.49.0.105819070778.issue2396@psf.upfronthosting.co.za>
In-reply-to
Content
Invoking the regression test from cygwin using the jython script results in some failures, eg


======================================================================
ERROR: test_finalize_with_trace (test.test_threading.ThreadTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\cygwin64\home\Adam\jython\dist\Lib\test\test_threading.py", line 314, in test_finalize_with_trace
    p = subprocess.Popen([sys.executable, "-c", """if 1:
  File "C:\cygwin64\home\Adam\jython\dist\Lib\subprocess.py", line 830, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\cygwin64\home\Adam\jython\dist\Lib\subprocess.py", line 1352, in _execute_child
    raise OSError(e.getMessage() or e)
OSError: Cannot run program "C:\cygwin64\home\Adam\jython\dist\bin\jython" (in directory "C:\cygwin64\home\Adam\jython"): CreateProcess error=193, %1 is not a valid Win32 application

======================================================================
ERROR: test_join_nondaemon_on_shutdown (test.test_threading.ThreadTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\cygwin64\home\Adam\jython\dist\Lib\test\test_threading.py", line 348, in test_join_nondaemon_on_shutdown
    p = subprocess.Popen([sys.executable, "-c", """if 1:
  File "C:\cygwin64\home\Adam\jython\dist\Lib\subprocess.py", line 830, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\cygwin64\home\Adam\jython\dist\Lib\subprocess.py", line 1352, in _execute_child
    raise OSError(e.getMessage() or e)
OSError: Cannot run program "C:\cygwin64\home\Adam\jython\dist\bin\jython" (in directory "C:\cygwin64\home\Adam\jython"): CreateProcess error=193, %1 is not a valid Win32 application

Invoking using jython.exe directly, even from cygwin, runs fine. 

Digging around a bit, it seems to be because shell invocation uses the property python.executable in PySystemState.initExecutable() rather than Py.getDefaultExecutable(). Py.getDefaultExecutable() has some platform checking that resolves this by looking explicitly for jython.exe under windows.
History
Date User Action Args
2015-09-13 01:57:03adamburkesetrecipients: + adamburke
2015-09-13 01:57:03adamburkesetmessageid: <1442109423.49.0.105819070778.issue2396@psf.upfronthosting.co.za>
2015-09-13 01:57:03adamburkelinkissue2396 messages
2015-09-13 01:57:01adamburkecreate