Commit 813549e7 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.28.5: make upgrade work better for CCL with setf component-version.

This is kind of a kluge: use slot-value in parse-component-form
instead of a proper accessor.
A better fix is required in the long term, but this will do for now.
parent 49b1eb1d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
* have a single test .asd that tests as many features as possible, use it for upgrade test.
* implement deferred warnings support on abcl, allegro, clisp, cmucl, lispworks, scl)
* fix upgrade on clisp
** Extract minimal test case
+1 −1
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@
  :licence "MIT"
  :description "Another System Definition Facility"
  :long-description "ASDF builds Common Lisp software organized into defined systems."
  :version "2.28.4" ;; to be automatically updated by make bump-version
  :version "2.28.5" ;; to be automatically updated by make bump-version
  :depends-on ()
  #+asdf3 :encoding #+asdf3 :utf-8
  ;; For most purposes, asdf itself specially counts as a builtin system.
+2 −0
Original line number Diff line number Diff line
@@ -53,6 +53,8 @@ another pathname in a degenerate way."))
  (defgeneric component-external-format (component))
  (defgeneric component-encoding (component))
  (defgeneric version-satisfies (component version))
  (defgeneric component-version (component))
  (defgeneric (setf component-version) (new-version component))

  ;; Backward compatible way of computing the FILE-TYPE of a component.
  ;; TODO: find users, have them stop using that, remove it for ASDF4.
+4 −2
Original line number Diff line number Diff line
@@ -103,7 +103,7 @@

;;; Main parsing function
(with-upgradability ()
  (defun parse-component-form (parent options &key previous-serial-component)
  (defun* (parse-component-form) (parent options &key previous-serial-component)
    (destructuring-bind
        (type name &rest rest &key
                                (builtin-system-p () bspp)
@@ -149,7 +149,9 @@
        (when (and versionp version (not (parse-version version nil)))
          (warn (compatfmt "~@<Invalid version ~S for component ~S~@[ of ~S~]~@:>")
                version name parent))
        (setf (component-version component) version)
        ;; Don't use the accessor: kluge to avoid upgrade issue on CCL 1.8.
        ;; A better fix is required.
        (setf (slot-value component 'version) version)
        (when (typep component 'parent-component)
          (setf (component-children component)
                (loop
+1 −1
Original line number Diff line number Diff line
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.28.4: Another System Definition Facility.
;;; This is ASDF 2.28.5: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.
Loading