Skip to content
Snippets Groups Projects
Commit 65be1c38 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.26.46: only do things in-image if needed.

This restores the feature of do-first that was lost while refactoring ASDF
to fix the timestamp propagation issue.

The old asdf-bundle worked implicitly because of do-first:
fasl-op DEPENDS-ON compile-op, and compile-op has a DO-FIRST on the
load-op of dependencies, NOT a DEPENDS-ON, so if the compile-op is
"done" (which did NOT check the timestamps of dependencies),
then the dofirst is never consulted and load-op is never traversed.
In our new ASDF, we want to always traverse the load-op of dependencies,
so we can propagate their timestamps; however, we still want to only
actually load them if they are needed. Therefore, visiting actions
takes an additional flag "needed in this image", and each visited action
can be planned or not planned yet, and a not planned yet action can
be visited a second time to plan it after recursively visiting its
dependencies with the "needed" flag set.

Tests were fixed now to work now that this distinction exists.
parent 0efe021e
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment