I have a note from you requesting that I mark SOURCE-FILE-TYPE as deprecated in code and documentation.
I'm not sure I fully understand.
The code in component.lisp still uses this, and it's not obvious how to remove it (nor what it means that it can return :DIRECTORY).
I *believe* that what you mean is that SOURCE-FILE-TYPE will stay, but that outsiders should no longer make methods on it: instead they should use the :FILE-TYPE slot on FILE-COMPONENT. But maybe not; see my point 3 below.
Some follow up:
1. This comment: " ;; SOURCE-FILE-TYPE below is strictly for backward-compatibility with ASDF1. ;; We ought to be able to extract this from the component alone with COMPONENT-TYPE.
That's out of date, right? Should refer to extract this from FILE-COMPONENTs along with FILE-TYPE, correct?
2. Why is FILE-TYPE an ACCESSOR instead of a READER? Should anyone be setting this, except as an INITARG?
3. What is the return type of SOURCE-FILE-TYPE, and in particular why does it not return an error when applied to a PARENT-COMPONENT? I think it's because it's not being used only as a FILE type, but is being used as a TYPE argument for ASDF's pathname functions, which have a more expansive notion of :type. I suppose maybe this means that SOURCE-FILE-type is a misnomer, and that's one of the reasons it should die.
I'm working my way through the ASDF manual, end-to-end. I will probably commit a marked up PDF to the repo pretty soon, so anyone who is interested can see where I'm going.
Thanks, r