On Tue, Dec 18, 2012 at 5:01 PM, Faré fahree@gmail.com wrote:
OK, I understand the bug that Xach found:
There was an ancient bug whereby input-files for a module always returned a singleton list containing the module's component-pathname, its directory. That wasn't an issue then due to the even greater deep design flaw of timestamps not being propagated. Since the latter bug was fixed, the former popped its ugly head. Because SB-ROTATE-BYTE has a module (a fake one for the purpose of using :if-component-dep-fails), ASDF wanted to recompile it, which fails. If you have a fast compiler and you don't install, the entire thing can be compiled in under a second, and the timestamps for all the fasls and directory are the same. But after you install, the directory timestamp is older, and you are sure to lose.
Anyway, this should be fixed in 2.26.33.
My apologies for the breakage. Software is hard.
Actually, the reason I wasn't seeing Zach's bug when running in SLIME is because I was running my asdf on top of the require'd asdf; now since input-files is not included in the list of redefined-functions, I was still benefitting from a method from the previous ASDF that explicitly overrode the default method, forcing modules to actually have no input-files. So it was actually my bug to have deleted this method instead of making it a method on parent-component. There. Mea culpa.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org It may be better to be a live jackal than a dead lion, but it is better still to be a live lion. And usually easier. — Robert Heinlein, "Time Enough For Love"