Deprecated recursive use of (ASDF/OPERATE:OPERATE 'ASDF/LISP-ACTION:LOAD-OP...
I updated the SBCL + ASDF and I get some warnings in my cacau system:
My asdf.lisp:
(in-package #:cl-user)
(defpackage #:cacau-asdf
(:nicknames #:cacau-asdf)
(:use #:common-lisp
#:asdf)
(:export #:cacau-file
#:run-cacau-asdf))
(in-package #:cacau-asdf)
(defvar *system-cacau-files* (make-hash-table))
(defclass cacau-file (asdf:cl-source-file) ())
(defmethod asdf:input-files ((o asdf:compile-op) (c cacau-file)) ())
(defmethod asdf:output-files ((o asdf:compile-op) (c cacau-file)) ())
(defmethod asdf:perform ((op asdf:compile-op) (c cacau-file)) ())
(defmethod asdf:perform ((op asdf:load-op) (c cacau-file))
(pushnew c (gethash (asdf:component-system c) *system-cacau-files*)
:key #'asdf:component-pathname
:test #'equal))
(defun run-cacau-asdf (system-designator)
#+quicklisp (ql:quickload (if (typep system-designator 'asdf:system)
(asdf:component-name system-designator)
system-designator))
#-Quicklisp (asdf:load-system system-designator)
(restart-case
(dolist (c (reverse
(gethash (asdf:find-system system-designator) *system-cacau-files*)))
(restart-case
(asdf:perform 'asdf:load-source-op c)))))
(import 'cacau-file :asdf)
My "cacau-test.asd":
(defsystem :cacau-test
:author "noloop <noloop@zoho.com>"
:maintainer "noloop <noloop@zoho.com>"
:license "GPLv3"
:description "cacau Test."
:depends-on (:cacau :assert-p)
:defsystem-depends-on (:cacau-asdf)
:components
((:module "t"
:serial t
:components
((:file "recursive-runner")
(:module "functional"
:components
((:cacau-file "runner-test")
(:cacau-file "suite-test")
(:cacau-file "test-test")
(:cacau-file "before-all-test")
(:cacau-file "after-all-test")
(:cacau-file "before-each-test")
(:cacau-file "after-each-test")
(:cacau-file "timeout-test")
(:cacau-file "only-test")
(:cacau-file "skip-test")
(:cacau-file "skip-only-rule-test")))
(:module "interface"
:components
((:cacau-file "cl-test")
(:cacau-file "bdd-test")
(:cacau-file "tdd-test")
(:cacau-file "no-spaghetti-test")
(:cacau-file "mix-test")))
(:module "reporter"
:components
((:cacau-file "min-test")
(:cacau-file "list-test")
(:cacau-file "full-test"))))))
:perform
(test-op (op c)
(progn
(funcall (intern #.(string :run-cacau-asdf) :cacau) c)
(symbol-call :cacau-test '#:r-run))))
And I get:
WARNING:
Deprecated recursive use of (ASDF/OPERATE:OPERATE 'ASDF/LISP-ACTION:LOAD-OP
'("cacau-test")) while visiting (ASDF/LISP-ACTION:TEST-OP "cacau-test") -
please use proper dependencies instead
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"runner-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"runner-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"suite-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"suite-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"test-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"test-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"before-all-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"before-all-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"after-all-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"after-all-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"before-each-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"before-each-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"after-each-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"after-each-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"timeout-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"timeout-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"only-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"only-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"skip-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"skip-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"functional"
"skip-only-rule-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"functional"
"skip-only-rule-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"interface"
"cl-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"interface"
"cl-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"interface"
"bdd-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"interface"
"bdd-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"interface"
"tdd-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"interface"
"tdd-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"interface"
"no-spaghetti-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"interface"
"no-spaghetti-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"interface"
"mix-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"interface"
"mix-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"reporter"
"min-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"reporter"
"min-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"reporter"
"list-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"reporter"
"list-test") wasn't done yet!
WARNING:
Computing just-done stamp in plan NIL for action (ASDF/LISP-ACTION:LOAD-SOURCE-OP
"cacau-test" "t"
"reporter"
"full-test"), but dependency (ASDF/LISP-ACTION:PREPARE-SOURCE-OP
"cacau-test"
"t"
"reporter"
"full-test") wasn't done yet!
Can't quite understand what happens.