[asdf-devel] Much improved uiop:run-program
Faré
fahree at gmail.com
Sat Sep 28 18:42:09 UTC 2013
stassats noticed that
1- run-program would fail in ECL while under SLIME,
because ECL's system simultaneously insists in redirecting
the I/O to current Lisp streams, and fails if they are not fd streams.
2- the current run-program is so tight a knot as to be horrible
and unmaintainable.
At the same time, I was procrastinating big time, and feeling I didn't
want all that UIOP effort to go to waste. Therefore,
3- I fixed run-program, which involved teaching it about input as well
as output, at which point error-output was a breeze.
4- Along the way, I fixed an embarrassing bug in with-temporary-file
when using external-format, fixed bugs in slurp-input, identified a
CCL bug #1114.
5- run-program is now much cleaner, maybe even maintainable by others,
with a somewhat more portable interface to the underlying
functionality, and
a much improved API for the end-user.
6- Unhappily, 400 lines of code were added (but they include improved
documentation).
I only tested on Linux x64, using free software implementations and
Allegro (Express Edition). Other people will need to test on LispWorks
and on Windows, neither of which I can test.
It's all committed on the git repository in the run-program topic branch:
http://common-lisp.net/gitweb?p=projects/asdf/asdf.git;a=shortlog;h=refs/heads/run-program;js=1
See the commit message for more details on what changed.
It should be mostly compatible for all users (= only inferior-shell
and asdf tests, AFAICT).
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
You have the capacity to learn from mistakes. You'll learn a lot today.
More information about the asdf-devel
mailing list