Dear Mark,
thanks a lot for your patch. Your efforts are appreciated.
On 1 May 2010 14:04, Mark Evenson evenson@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.