I think Xach and I are trying to cope with essentially the same problem:
lack of resources for a community project.
On the one hand, Xach wants to stick with and old ASDF because it's a
lot of trouble to maintain it, and he's afraid of breakage.
OTOH, we don't have the resources to maintain backwards-compatibility in
ASDF (though we try not to break things gratuitously). Keeping ancient
unmaintained software running at the cost of introducing complexity into
ASDF is something I simply can't do (when I transfer maintenance to
Microsoft, they'll have that covered!).
Faré has worked heroically (with admirable assistance from Anton
Vodonosv) to keep from breaking libraries and offering patches, but at
the end of the day, if there's no one available to merge patches into
new releases of libraries, that can't be a reason to veto introduction
of a fix into ASDF. If there's no one available to change `foo-test`
into `foo/test` in `crusty-library.asd` that's not really our fault (and
really, should people be using `crusty-library.asd` if there isn't?).
Naturally, that has the potential to make Xach's life miserable. It's
not my fault or his.
When there's stuff like `crusty-library` out there, there will be a
certain amount of misery to be had, and there will always be a tension
between QL and ASDF about who gets to enjoy it.
I wish that I could coordinate more effectively with Xach, but I really
don't know what I can do to make this work better.
Best,
r
On 9 Apr 2018, at 12:13, Faré wrote:
On Mon, Apr 9, 2018 at 12:22 PM, Robert Goldman <rpgold...@sift.info>
wrote:
On 9 Apr 2018, at 11:17, Attila Lendvai wrote:
A cheesy fix would simply be to wrap it in IGNORE-ERRORS. But it
might
cause
errors in its present form.
i've learned, painfully, that indiscriminate ignore-errors will
almost
always bite you back (in the form of wasted debugging time), no
matter
how innocent they look.
This really is more a QL issue than an ASDF one (although it
illustrates
an
issue with wrapping errors, IMO).
while this is true, the implementation of QL requires a reliable way
to hook into the internal state of various versions of ASDF (namely,
into the situation when ASDF is looking for a system, and not
finding
it will lead to an error without QL intervention). if i understand
it
correctly, this is the crux of this issue.
Sure, and I am happy to try to support this, but not to the extent of
recovering a copy of ASDF 2.x and trying to run it.
The problem is that I don't know when the missing component condition
was
added to ASDF, and doing this right would involve checking the
enclosed
condition to see if it's a missing component error. I know how to do
that
for a modern ASDF, but I don't know how to handle ASDFs that are too
old to
have this condition class. And I don't fee like it's my job to think
about
that: I think it's perverse to continue trying to use ASDF 2.
ASDF 2.26 is totally unsupported at this point. No implementation uses
anything less than 3.1.2 (the first stable release in the 3.1 series,
from May 2014). Many essential packages require 3.1.x or later. It is
a waste of time to try to get 2.26 running
If Quicklisp wants to be conservative, I would recommend requiring ior
providing ASDF 3.1.7, which is the last in the 3.1 series and pretty
stable, from March 2016, which is two years ago.
The "official" policy of ASDF was always to not support anything that
had already been superseded 2 years ago or more. 3.1.7 should be the
oldest supported ASDF release.
That said, what my opinions seem to be negatively taken into account
by Xach, so there.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics•
http://fare.tunes.org
Evolution competitively selects stable cooperative patterns.