1. 02 Jan, 2013 1 commit
  2. 01 Jan, 2013 1 commit
    • Francois-Rene Rideau's avatar
      2.26.46: only do things in-image if needed. · 65be1c38
      Francois-Rene Rideau authored
      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.
      65be1c38
  3. 27 Dec, 2012 3 commits
  4. 26 Dec, 2012 2 commits
  5. 17 Dec, 2012 2 commits
  6. 15 Dec, 2012 2 commits
    • Francois-Rene Rideau's avatar
      2.26.22: Add new, sensible, :if-feature feature. · 6bb1036a
      Francois-Rene Rideau authored
      Remove last traces of previous non-sensical :feature features.
      6bb1036a
    • Francois-Rene Rideau's avatar
      2.26.21: move children dependencies from traverse to component-depends-on, · 45a36620
      Francois-Rene Rideau authored
      where it ought to always have been, based on a properly cleaned up prepare-op
      (previously introduced in 2.26.14 as parent-load-op).
      
      This is a checkpoint of a mostly working system after major changes;
      it requires further cleanup and fixes:
      strangely, fails some tests on CCL but not SBCL.
      
      Introduce find-operation as a companion to find-component,
      subsuming make-sub-operation.
      The results of component-depends-on are processed with find-operation and resolve-component-spec.
      component-self-dependencies is fixed to play well with prepare-op.
      
      Also, some internal renamings and signature changes:
      parent-operation becomes upward-operation
      parent-load-op becomes prepare-op
      parent-source-load op becomes prepare-source-op
      parent-component is distinguished from module
      module-components becomes component-children
      module-components-by-name becomes component-children-by-name
      compute-module-components-by-name becomes compute-children-by-name
      circular-dependency-components becomes circular-dependency-actions
      component-load-dependencies becomes component-sibling-dependencies (with a stub)
      introducing child-component, downward-operation.
      refactoring visit-dependencies to include the loop in which it's always used.
      refactoring force and force-not processing to use a function action-override-p;
      force is achieved with a trivial method on operation-done-p for prepare-op,
      and force-not as a trivial check in visit-action.
      
      Tweak tests along the way. Tweak the documentation.
      
      Failed to either rename operation-error or introduce action-error in its superclasses:
      that breaks sb-grovel.
      45a36620
  7. 09 Dec, 2012 4 commits
  8. 08 Dec, 2012 1 commit
    • Francois-Rene Rideau's avatar
      2.26.9: Another major rewrite of traverse, to propagate timestamps correctly. · da0d1380
      Francois-Rene Rideau authored
      This fixes the major issue whereby asdf's operation-done-p was failing to check
      the timestamps of dependencies, only checking those of the immediate operation.
      	https://bugs.launchpad.net/asdf/+bug/1087609
      
      This rewrite is also a vast simplification:
      * we rely purely on filesystem timestamps of files
      * we stop using get-universal-time and therefore eschew clock skews issues
       between processor and filesystem
      * we do away with the ugly do-first dependencies, previously made necessary
       by the way get-universal-time messed with load timestamps.
      * we simplify the protocol to visit components, with a better internal API
       that we use twice: once, recursively, in traverse, and once, shallowly,
       in compute-action-stamp (the new internals for operation-done-p).
      * make-sub-operation is drastically simplified.
      
      For the sake of backward-compatibility, the code style had to be contrived,
      notably introducing a special variable *stamp*,
      supporting dual modes for operation-done-p, and
      keeping the old names of many functions that would better be renamed.
      da0d1380
  9. 27 Sep, 2012 1 commit
  10. 13 Sep, 2012 1 commit
  11. 15 Aug, 2012 1 commit
  12. 31 Jul, 2012 1 commit
  13. 27 Jul, 2012 1 commit
    • Francois-Rene Rideau's avatar
      2.23.2: * add MKCL support based on patch by JCB (see mailing-list). · 59518e92
      Francois-Rene Rideau authored
      * Refactor load-system to use *load-system-operation*,
      and change require-system and module-provide-asdf to use that.
      * Remove broken-fasl-support: first, cormanlisp is supposed to have fixed it;
       second, cormanlisp is dead;
       third, one can now (setf *load-system-operation* 'load-source-op) instead.
      * Reindent default-source-registry
      * Fix a test in light of some previous package frobbing.
      59518e92
  14. 28 Jun, 2012 1 commit
  15. 12 Jun, 2012 1 commit
    • Francois-Rene Rideau's avatar
      sbcl quit update. · d42d5371
      Francois-Rene Rideau authored
      Don't upgrade ccl or cmucl on older asdf's due to incompatibilities.
      Shouldn't matter since they already ship with more recent versions of asdf.
      d42d5371
  16. 15 May, 2012 1 commit
  17. 23 Apr, 2012 1 commit
  18. 22 Apr, 2012 1 commit
  19. 21 Apr, 2012 1 commit
  20. 16 Apr, 2012 1 commit
  21. 14 Apr, 2012 1 commit
  22. 12 Apr, 2012 3 commits
  23. 19 Dec, 2011 1 commit
  24. 15 Dec, 2011 1 commit
  25. 14 Dec, 2011 2 commits
  26. 22 Nov, 2011 1 commit
  27. 22 Oct, 2011 1 commit
  28. 21 Oct, 2011 1 commit
  29. 18 Oct, 2011 1 commit