Almost every month
cl-test-grid detects various regressions in CL ecosystem.
Like this month:
I have problem
reporting all these regressions to interested parties. Studying why
something fails, searching for right person to report, formulating and
submitting bug reports - all that easily takes more than a full
working day.
Also, sometimes it's
not necessary a bug from the library maintainer point of view, for example if his
library fails on CLISP because CLISP ships with old ASDF, maybe this
maintainer doesn't care. But maybe those who depends on this library care. So, it's not
always obvious whether the situation requires to disturb people.
That's why I created
this blog. I mean it as a low volume notification channel - mostly a notice with
reports once a month when the tests are finished, and a summary of
what I understand about the failures. Then, if people are interested in particular
failures, they can ask and I will help to investigate and explain why exactly something
fails.
I hope this will
help to effectively fix important failures and keep the community aware about the
factors causing fluctuations of quality in CL ecosystem.
Now about this month
regressions.
First of all, I
usually build two diff reports.
One is grouped by
lisp implementation first and then by library:
Another one is
grouped by library first and then by lisp impl:
Both reports show
the same data, just arranged differently.
The most noticeable
regressions in quicklisp 2015-12-18 comparing to the previous
release:
- bordeaux-threads
uses UIOP without specifying :depends-on :uiop in the .asd file; in result on lisp implementations where ASDF doesn't include UIOP, bordeaux-threads (and libraries depending on it) fail to load
- iolib rejects ASDF
< 3.1, so fails to load (and prevents libraries using it from
loading) on lisps with elder ASDF
- cl+ssl declares
FFI binding for function SSL_CTX_set_default_verify_dir which is
absent in the latest
stable OpenSSL release, and only present in OpenSSL master. c+ssl doesn't use
this function, the ffi declaration was added just to allow others to
invoke it. Still, cl+ssl
fails to load on CMUCL because CMUCL actually checks for foreign
symbol to be present when
FFI declaration is processed. Other lisps we tested are unaffected. This problem is
fixed already in cl+ssl git.
- As usually, more
and more libraries start to use new ASDF features, for example
keywords :home, :at. These libraries and
their dependencies fail to load on elder ASDF.
- croatoan library
starts using sb-ext:posix-getenv thus fails on non-sbcl lisps (hint:
use uiop:getenv instead)
- rutils (and
depending libs) fail on ABCL and ECL with "No such method for
PRINT-OBJECT"
- several libraries
fail on ECL with "* is not a valid type specifier"
- com.informatimago.common-lisp.telnet fails on CMUCL with "The
value of the :SLOT-NAME initarg, US, is a constant and so cannot be
bound."
... and other
failures.
If you're interested in
some specific failure or need help investigating something, just ask
in the comments or
on the mailing list.