Found a problem: https://github.com/quicklisp/quicklisp-client/issues/68
OK, so Quicklisp was failing on older ECLs, because 1- it saw that older ECLs had an old ASDF, so it loaded its own more recent one (2.26) 2- when it loads a more recent ASDF, that invalidated the asdf-bundle part of ECL's ASDF. 3- when it further tried to (require :sockets), that failed, because require depends on asdf-bundle.
Therefore, it looks like asdf-bundle is required when upgrading ASDF on ECL for Quicklisp.
I bundled (pun intended) asdf-bundle into a single Lisp file asdf-bundle.lisp, so it's easier to deploy, either as part of ECL or of Quicklisp. Along the way, I fixed it for SBCL (some recent changes must have broken it), and tested it on SBCL and ECL:
(asdf:load-system :asdf-bundle) (trace load) (asdf:operate asdf:load-fasl-op :fare-utils)
Does what I expect from a fresh Lisp image where the fasls have been compiled already.
Now, do we want to distribute asdf-bundle.lisp as a separate system asdf-bundle.asd? Do we want to distribute it as part of asdf.asd the way we used to do asdf-ecl.lisp? Do we want to just add its contents to asdf.lisp, a growth of a bit over 10% in size, for additional functionality on many platforms and much less headaches on ECL?
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org An anarchist is a man who is careful to always use pedestrian crossings, because he utterly detests talking with policemen. — Georges Brassens
On Thu, Nov 29, 2012 at 2:41 PM, Faré fahree@gmail.com wrote:
Now, do we want to distribute asdf-bundle.lisp as a separate system asdf-bundle.asd? Do we want to distribute it as part of asdf.asd the way we used to do asdf-ecl.lisp? Do we want to just add its contents to asdf.lisp, a growth of a bit over 10% in size, for additional functionality on many platforms and much less headaches on ECL?
ECL will pledge to whatever means of distribution you choose. Just keep me informed.
Juanjo
On Thu, Nov 29, 2012 at 11:18 AM, Juan Jose Garcia-Ripoll juanjose.garciaripoll@gmail.com wrote:
On Thu, Nov 29, 2012 at 2:41 PM, Faré fahree@gmail.com wrote:
Now, do we want to distribute asdf-bundle.lisp as a separate system asdf-bundle.asd? Do we want to distribute it as part of asdf.asd the way we used to do asdf-ecl.lisp? Do we want to just add its contents to asdf.lisp, a growth of a bit over 10% in size, for additional functionality on many platforms and much less headaches on ECL?
ECL will pledge to whatever means of distribution you choose. Just keep me informed.
After carefully considering the headache for users of Quicklisp and ECL, and the fact that asdf-bundle now supports load-fasl-op for all actively maintained implementations, except ABCL which has its own thing, I've decided that it's probably best to fold asdf-bundle into ASDF. (Note that I haven't tested the SCL, LispWorks or MKCL ports, and that the LispWorks port I just threw together probably needs some love).
The only objection I can imagine is file size, but somehow, I fear we're past the point of being able to complain. I fully assume the creeping featuritis since ASDF 1. wc stats are as follows: 4534 19011 200127 asdf.lisp 597 2138 21861 asdf-bundle.lisp 5131 21149 221988 total So the increase is a bit under 11% increase in character file size.
I'll give a few days for people to issue objections, and if none is raised, I'll go ahead with the merge some time next week, after hopefully testing on more implementations. Hopefully, I will add some tests to the ASDF test suite.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Someone who claims a right to a good that he has not produced (or acquired by some other voluntary means) is doing one of two things: either he is claiming a right to have nature supply him with goods without effort, which is absurd; or he is claiming a right to take goods from others against their will, which is unjust. — David Kelley