I believe for many this is concealed by having their lisp implementation
able to call "compile-file" and load the affected modules in at runtime
- the contribs it determines as missing (right or wrong) will compile
the elements it percieves as missing - my implementation (commercial)
does not allow this; but it then highlights an inconsistency in the
implementation.
This may explain it:
I configure slime in my .emacs as so:
(slime-setup '(slime-repl slime-fancy slime-banner slime-asdf
slime-indentation))
Now, due to my implementation, I want my app to include all of the
relevant contribs. To achieve this, I needed to do 2 things.
1: In Swank-loader.lisp, add swank-indentation to defvar *contribs*
2: Address another problem in Swank.lisp. . .
This is where the compile-file was being decided on and triggered.
Basically, despite being present, this test was determining that ASDF
and Indentation have to be reincluded.
ASDF and Indentation were being passed in as as :swank-indentation and
:swank-asdf, then looking for them in *modules* via a string search.
However, the string for asdf was "ASDF" not "SWANK-ASDF", and nothing
for INDENTATION is present at all despite being loaded.
As a temporary hack I make the check avoid reload for either of these
modules; but that's obviously not the solution. And I'm not even sure
what's populating *modules* - but there is an emission or an inconsistency.