I patch quicklisp.
I have a directory quicklisp-patched for this purpose. Copy new asdf.lisp to quicklisp-patched/asdf.lisp and edit quicklisp-patched/setup.lisp to change (defvar *required-asdf-version* "2.26") to (defvar *required-asdf-version* "2.31.4")
If you just want to test aserve, you can run a command like
alisp -qq -ee '(load "quicklisp-patched/setup.lisp") -ee '(ql:quickload :aserver)' (haven't run this, but you see the idea)
If you want to run all the cl-test-grid tests, then in the cl-test-grid/run-agent.lisp I comment out (test-grid-agent:main *agent*)
and to the following instead:
(setf (test-grid-agent:lisps *agent*) (list *ccl-1.8-x86* *acl*) ; lisp implementations I want to test (test-grid-agent::result-storage-name *agent*) "asdf" ; name of the online storage where the results should be sotred )
(test-grid-agent::test-patched-quicklisp *agent* #p"/home/testgrid/quicklisp-patched/" ; the directory where patched quicklisp is located "quicklisp 2013-01-28 + asdf.2.31.4-enc-dflt-no-warn + asdf-sys-conn-fix" ; the name I want to give to that patched quicklisp )
If you just want to test aserve, you can run 01.03.2013, 06:54, "Dave Cooper" david.cooper@genworks.com:
By the way how can I replicate this myself for testing?
For testing of specific systems, just temporarily replace the asdf in my implementation with ASDF 2.31.4, then proceed with quicklisp as usual?
For trying cl-test-grid with a cutting edge ASDF what is the recommended approach?
On Thu, Feb 28, 2013 at 8:46 PM, Dave Cooper david.cooper@genworks.com wrote:
ACL shows new problem with portableaserve and via it with all genworks-gdl systems. The error: No defined method for ASDF/ACTION:PERFORM oncompiling #<ORIGINAL-ASERVE "aserve" "dummy">
This is a hack in aserve.asd to allow
(asdf:load-system :aserve)
to bring in the original aserve (via require) in the case of #+allegro.
There are some defclass'es and defmethod'd in the middle of the .asd file to enable this. Maybe this doesn't work so well with ASDF3? Or maybe they just need some (eval-when (...) ...) around them (at the risk of mental health issues)? Here is what the stuff looks like:
#+allegro (defclass original-aserve (asdf:component) ((loaded :initform nil :accessor loaded)))
#+allegro (defmethod asdf:source-file-type ((c original-aserve) (s module)) "dummy")
#+allegro (defmethod asdf:perform ((op asdf:load-op) (c original-aserve)) #+common-lisp-controller (c-l-c:original-require 'aserve) #-common-lisp-controller (require 'aserve) (setf (loaded c) t))
#+allegro (defmethod asdf:operation-done-p ((op asdf:load-op) (c original-aserve)) (loaded c))
#+allegro (defmethod asdf:operation-done-p ((op asdf:compile-op) (c original-aserve)) t)
#+allegro (defsystem aserve :components ((:original-aserve "dummy")))
--
My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699