[Asdf-devel] Registering preloaded systems for Quicklisp/ASDF

Faré fahree at gmail.com
Mon Aug 11 17:07:02 UTC 2014


On Mon, Aug 11, 2014 at 10:36 AM, Faré <fahree at gmail.com> wrote:
> On Mon, Aug 11, 2014 at 10:19 AM, Robert P. Goldman <rpgoldman at sift.info> wrote:
>> Thanks to both of you for your work on this patch.
>>
>> I'm going to hold off on applying any patches, though, until there's a
>> test case.
>>
>> Dave, I understand that it might be hard to wrap your head around the
>> test script code, so let's start by brainstorming what the test should
>> do, rather than digging in and getting confused with the details of
>> implementation.
>>
>> I believe what is wanted is a test where we make an image with some
>> system preloaded, try to mark it as immutable, and then check to see if
>> it's reloaded.  Is that correct?
>>
> I think you'd want to
> (1) compile a bundle from one slave process,
>   or in the master process then delete suitable packages and
> clear-defined-systems.
> (2) in another slave process (or master process, after clean up),
>   load the bundle and call register-immutable-system,
>   then ((re)configure asdf if needed) and try to load the system,
>   and see that the system loading was a success yet that the .asd file
> wasn't loaded
>   (e.g. the .asd can contain a defpackage or defparameter that you
> check didn't happen)
>
> Considering that it can be done without a slave process if only you clean up,
> maybe the best place for that isn't the test-program.script, but
> test-bundle.script.
>
Now that I think of it, the test should also compare the situation
with not using register-immutable-system, so first try to load,
cleanup, reload, and check that reload happens; then cleanup,
register-immutable-system, and check that reload does not happen.
Also, check that the system doesn't disappear when you try to clear
it.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
A tautology is a thing which is tautological.




More information about the asdf-devel mailing list