Thank you very much for these, Marius. I will look into fixing them directly. One question - do I need to check for ECL version number when requiring sockets in the test? I.e., to I need to test with :rt in older versions and :sockets in newer? Or will :sockets work in older versions of ECL, as well?


On 30 Aug 2018, at 12:46, Marius Gerbershagen wrote:

Harmless in the sense that ECL doesn't crash or throw me in the
interactive debugger. Besides, the test failures seem to be easily
fixed. The test-require.script test fails because it tries to require
the :rt module which is deprecated on the develop branch and no longer
build by default. A simple fix is to use the :sockets module instead:

diff --git a/test/test-require.script b/test/test-require.script
index e5f70857..1ef84e8c 100644
--- a/test/test-require.script
+++ b/test/test-require.script
@@ -178,7 +178,7 @@
#+allegro :sax
#+clisp (first (remove "asdf" *dynmod-list* :test 'equal))
#+(or clozure cmucl) :defsystem
- #+ecl :rt ;; loads faster than :ecl-quicklisp
+ #+ecl :sockets
#+lispworks "comm"
#+mkcl :walker
#+sbcl :sb-md5

The test-program.script test seems to fail to include uiop because of an
error in the linkable-system function. Tracing it shows that the
function returns nil for the uiop system object,
1> (ASDF/BUNDLE::LINKABLE-SYSTEM #<system "uiop">)
which seems to be caused by a missing call to coerce-name:

diff --git a/bundle.lisp b/bundle.lisp
index 2ff56f93..42034c9f 100644
--- a/bundle.lisp
+++ b/bundle.lisp
@@ -529,7 +529,7 @@ which is probably not what you want; you probably
need to tweak your output tran
;; If an ASDF upgrade is available from source, but not a UIOP
upgrade to that,
;; then use the asdf/driver system instead of
;; the UIOP that was disabled by check-not-old-asdf-system.
- (if-let (s (and (equal x "uiop") (output-files 'lib-op "asdf")
(find-system "asdf/driver")))
+ (if-let (s (and (equal (coerce-name x) "uiop") (output-files
'lib-op "asdf") (find-system "asdf/driver")))
(and (output-files 'lib-op s) s))
;; If there was no source upgrade, look for modules provided by
the implementation.
(if-let (p (system-module-pathname (coerce-name x)))

Am 29.08.2018 um 01:22 schrieb Faré:

I can't reproduce this, for me the tests run fine without being thrown
in the debugger. I only get two harmlessly looking test failures
(test-program.script and test-require.script).

No test failure is harmless. The test-program.script failure is what
Robert saw, that I can reproduce. I didn't reproduce a failure with
test-require. I had more problems with ECL from the develop branch,
but maybe it was a bad idea to use the develop branch.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics•
There are two kinds of people, those who do the work
and those who take the credit. Try to be in the first group;
there is less competition there
— Indira Gandhi.