Commit 0be4f434 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

1.105: require asdf 2.018.16 to fix reinitialize-instance issues from asdf 2.017.2

parent 6f9f128d
......@@ -2,7 +2,10 @@
(cl:in-package :asdf)
(unless (or #+asdf2 (version-satisfies (asdf-version) "2.014.8"))
#-asdf2
(error "ASDF-DEPENDENCY-GROVEL requires ASDF2.")
(unless (version-satisfies (asdf-version) "2.014.8")
(error "Not only is your ASDF version is too old for ASDF-DEPENDENCY-GROVEL,
you must upgrade it *before* you try to load any system."))
......@@ -38,7 +41,8 @@ based on which compilation can be parallelized.
Based on an analysis with form granularity,
it can output a summary from which you can untangle
the circularities in your build."
:depends-on ((:version :asdf "2.018.12")) ;; for full :around-compile support
:version "1.105"
:depends-on ((:version :asdf "2.018.16")) ;; for full :around-compile support
:components ((:file "package")
(:file "variables" :depends-on ("package"))
(:file "classes" :depends-on ("package" "variables"))
......
......@@ -281,7 +281,7 @@
(defmethod constituent-designator ((con asdf-component-constituent))
(list* :asdf
(asdf:component-pathname (asdf-component-constituent-component con))
(asdf::component-find-path (asdf-component-constituent-component con))
(constituent-designator (constituent-parent con))))
(defmethod constituent-designator ((con file-constituent))
......
......@@ -57,7 +57,7 @@
(let ((*macroexpand-hook* (if (boundp '*old-macroexpand-hook*)
*old-macroexpand-hook*
*macroexpand-hook*)))
(asdf:load-system :asdf-dependency-grovel)))
(load-system :asdf-dependency-grovel)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Signaling Functions ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
......@@ -512,8 +512,8 @@
(defun normalized-component-name (c)
(let ((pn (enough-namestring (normalize-pathname-directory
(asdf:component-pathname c))))
(type (asdf:source-file-type c (asdf:component-system c))))
(component-pathname c))))
(type (source-file-type c (component-system c))))
(values (strip-extension pn type) pn type)))
(defun enough-component-spec (c)
......@@ -524,7 +524,7 @@
;; Used by additional-dependencies* and overridden-dependencies*.
(defun map-over-instrumented-component-and-parents (component slot-name)
(loop :for c = component :then (asdf:component-parent c)
(loop :for c = component :then (component-parent c)
:until (null c)
:when (and (typep c 'instrumented-component)
(slot-boundp c slot-name))
......@@ -585,8 +585,8 @@
(find-class (or
(coerce-class-name
(asdf::module-default-component-class
(asdf:component-parent component)))
'asdf:cl-source-file))))
(component-parent component)))
'cl-source-file))))
:file)
;; instrumented components with output file types emit
;; their output file type
......@@ -628,16 +628,16 @@
of system ~A. Instead of directly editing this ~
file, please edit the system definition~P ~
and re-generate this file."
(mapcar #'asdf:component-name (mapcar #'first dependencies))
(mapcar #'component-name (mapcar #'first dependencies))
(length dependencies))
(format stream "~&(~%")
(dolist (system dependencies)
(destructuring-bind (system &key depends-on components) system
(when output-systems-and-dependencies-p
(format stream "~& (~S~@[ :depends-on ~:S~] :components~% ("
(asdf:component-name system)
(delete (asdf:component-name system)
(mapcar #'asdf:component-name depends-on)
(component-name system)
(delete (component-name system)
(mapcar #'component-name depends-on)
:test #'equal)))
(dolist (compspec components) ;; to sort: (components-in-traverse-order system components)
(destructuring-bind (component &key depends-on) compspec
......@@ -695,7 +695,7 @@
(defun operate-on-asdf-component-constituent (component thunk)
(operate-on-file-level-constituent
(list* :asdf (asdf:component-pathname component)
(list* :asdf (asdf::component-find-path component)
(constituent-designator *current-constituent*))
(lambda () (make-instance 'asdf-component-constituent
:parent *current-constituent*
......@@ -763,8 +763,8 @@
(defun asdf-system-file-components (system)
"Flatten the tree of modules/components into a list that
contains only the non-module components."
(loop :for component :in (asdf:module-components system)
:if (typep component 'asdf:module)
(loop :for component :in (module-components system)
:if (typep component 'module)
:append (asdf-system-file-components component)
:else
:collect component))
......@@ -775,7 +775,7 @@
nil)
(:method ((x asdf-component-constituent))
(when (typep (asdf-component-constituent-component x)
'asdf:cl-source-file)
'cl-source-file)
x))
(:method ((x file-constituent))
x)
......@@ -800,8 +800,8 @@
:when (typep filecon2 'asdf-component-constituent) :do
(let ((comp2 (asdf-component-constituent-component con2)))
(pushnew comp2 (gethash comp1 component-deps))
(pushnew (asdf:component-system comp2)
(gethash (asdf:component-system comp1) system-deps))))))
(pushnew (component-system comp2)
(gethash (component-system comp1) system-deps))))))
;; Build and return the dependency forms.
(loop :for system :in interesting-systems
:collect `(,system
......@@ -826,7 +826,7 @@
(with-constituent-groveling
(dolist (system systems)
(operating-on-asdf-component-constituent (system)
(asdf:operate 'asdf:load-op system :verbose verbose)))
(operate 'load-op system :verbose verbose)))
(with-open-file
(dependency-report-stream "/tmp/depreport.sexp"
:direction :output
......
......@@ -28,17 +28,3 @@
(defpackage #:asdf-dependency-grovel.lambdas
(:use))
(in-package #:asdf-dependency-grovel)
(defparameter *asdf-dependency-grovel-version* "1.104")
(defparameter *asdf-version-required-by-adg* "2.018.12")
#-asdf2
(error "ASDF-DEPENDENCY-GROVEL requires ASDF2.")
#+asdf2
(unless (asdf:version-satisfies (asdf:asdf-version) *asdf-version-required-by-adg*)
(error "ASDF-DEPENDENCY-GROVEL ~A requires ASDF ~A or later."
*asdf-dependency-grovel-version*
*asdf-version-required-by-adg*))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment