On Fri, 2013-07-26 at 14:47 -0400, Faré wrote: > > 2) (asdf:load-system :swap-bytes/test :force '(:swap-bytes/test)) > > needlessly compiles files from :swap-bytes on which it depends. > > I've attached a log that traces PERFORM and COMPUTE-ACTION-STAMP and > > shows that two files from :swap-bytes get recompiled even though they > > haven't changed. > > > > I'm wondering if the problem lay with the ASDF extension in > > Madeira-port, but that's so simple I can't find any obvious fault. > > Ideas ? > > > A) I see nothing wrong in madeira-port, but there is no reason for > swap-bytes to use it, since > i) madeira-port requires asdf 2.29 > ii) asdf 2.27 and later already have :if-feature that provides the > same basic service
Oh, goodie. > iii) you are not using any of the feature-eval extensions provided by > madeira-port > > B) your perform methods does a force of swap-bytes/test. Did you try > to remove that, and see if the bug still happens? That might help > narrow it down. I don't see why you need to force, anyway. (And yes, > it looks like a bug.) When I test stuff I want the entire test suite to be recompiled on-the-fly so as to catch macro redefinitions, etc... > Actually, it's quite possible that even without > that force, this could possibly cause the second load-system to have a > confused plan. This happens when I force-load the test suite from the repl too, not only from within the perform method. > Since you're already depending on asdf3, what about > instead have in your defsystem swap-bytes something like the following > statements (untested): > :in-order-to ((test-op (load-op swap-bytes/test))) > :perform (test-op (o c) (uiop:symbol-call :5am :run! :swap-bytes)) > > NB: ok, using uiop instead of asdf/package means you depend on 2.32 > instead of 2.29. Ok, will do -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib
signature.asc
Description: This is a digitally signed message part
