Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#42 ASDF redundant recompilations

open
Daniel Barlow
asdf (12)
7
2006-05-29
2005-10-22
Scott L. Burson
No

This is in ASDF 1.86.

When the system definition uses explicit `:in-order-to'
dependencies between files, and I issue a command like
`(asdf:operate 'asdf:load-op <system>)', it recompiles
many files unnecessarily (the fasls are up to date
already). This doesn't happen when the system
definition is in `:serial t' form.

I enclose a tentative fix.

-- Scott

Discussion

  • Logged In: YES
    user_id=201123

    No, it wasn't that simple. Here's my second try at a fix.

    -- Scott

     
  • Logged In: YES
    user_id=201123

    No, it wasn't that simple. Here's my second try at a fix.

    -- Scott

     
  • Logged In: YES
    user_id=201123

    No, it wasn't that simple. Here's my second try at a fix.

    -- Scott

     
  • Logged In: YES
    user_id=201123

    Okay, third try :) (Deleting the previous attachment.)

    (Sorry for the duplicate comments.)

    -- Scott

     
  • Logged In: YES
    user_id=201123

    I've been running with this patch for about six months now,
    and it has been working great. I notice it's not in 1.92.
    I strongly encourage you to apply it to the CVS tree.

    (Can't believe I made such a mess of the initial submission
    here -- I know that's not confidence-inspiring. Yow!)

    I'm enclosing a complete example that reproduces the
    problem. Untar it somewhere, place a link to `foo.asd' in
    your central ASDF registry directory, start a fresh Lisp,
    and do `(asdf:operate 'asdf:load-op :foo)'. The source
    files will, of course, be compiled. Now exit Lisp and
    restart it, and do the load step again. You will see that
    most of the source files get recompiled.

    Unfortunately I no longer recall exactly what the problem
    was or how this patch fixes it, but I'm sure I can
    reconstruct that information if you need me to.

     
    • priority: 5 --> 7
     
  • Example of problem

     
    Attachments
  • Logged In: YES
    user_id=201123

    Here's a patch made from the current CVS tree, just to be
    sure it applies cleanly. Deleting previous patches.

    -- Scott

     
  • Patch against current CVS tree

     
    Attachments