On 12 Oct 2017, at 12:09, 73budden . wrote:

This tracing tool should help a lot.

I believe this tool should be supplied by asdf team. Even I begin to
be more positive towards efforts of ASDF team to clean up all the mess
that was in ASDF initially, but obviously society is not quite happy
with breaking changes, so some small tool with a good manual would
make life easier.

This will probably not happen for a while -- my work on other aspects, and just staying on top of bugs and testing takes most of the available time.

But I think I can provide pieces of a recipe for this kind of debugging and if someone out there could give feedback, I will see to it that the recipe gets into the manual.

I think if you want to see the plan that ASDF produces to perform a requested operation, you should use something like:
```
(setf *plan* (asdf/plan:make-plan nil (make-operation 'load-op) (find-system "sysname")))
```

Then, to figure out what's happening, I would suggest
```
(trace asdf:operation-done-p)
```
...to see if ASDF is wrong about whether or not it needs to do some operations.

Then I would try something like tracing `PERFORM`.

I'd have to think a little about what to do if `MAKE-PLAN` gives you a plan you don't expect.

cheers,
r


Printing readtable before loading, I think, requires just a line or
two. Dumping log of operations might be one (trace) call, so that's
trivial for the person who knows how ASDF is organized. Writing a
small two-paragraph addition to manual would relief a lot of pain and
stress for all.

Reply via email to