aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-03-05 13:53:31 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-03-05 13:53:31 -0700
commita62d55d0df11e529b923dab1fb07a6e9b036fb9a (patch)
tree5ba657c372d83a98a2135b808c39283578d1577d
parent2ef7be0422d37f81223cf93e685b16e238507a67 (diff)
downloadconsfigurator-a62d55d0df11e529b923dab1fb07a6e9b036fb9a.tar.gz
EVAL-PROPSPEC prints as it works through properties
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
-rw-r--r--src/property.lisp3
-rw-r--r--src/propspec.lisp6
2 files changed, 8 insertions, 1 deletions
diff --git a/src/property.lisp b/src/property.lisp
index 9dca7c8..89bf93c 100644
--- a/src/property.lisp
+++ b/src/property.lisp
@@ -72,6 +72,9 @@
(defun propdesc (prop &rest args)
(apply (get prop 'desc #'noop) args))
+(defun propappdesc (propapp)
+ (apply #'propdesc propapp))
+
(defun propargs (prop)
(get prop 'args))
diff --git a/src/propspec.lisp b/src/propspec.lisp
index e0dcff6..8b5d74f 100644
--- a/src/propspec.lisp
+++ b/src/propspec.lisp
@@ -188,7 +188,11 @@ an atomic property application."
do (asdf:load-system system)))
(loop for form in (slot-value propspec 'applications)
for propapp = (compile-propapp form)
- do (propappapply propapp)))
+ do (let ((change-made (not (eq :no-change (propappapply propapp)))))
+ (format t "~@[~A :: ~]~@[~A ... ~]~:[ok~;done~]~%"
+ (get-hostname)
+ (propappdesc propapp)
+ change-made))))
(defmethod propspec->type ((propspec propspec))
"Return :lisp if any types of the properties to be applied by PROPSPEC is