[asdf-devel] 2.014.8

Robert Goldman rpgoldman at sift.info
Fri Apr 22 20:14:04 UTC 2011


On 4/22/11 Apr 22 -3:05 PM, Zach Beane wrote:
> Faré <fahree at gmail.com> writes:
> 
>> On 22 April 2011 13:59, Faré <fahree at gmail.com> wrote:
>>>> After building the Quicklisp universe again with 2.014.8, it's clear
>>>> that many projects (over 30) are affected by the
>>>> ASDF:SYSTEM-DEFINITION-PATHNAME changes. It seems like anything that
>>>> uses cffi-grovel is broken, e.g. osicat, gsll, shuffletron, hemlock, and
>>>> many more.
>>>>
>>> Oops. I'll remove that cerror for now, and just have a docstring.
>>>
>>> Thanks for the testing...
>>>
>> Please retry with 2.014.9.
> 
> I've retried with 2.014.9, and the cffi-grovel-related problems are
> gone, but there's an interesting new problem.
> 
> 2.014.9 includes this line:
> 
>   (declaim (optimize (speed 2) (debug 3) (safety 3))) ; XXXXX debug only
> 
> At (safety 3), SBCL is more aggressive about type-checking CLOS slots.
> As a result of the new declaration of the VERSION slot of a component to
> be of type STRING, several projects have systems that fail to load due
> to type errors:
> 
>   - cl-jpeg uses ":version 1.025"
> 
>   - nekthuth uses ":version (format nil "~A" +nekthuth-version+)",
>     apparently expecting it to be evaluated
> 
>   - js-parser and jwacs use ":version *version*"
> 
>   - meta-sexp uses ":version +meta-sexp-version+"
> 
>   - rutils uses ":version '(0 3 1)"
> 
> Was the :version option evaluated in the past?


I believe not.  I am looking at the definition of the now pretty old
SHOP2 system and I see:

:version #.cl-user::+shop-version+

I suppose that would have worked even if the version /was/ evaluated,
though, since strings would evaluate to themselves....

I find it relatively easy to believe that no one was looking seriously
at these versions, since many of the versions in the wild, even the ones
that are correctly string-valued, are semantically defective.

r




More information about the asdf-devel mailing list