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

Faré fahree at gmail.com
Mon Aug 11 14:36:55 UTC 2014


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.


As for what the patch itself should do, I believe the right thing to
do would be for register-immutable-system to use (register-system
(make-preloaded-system ...)). Note that you might want to preserve the
version information for your system, if already registered, and/or if
a keyword is given to register-immutable-system (with e.g. the default
t meaning check for an already defined system). Finally, you might
also want to patch clear-defined-systems so it doesn't undefine the
immutable-systems.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
No woman ever falls in love with a man unless she has
a better opinion of him than he deserves.       — Edgar Watson Howe




More information about the asdf-devel mailing list