1. 07 Mar, 2018 4 commits
  2. 01 Mar, 2018 3 commits
  3. 20 Feb, 2018 3 commits
  4. 19 Feb, 2018 2 commits
  5. 17 Feb, 2018 2 commits
    • Eric Timmons's avatar
      Change apply to funcall in expansion of define-package · 21e3a85b
      Eric Timmons authored
      SBCL has been getting aggresive with checking arguments to functions. For some
      reason (as of SBCL 1.4.1), setting the package source location in define-package
      seems to trigger a source translation for the apply form that ends up producing
      (many) compilation notes that the arguments to ensure-package in the keyword
      positions are not constant, weakening keyword argument checking. We can get
      around that, however, by using a funcall directly.
    • Eric Timmons's avatar
      Evaluate sb-c:source-location after macroexpansion · ed0f4d5e
      Eric Timmons authored
      Tested on SBCL 1.4.4. If sb-c:source-location is evaluated during macro
      expansion, then the source location will always point to asdf.lisp (inside the
      define-package macro). If it is evaluated after macro expansion, it points to
      the right place.
  6. 16 Jan, 2018 2 commits
  7. 03 Jan, 2018 2 commits
    • Francois-Rene Rideau's avatar
      Better handle misnamed secondary systems · 069cd2a6
      Francois-Rene Rideau authored
      Distinguish between "syntactic" primariness ("foo" vs "foo/bar" names) and
      "semantic" primariness (system foo in foo.asd vs system foo in bar.asd),
      and use the right one at all right place: when checking if a system is
      up-to-date, what matters is that the old primary system is at the same
      place as before, and is up-to-date.
      Thinking about it, there is a lingering bug in case a definition-dependency
      are up-to-date, but were modified after the definition was read.
      What is really needed is a prepare-define-op. Sigh.
    • Francois-Rene Rideau's avatar
      Massage test-multiple to check non-reloading · 5397c994
      Francois-Rene Rideau authored
      Test whether ASDF is still confused by misnamed secondary systems:
  8. 18 Dec, 2017 3 commits
  9. 17 Dec, 2017 1 commit
  10. 15 Dec, 2017 2 commits
  11. 12 Dec, 2017 3 commits
  12. 06 Dec, 2017 1 commit
  13. 05 Dec, 2017 3 commits
    • Francois-Rene Rideau's avatar
      Fix upgrade issue with asdf/bundle. · 8e68ac22
      Francois-Rene Rideau authored
      Change implementation strategy for operation metadata methods
      bundle-type, gather-operation and gather-type.
      Upgrading from 3.1.7 or earlier yielded incorrect values for the metadata slots
      of the bundle operation classes, e.g.
      (gather-type (make-operation 'monolithic-lib-op))) was stuck to :STATIC-LIBRARY
      instead of its correct value :OBJECT since 3.2.0.
      The reason was that we were storing the value for this method in the :initform
      for the slot gather-type, which started as clever way of defining it as part of
      the DEFCLASS form for the class itself; however, this usage pattern does not
      work well with hot code upgrade: if the :initform changes during ASDF upgrade,
      the slot is already initialized, so its value isn't updated. That would require
      a method on UPDATE-INSTANCE-FOR-REDEFINED-CLASS, which hopefully should be
      invoked despite the fact that the shape of the class hasn't changed.
      A new slot won't be allocated because (a) we ensure that our operation classes
      are singleton classes using an *operations* cache, so objects are not
      reallocated, and (b) we define our slots with an :allocation :class, anyway.
      Remarkably, at least *some* of our changes in :initform have worked anyway,
      because when we transitioned allocation from :instance (default) to :class,
      that transition did force the computation of the new :initform, so the problem
      was hidden. But we're already out of luck with this upgrade from 3.1.7,
      and we must find a real solution.
      The Right Thing(tm) to do is to use DEFMETHOD to define specialized values.
      This commit does exactly that for the slots defined in bundle.lisp
      (and also used in concatenate-source.lisp). Ideally, we'd also do that
      for the slots defined in action.lisp and used in lisp-action.lisp, bundle.lisp
      and concatenate-source.lisp --- but there might or might not be clients
      in Quicklisp (or beyond Quicklisp) that this change would break.
      We must check backward compatibility, make sufficient announcement, etc. Sigh.
    • Francois-Rene Rideau's avatar
      Add a regression tests for upgrade · c54265da
      Francois-Rene Rideau authored
      Test more versions during upgrade tests.
    • Francois-Rene Rideau's avatar
      Improve test-bundle · 652d1c08
      Francois-Rene Rideau authored
  14. 01 Dec, 2017 2 commits
  15. 14 Nov, 2017 2 commits
  16. 12 Nov, 2017 2 commits
  17. 27 Oct, 2017 2 commits
  18. 26 Oct, 2017 1 commit