1. 03 Jun, 2021 3 commits
    • Robert Goldman's avatar
      Fix rebase error. · 9d819a5f
      Robert Goldman authored
      Kept part of the `defun*` for `parse-component-form` in rebase.
      9d819a5f
    • Francois-Rene Rideau's avatar
      Ensure upgradability without DEFUN* · 32a579df
      Francois-Rene Rideau authored and Robert Goldman's avatar Robert Goldman committed
      32a579df
    • Eric Timmons's avatar
      Add extension points for component parsing. · aea4917b
      Eric Timmons authored and Robert Goldman's avatar Robert Goldman committed
      Eric Timmons writes [edited for compression]:
      
      I decided to make a system class that infers components instead of systems called [asdf-inferred-components](https://gitlab.common-lisp.net/etimmons/asdf-inferred-components).
      
      I found myself wanting a couple more points to intercede in the parsing of systems. This merge adds them.
      
      At the moment they are not exported from the ASDF package, but we anticipate they will be exported after using them in practice for a while.
      
      `class-for-type` is now a generic function that allows a custom `parent-component` class to control the mapping of component types (`:file`, `:module`, etc.) to classes.
      
      I also turned `compute-component-children` into a GF (no backward compatibility issues there since the `defun` version of it has yet to be released) and moved a bit of the work it did back into `parse-component-form`.
      aea4917b
  2. 30 Apr, 2021 1 commit
  3. 03 Mar, 2021 1 commit
    • Robert Goldman's avatar
      Fix and test issue 39. · 717fb693
      Robert Goldman authored
      Modify the computation of `:serial` dependencies so that the chain is not broken by `:if-feature` dependencies that are dropped from the system.
      717fb693
  4. 06 Jan, 2020 1 commit
  5. 15 Dec, 2018 2 commits
  6. 02 Aug, 2018 1 commit
  7. 20 Jul, 2017 6 commits
    • Robert Goldman's avatar
      Fix bug detecting need to reload defsystem. · aca68cf1
      Robert Goldman authored
      Previously, if one bumped a version number that was included into a
      system definition using :READ-FILE-FORM or :READ-FILE-LINE, ASDF would
      not notice the change (so it could, for example, fail to recognize that
      a depended-on system has had its version number bumped and now satisfies
      a new :VERSION requirement).
      
      This was fixed by adding ADDITIONAL-INPUT-FILES to the object model.
      These serve the purpose of giving a place other than INPUT-FILES for ASDF
      to stash input files that it "notices" on its own (e.g., when processing
      :READ-FILE-<FOO>).  ASDF can't stash such files in INPUT-FILES, because
      it must leave the INPUT-FILES primary methods open for users to
      override.
      aca68cf1
    • Francois-Rene Rideau's avatar
      Replace reset-system by reset-system-class · d9f2baa8
      Francois-Rene Rideau authored
      Drop any information in undefined-system that isn't in proto-system.
      d9f2baa8
    • Francois-Rene Rideau's avatar
      Replace *defined-systems* by *registered-systems* · 206c1248
      Francois-Rene Rideau authored
      Use a simple table *registered-systems* mapping name to system,
      and remember timestamps in the COMPONENT-OPERATION-TIME for DEFINE-OP,
      instead of the original *defined-systems* table mapping name to
      cons of timestamp and system.
      206c1248
    • Francois-Rene Rideau's avatar
      Refactor load-asd to perform a define-op · a3b85c8b
      Francois-Rene Rideau authored
      Split asdf/system-registry away from asdf/find-system: the former defines
      the internal *defined-systems* table and the search mechanism, whereas
      the latter keeps the find-system methods, but also defines a new
      define-op operation, on load-asd will call operate.
      
      Reorder dependencies accordingly.
      
      Have forcing come from the plan, so as to not force again actions from
      dependencies that were already performed in a subcall to operate.
      
      Accept asdf.asd from the same version, so asdf.asd doesn't get removed
      at the very next call to operate (which may now come implicitly
      at the least provocation).
      a3b85c8b
    • Francois-Rene Rideau's avatar
      Introduce an *asdf-session* that may contain more than a cache. · f98aaa6b
      Francois-Rene Rideau authored
      Replace with-asdf-cache with with-asdf-session.
      Introduce *asdf-session-class* to hold the class of the session.
      Introduce caching-cache, currently the only session class,
      that only contains a cache, for now.
      f98aaa6b
    • Francois-Rene Rideau's avatar
      Rename asdf/cache to asdf/session · 49dbfc0c
      Francois-Rene Rideau authored
      49dbfc0c
  8. 17 Feb, 2017 1 commit
  9. 27 Nov, 2016 1 commit
  10. 25 Sep, 2016 1 commit
  11. 20 Sep, 2016 1 commit
  12. 17 Nov, 2015 1 commit
    • Francois-Rene Rideau's avatar
      Add tests for defsystem-depends-on · 5a4a89f5
      Francois-Rene Rideau authored
      Attila offered these tests, that currently fail at HEAD,
      for which I have a patch (to be included in next commit).
      They check that an error when loading defsystem-depends-on dependencies
      doesn't cause an incomplete system to be registered but never properly
      parsed, that thereafter pollute the build.
      
      A real solution would imply to fix lp#1500578 though:
         ASDF should handle change in defsystem-depends-on dependencies
         https://bugs.launchpad.net/asdf/+bug/1500578
      5a4a89f5
  13. 04 May, 2015 1 commit
  14. 17 Apr, 2015 1 commit
    • Robert Goldman's avatar
      Fix for launchpad bug 1445638. · ecbd83d5
      Robert Goldman authored
      When collecting the defsystem-dependencies in
      REGISTER-SYSTEM-DEFINITION, throw away NILs, which correspond to systems
      not needed because of :FEATURE checks.
      
      Added test case for bug, too.
      ecbd83d5
  15. 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
  16. 14 Mar, 2014 1 commit
    • Francois-Rene Rideau's avatar
      Accept strings as OPERATION class designators, read in package ASDF. · 50f2420f
      Francois-Rene Rideau authored
      Refactor COMPONENT class designators to use the same general method.
      As a substrate, goodbye uiop/utility:find-class*, hello uiop/utility:coerce-class.
      
      In the operate upgrade handler, assume there is
      no uninterning and renaming packages away anymore going forward.
      
      Add tests for strings as class designators using defsystem-depends-on.
      50f2420f
  17. 28 Feb, 2014 9 commits
  18. 26 Feb, 2014 4 commits
  19. 25 Feb, 2014 1 commit
  20. 24 Feb, 2014 1 commit
  21. 23 Feb, 2014 1 commit