Hello asdf,
This is cross posted on the sbcl mailing list (I asked there first since this has to do with an sbcl specific feature.) Project names were changed to protect their identities.
I'm a fairly new lisper and I'm running into trouble trying to generate coverage reports (using sb-cover, obviously) for a specific system in my project.
I tried to just add the (declaim (optimization sb-cover:store-coverage-data)) after loading the system, but then I realized I made a horrible mistake as sbcl uses that optimization declaration to add tracing data to the compiled code. I then naively decided it would be a good idea to just force a recompile of the system. To my horror, I ended up recompiling everything sbcl touched, cl-sql, bordeaux threads, and more. The good news is that I managed to generate the coverage report but only with tons of external dependencies being included in the report as well. As much as I like knowing these things, it's not exactly useful.
The solution I'm trying to come up with is creating a new type of operation in asdf conveniently called cover-op. I haven't had much luck in getting this working (I've only spent an hour on this, so not really surprising given my exposure to asdf). Currently, I like the setup with asdf:test-system and then just specialize perform to run the tests. I would like to do the same thing to generate coverage reports, but the compilation step is proving the be a problem.
I'm wondering what other asdf users do to ensure coverage reports are generating for only the "interesting" aspects of your applications?
Thanks, Sean