1. 17 Feb, 2017 1 commit
  2. 26 Nov, 2016 1 commit
    • Francois-Rene Rideau's avatar
      Get fully rid of operation initargs · 6bb7aa6b
      Francois-Rene Rideau authored
      ASDF never supported operation initargs, and its component-operation-times
      always assumed that two operations of the same class were equivalent.
      Make it explicitly so and enforce it.
      
      Do NOT pass keys from operate to make-instance operation.
      Catch any attempt to create an operation with initargs and raise an error.
      Make sure no operation class has any slot that isn't :allocation :class
      (with some MOP magic we could do it in at class definition time,
      but that's not portable enough and we don't want to reimplement closer-mop
      or depend on it.)
      
      This is a preliminary to allowing CONS instead of NODE-FOR to identify actions,
      whether or not we want to allow some form of initargs in the future.
      
      Remove unused COMPILE-OP-FLAGS and COMPILE-OP-PROCLAMATIONS.
      Remove MAKE-BUILD that depended on the unsupported operation initargs.
      Use PROGRAM-OP on a PROGRAM-SYSTEM instead.
      Remove the confusingly misnamed and not-so-useful BUILD-SYSTEM function;
      it can be done better in userland.
      6bb7aa6b
  3. 16 Oct, 2016 1 commit
    • Francois-Rene Rideau's avatar
      Stop fmakunbound'ing defgeneric's past the upgrade trigger · 8e0ec0e9
      Francois-Rene Rideau authored
      If we fmakunbound a defgeneric, we lose any user-defined method on the function
      and must therefore reload any and every system that might have defined methods
      on it. We must therefore not fmakunbound past the forward compatibility upgrade
      trigger, only before. Adjust our code accordingly. Conservative bounds are used
      in *oldest-forward-compatible-asdf-version* and redefined-functions that should
      probably be refined after some inspection of old versions.
      
      This is a response to https://bugs.launchpad.net/asdf/+bug/1631771
      8e0ec0e9
  4. 25 Sep, 2016 4 commits
    • Francois-Rene Rideau's avatar
    • Francois-Rene Rideau's avatar
      Use make-operation to create operations · cba5261e
      Francois-Rene Rideau authored
      Stop using make-instance directly in a few places.
      Use our convenience methods in other places.
      cba5261e
    • Francois-Rene Rideau's avatar
      Fix the upgrade hooks · 9b431ca3
      Francois-Rene Rideau authored
      The order in which the upgrade fixups were called wasn't very robust.
      We need to first get a list of systems being defined, then
      clear defined systems (but not asdf, and *neither uiop* that asdf depends on),
      then upgrade the configuration, and *finally* reload any of the systems being
      defined (including their defsystem-depends-on dependencies!),
      which means this all has to be coordinated within the same function.
      9b431ca3
    • Francois-Rene Rideau's avatar
      Remove *post-upgrade-restart-hook* · 3dd1f67d
      Francois-Rene Rideau authored
      p-u-r-h was never called! Two functions were registered.
      Register them with *post-upgrade-cleanup-hook* instead.
      The hook was introduced with pre-release 2.27,
      possibly with the intent to be called by the main operate :around method
      when an asdf build is restarted in the middle. But that never happened.
      3dd1f67d
  5. 20 Sep, 2016 1 commit
  6. 17 Sep, 2016 1 commit
  7. 16 Sep, 2016 2 commits
  8. 15 Sep, 2016 1 commit
  9. 14 Sep, 2016 2 commits
    • Francois-Rene Rideau's avatar
      Fix component-loaded-p to not load asd files · 7f6e4fac
      Francois-Rene Rideau authored
      Add find-component keyword argument registered to not load asd files.
      Use it in component-loaded-p so we query what's registered but don't load asds.
      
      Many thanks to Daniel Kochmanski for identifying and helping solve the problem.
      7f6e4fac
    • Francois-Rene Rideau's avatar
      Eagerly register preloaded systems · d33ab0bc
      Francois-Rene Rideau authored
      Change clear-system accordingly, and simplify how we handle immutable systems.
      Add or improve documentation for several of the functions involved.
      
      Also stop advertising asdf::*immutable-systems*;
      instead promote asdf:register-immutable-system.
      
      This is a preliminary to fixing component-loaded-p for preloaded systems.
      d33ab0bc
  10. 13 Sep, 2016 1 commit
    • Francois-Rene Rideau's avatar
      Refactoring: introduce the function REGISTERED-SYSTEM · 7b7b9f0c
      Francois-Rene Rideau authored
      Introduce the function REGISTERED-SYSTEM to abstract over finding a registered
      system by name, without having to take the CDR of the pair with timestamp.
      
      Also, add or improve docstrings for several functions.
      
      This refactoring should not modify any semantics,
      except for introducing this new function.
      7b7b9f0c
  11. 12 Sep, 2016 1 commit
  12. 11 Sep, 2016 1 commit
  13. 01 Aug, 2016 1 commit
  14. 24 Jul, 2016 1 commit
  15. 28 Nov, 2015 1 commit
  16. 29 Jun, 2015 1 commit
  17. 11 Aug, 2014 1 commit
  18. 20 Jun, 2014 1 commit
    • Francois-Rene Rideau's avatar
      Fix an ASDF bootstrap bug reported by MKCL's JCB. · effffe75
      Francois-Rene Rideau authored
      Our method to override 'load-op with *load-system-operation*
      in defmethod component-depends-on ((o prepare-op) (s system))
      was failing to call-next-method, which cancelled the
      :in-order-to in asdf.asd's own defsystem asdf. Oops.
      
      Issue: this means that ASDF 3.1.2 is unfit to bootstrap further
      variants of ASDF, and they must be bootstrapped with make,
      or their asdf.asd must be modified in a yet-to-be-determined way
      to compensate for that bug.
      effffe75
  19. 11 May, 2014 1 commit
  20. 24 Mar, 2014 2 commits
  21. 20 Mar, 2014 1 commit
    • Francois-Rene Rideau's avatar
      Fold *systems-being-defined* into the *asdf-cache*. · 84e17ea0
      Francois-Rene Rideau authored
      Add regression test for no infinite loop
      when processing asd files that mutually define each other's systems.
      (Prompted by Robert Strandh inquiring about the bug fixed in 2.015.[23]
      after my mentioning an infinite loop in my ASDF3 article.)
      Checked that removing the set-asdf-cache-entry in parse-defsystem triggers the bug.
      84e17ea0
  22. 14 Mar, 2014 2 commits
  23. 13 Mar, 2014 2 commits
  24. 01 Mar, 2014 1 commit
    • Francois-Rene Rideau's avatar
      Fixes and refactoring of asdf/bundle and uiop/image for ECL. · c52a4f83
      Francois-Rene Rideau authored
      Testing the latest cl-launch with ECL showed massive bitrot in the bundle support for ECL.
      * Make better use of ASDF3's class hierarchy in redefining asdf/bundle,
        by removing and adding the mixins: goodbye bundle-compile-op and monolithic-,
        hello link-op and gather-op. Also, reinstate bundle-system as a class
        to hold prologue and epilogue (but do we need these, now with portable ASDF3 image support?)
      * rename binary-op to deliver-asd-op, same for monolithic-
      * Introduce image-op as a superclass of program-op,
        for dumping an executable image with the regular top-level.
      * Redo the way operation flags are or aren't propagated:
        gather-op explicitly does not pass the flags,
        so toplevel options are for the toplevel build only
        -- though they belong to the system, not the operation.
        Therefore get rid of no-ld-flags-op -- if there are flags to pass,
        they should be passed explicitly in gather-op;
        or more likely, they might be slots in the system, or the plan,
        or special variables for the current session.
        OPERATE tries harder to preserve the original-initargs,
        which are not clobbered by asdf/bundle's initialize-instance anymore.
      * Punt for command-line-arguments on LispWorks,
        so the user has a slight chance of setting them.
      c52a4f83
  25. 28 Feb, 2014 1 commit
  26. 24 Feb, 2014 1 commit
  27. 27 Jan, 2014 2 commits
    • Francois-Rene Rideau's avatar
      More cleanups: · c7d1ce63
      Francois-Rene Rideau authored
      * Add some comments on TRAVERSE-ACTION; expand those on SOURCE-FILE-TYPE.
      * Remove a few unnecessary input-files or output-files methods
      * Remove (declare (ignorable ...)) for specialized arguments. Specialize a few arguments to T.
      * Remove most when-upgrading methods, since we drop data on old incompatible ASDFs.
      c7d1ce63
    • Francois-Rene Rideau's avatar
      Cleanups done or initiated during the ASDF Walkthrough. · f71a8b99
      Francois-Rene Rideau authored
      * load-op needn't be sideway, its sideway dependencies are already provided by prepare-op
      * compile-op should use compile-op (default) not load-op as its downward-operation.
      * no need for an input-files method for prepare-op, nil is the global default.
      * Some documentation for compute-action-stamp.
      * Don't skip upgrade from 1.x on Allegro anymore, since we now correctly punt.
      * Instead of asdf/package:define-package, use the canonical name uiop/package:define-package
      f71a8b99
  28. 26 Jan, 2014 1 commit
  29. 09 Oct, 2013 1 commit
  30. 23 Sep, 2013 1 commit
  31. 09 Jun, 2013 1 commit