
Gary King wrote:
I think that the default is that test-op depends on load-op.
I'm looking at asdf.lisp right now, and I don't see any such dependency. I agree that this would be A Good Thing. It's really a pain to have to add (:in-order-to ((test-op (load-op <sysname>))) to all the systems with testers... Here's a patch that adds that and also adds some more information to an error I tripped over while writing the first patch.... Best, r P.S. did you have a chance to push my patch to document weakly-depends-on? diff --git a/asdf.lisp b/asdf.lisp index 1e1118d..6d84d02 100644 --- a/asdf.lisp +++ b/asdf.lisp @@ -900,7 +900,7 @@ the head of the tree")) forced (do-one-dep op (second d) (third d)))) (t - (error "Dependencies must be (:version <version>), (:feature <feature>), or a name")))) + (error "Bad dependency ~a. Dependencies must be (:version <version>), (:feature <feature>), or a name" d)))) (t (appendf forced (do-one-dep op d nil))))))))) (aif (component-visited-p operation c) @@ -1122,6 +1122,9 @@ the head of the tree")) (defclass test-op (operation) ()) +(defmethod component-depends-on :around ((o test-op) (c system)) + (cons `(load-op ,(component-name c)) (call-next-method))) + (defmethod perform ((operation test-op) (c component)) nil) @@ -1132,6 +1135,7 @@ the head of the tree")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; invoking operations + (defun operate (operation-class system &rest args &key (verbose t) version force &allow-other-keys) (declare (ignore force))