Starting a new thread, but in due course we should keep Fare's most recent words from previous thread in mind for expanding the test suite for uiop:run-program:
Fare wrote:
Ideally there would a test that includes all printable ASCII
characters and ensures that quoting works alright, with either a list
or string argument (beware quoting when generating the string).
Anyway, here is what I'm seeing currently (with an unpatched 3.0.2.7):
Allegro 9.0:
=========
Running the test script from cygwin brings up an Allegro CL Console which immediately displays the following error:
====
An unhandled error occurred during initialization:
An error occurred
(Attempt to take the value of the unbound variable
`|"TEST/SCRIPT-SUPPORT.LISP"|'.)
during
the reading or evaluation of -e "(or #.(load \\\"test/script-support.lisp\\\") #.(asdf-test::compile-asdf-script))"
<The Lisp process exited with status -1 (0xffffffff)>
====
So the -e argument is not making it properly into the Allegro, and it looks like something has to be updated in the test script just to get Allegro/Windows to start running the tests. Would anyone from Franz Support care to have a look at this?
I did confirm that normal programs can be run with Allegro's excl:run-shell-command without the need for "cmd /c" prepended.
CCL 1.9
=======
asdf test results for (unpatched) 3.0.2.7 are here:
Note that the first failure, for the bundle-test, is a known bug in ccl:fasl-concatenate in CCL 1.9 for Windows, and has been fixed in the trunk for CCL 1.10.
The second failure just looks like the extra space after the "ok 1" as we were seeing before. Perhaps this is also a CCL issue? Can anyone from Clozure comment on this?
Also, I think I confirmed that CCL's ccl:run-program on Windows really does need the "cmd /c " prepended to be able to run a normal program. Currently the uiop:run-program is doing
(cons "cmd" (strcat "/c " command))
for commands given as a single string, but it does not prepend anything for commands given as a list. There was previous opinion that the list form of the command should not automatically get the ("cmd" "c/") prepended. But from what I can tell, the user will always have to do
(uiop:run-program (append '("cmd" "/c") command)
if user wants to give command as a list. If that's the case, then for consistent interface of uiop:run-program across different Lisps, shouldn't uiop:run-program go ahead and do that appending by default?
SBCL
=====
Sorry, I'm not running SBCL on Windows at the moment. Anyone? Get with me if you can use some guidance getting the ASDF test scripts running.
LispWorks
========
I don't have LWW at this juncture. Anyone?
ABCL, ECL, CLISP, GCL (who am I forgetting?)
======================================
Anyone running these on Windows and willing to run some ASDF testing scripts (probably through cygwin)? Get with me if you want some guidance and/or moral support.