[asdf-devel] [bugfix] Fix ABCL loading ASDF definitions from jars under Windows

Faré fahree at gmail.com
Sat May 1 19:58:52 UTC 2010

I merged something as 1.712. Please test with ABCL.
Unlike the version that you had going through namestrings of
make-pathnames, it shouldn't have the pitfall of horrors when the
*default-pathname-defaults* supplies an interesting device. Just like
your version, though, it probably supposes that /foo/bar parses with
an :unspecific host name rather than a moving name of the current
device. In the latter case, you'd want a fixed host, whether jar: or
something else to be used for the fake intermediate root.

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
Every four seconds a woman has a baby.
Our problem is to find this woman and stop her.

On 1 May 2010 15:26, Faré <fahree at gmail.com> wrote:
> Dear Mark,
> thanks a lot for your patch. Your efforts are appreciated.
> On 1 May 2010 14:04, Mark Evenson <evenson at panix.com> wrote:
>> Attached please find a patch which fixes problems pointed out by Carlos
>> Ungil when ABCL would catastrophically fail to translate the output location
>> for ASDF systems located within jar files under Windows.
> Now, your patch looks slightly fishy to me.
> You notably produce a string rather than a pathname;
> on the one hand, that is poor taste, on the other hand,
> it's not clear what device that string will resolve to;
> does ABCL ensure that it will be read as a device-less pathname,
> as opposed to say a pathname relative to the "current device",
> which may change, in which case you lose?
> Also, instead of using concatenate 'string everywhere,
> you might want to use merge-pathnames* and relativize-pathname-directory;
> or not - after all, you know what is or isn't guaranteed
> to work on your implementation.
> Also, is it on purpose that these translations are in FRONT
> of the wrapping-output-translations? That means they will be impossible
> to override, as opposed to what would happen if they were on the BACK
> of same list (i.e. *after* :inherit-configuration),
> or relegated to the optional default-output-translations.
>> We've fixed this in the version of ASDF 1.679 which we are planning to ship
>> as part of abcl-0.20.0 in the next week.  After ASDF goes through the
>> shakedown of your code-freeze over the next two weeks, we'll pick up the end
>> result to ship as part abcl-0.21.0, if this seems reasonable to the ASDF
>> developers.
> It's easier for us to support the latest ASDF than an already old one,
> especially if you're going to ship a patched old one. But yours might
> be the conservative way to go 1.679, and the call is yours, of course.
> [ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
> Classical liberalism is not an economic doctrine. It is a theory of Law.

More information about the asdf-devel mailing list