FYI It looks like some more command line escaping tweaks are needed for LWW.
I'm on an outing today and will be able to run tests tonight with the latest commit.
---------- Forwarded message ---------- From: *Fabrice Popineau* Date: Sunday, October 20, 2013 Subject: ASDF testing for LWW To: Dave Cooper david.cooper@genworks.com
The test suite fails by me with LWW : here at ligne 91 of run-tests.sh if DO $bcmd $eval "'(#.(load(string'|script-support.lisp|))#.(asdf-test::load-asdf)#.(asdf-test::frob-packages)#.(asdf-test::with-test()(load(string'|$i|))))" ; then
$ ./run1 make[1]: Entering directory `/c/temp/asdf-test/asdf-windows' PWD=/c/temp/asdf-test/asdf-windows/test !C:=C:\Temp\asdf-test ASDF_TEST_LISPS=lispworks OLDPWD=/c/temp/asdf-test/asdf-windows /c/Local/Lispworks/lw-console.exe -siteinit - -init - -eval "(or #.(load(string\ `|test/script-support.lisp|))#.(asdf-test::compile-asdf-script))" LispWorks(R) (for the Windows(R) operating system) Copyright (C) 1987-2012 LispWorks Ltd. All rights reserved. Version 6.1.1 Saved by Fabrice as lw-console, at 20 Oct 2013 11:59 User Fabrice on ALIMANTADO
Error: The file "testscript-support.lisp" does not exist. 1 (continue) Try loading testscript-support.lisp again. 2 Give up loading testscript-support.lisp. 3 Try loading another file instead of testscript-support.lisp. 4 (abort) Abort initialization. 5 Continue to top-level loop.
I'm not that familiar with path syntax in CL (I'm using it at its minimum and always checking) so why is there this (string`|path|) ? Case-sensitivity ? Or ?
Fabrice
2013/10/20 Dave Cooper <david.cooper@genworks.com <javascript:_e({}, 'cvml', 'david.cooper@genworks.com');>>
Have you been waiting for the noise to settle down on asdf-devel? I think it's safe to go ahead and try the tests on LWW now.
I've attached a "run" script which should be pretty much ready to go for LWW, all you have to do is fill in your lwconsole.exe location where it says:
"Fill in for location of your LWW console exe:"
You have to have "make" and "rsync" installed in your MSYS (or cygwin) (rsync is probably not strictly necessary; for running on a single OS you can just replace $asdf with the original "asdf/" directory).
I'll be away from the office tomorrow (Sunday) but if you feel like giving it a go on Sunday and run into any issues, feel free to give me a call on skype or +1 248-330-2979.
On Thu, Oct 17, 2013 at 5:50 PM, Fabrice Popineau < fabrice.popineau@supelec.fr <javascript:_e({}, 'cvml', 'fabrice.popineau@supelec.fr');>> wrote:
Ok, I'll reply about it on Saturday.
Best regards,
Fabrice
2013/10/17 Dave Cooper <david.cooper@genworks.com <javascript:_e({}, 'cvml', 'david.cooper@genworks.com');>>
Basic instructions to run the tests:
- Establish a directory to be the root of your testing area.
- cd to this directory.
- git clone git://common-lisp.net/projects/asdf/asdf.git
- put the attached script into this directory
To be clear, by "this directory" I mean the _current_ directory, not the asdf/ subdirectory which was newly created by the git clone. So the "run" script and your pwd should both be in the parent of the asdf/ subdirectory created by the git clone.
- edit the script to point to your LWW console image
- ./run
- observe the output in ./asdf/build/results/lispworks.text
- If interesting, report the output to asdf-devel@common-lisp.net<javascript:_e({}, 'cvml', 'asdf-devel@common-lisp.net');>
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com <javascript:_e({}, 'cvml', 'david.cooper@genworks.com');>, dave.genworks.com(skype)
I guess there's also an outside chance that the LWW command line failure has to do with differences between Cygwin and MSYS (Fabrice is running the test script with MSYS). But that seems unlikely as long as Cygwin and MSYS both have normal bash and sh.
On Sunday, October 20, 2013, Dave Cooper wrote:
FYI It looks like some more command line escaping tweaks are needed for LWW.
I'm on an outing today and will be able to run tests tonight with the latest commit.
It looks like to me Fabrice is using CMD.EXE as his command-line, not bash, and CMD.EXE has its own escaping algorithm, quite different from bash. I recommend using bash, for sanity, and because that's what the test script uses, and for which it can suggest interactive command-lines when things fail.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Our love was a supernova, bursting with an immense light only to wane quickly, leaving behind a black hole.
On Sun, Oct 20, 2013 at 12:23 PM, Dave Cooper david.cooper@genworks.com wrote:
I guess there's also an outside chance that the LWW command line failure has to do with differences between Cygwin and MSYS (Fabrice is running the test script with MSYS). But that seems unlikely as long as Cygwin and MSYS both have normal bash and sh.
On Sunday, October 20, 2013, Dave Cooper wrote:
FYI It looks like some more command line escaping tweaks are needed for LWW.
I'm on an outing today and will be able to run tests tonight with the latest commit.
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699
What I wanted to show here is that LWW seems to be doing something on its own on the command line arguments. As I wrote it : I can't find a way to do someting equivalent to :
$ /c/Local/Lispworks/lw-console.exe -siteinit - -init - -eval '(load "c:/temp/foo.lisp")' LispWorks(R) (for the Windows(R) operating system) Copyright (C) 1987-2012 LispWorks Ltd. All rights reserved. Version 6.1.1 Saved by Fabrice as lw-console, at 20 Oct 2013 11:59 User Fabrice on ALIMANTADO
Error: End of file while reading stream #<SYSTEM::STRING-INPUT-STREAM 41907B4873
.
neither from cmd.exe nor from bash. Whatever I tried it fails in one way or another.
Fabrice
2013/10/20 Faré fahree@gmail.com
It looks like to me Fabrice is using CMD.EXE as his command-line, not bash, and CMD.EXE has its own escaping algorithm, quite different from bash. I recommend using bash, for sanity, and because that's what the test script uses, and for which it can suggest interactive command-lines when things fail.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Our love was a supernova, bursting with an immense light only to wane quickly, leaving behind a black hole.
On Sun, Oct 20, 2013 at 12:23 PM, Dave Cooper david.cooper@genworks.com wrote:
I guess there's also an outside chance that the LWW command line failure
has
to do with differences between Cygwin and MSYS (Fabrice is running the
test
script with MSYS). But that seems unlikely as long as Cygwin and MSYS
both
have normal bash and sh.
On Sunday, October 20, 2013, Dave Cooper wrote:
FYI It looks like some more command line escaping tweaks are needed for LWW.
I'm on an outing today and will be able to run tests tonight with the latest commit.
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699
That's probably worth a bug report to the LispWorks people.
I fear they might not be parsing arguments correctly. http://msdn.microsoft.com/en-us/library/bb776391(v=vs.85).aspx http://msdn.microsoft.com/en-us/library/17w5ykft(v=vs.85).aspx
They're not alone here. Allegro had issues, too. See how in our script we use (string`|foo.lisp|) instead of "foo.lisp" to load a file despite argument parsing failures when the doublequote character " is used.
Both Allegro and LispWorks might pre-date the Windows argument quoting conventions, and most users on Windows don't use the command line of LispWorks, it seems.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Gilb's Law: Anything you need to quantify can be measured in some way that is superior to not measuring at all. —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
On Sun, Oct 20, 2013 at 1:53 PM, Fabrice Popineau fabrice.popineau@gmail.com wrote:
What I wanted to show here is that LWW seems to be doing something on its own on the command line arguments. As I wrote it : I can't find a way to do someting equivalent to :
$ /c/Local/Lispworks/lw-console.exe -siteinit - -init - -eval '(load "c:/temp/foo.lisp")' LispWorks(R) (for the Windows(R) operating system) Copyright (C) 1987-2012 LispWorks Ltd. All rights reserved. Version 6.1.1 Saved by Fabrice as lw-console, at 20 Oct 2013 11:59 User Fabrice on ALIMANTADO
Error: End of file while reading stream #<SYSTEM::STRING-INPUT-STREAM 41907B4873
.
neither from cmd.exe nor from bash. Whatever I tried it fails in one way or another.
Fabrice
2013/10/20 Faré fahree@gmail.com
It looks like to me Fabrice is using CMD.EXE as his command-line, not bash, and CMD.EXE has its own escaping algorithm, quite different from bash. I recommend using bash, for sanity, and because that's what the test script uses, and for which it can suggest interactive command-lines when things fail.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Our love was a supernova, bursting with an immense light only to wane quickly, leaving behind a black hole.
On Sun, Oct 20, 2013 at 12:23 PM, Dave Cooper david.cooper@genworks.com wrote:
I guess there's also an outside chance that the LWW command line failure has to do with differences between Cygwin and MSYS (Fabrice is running the test script with MSYS). But that seems unlikely as long as Cygwin and MSYS both have normal bash and sh.
On Sunday, October 20, 2013, Dave Cooper wrote:
FYI It looks like some more command line escaping tweaks are needed for LWW.
I'm on an outing today and will be able to run tests tonight with the latest commit.
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699