I haven't used CFFI in a while.
TL;DR: is this a sane fix?
https://github.com/cffi/cffi/commit/4b9b06f15912e823581b1aeb8a0d5c2ef11f702d
---------- and here follows the elaborate email that led me to find the above solution:
a bit of background: it's a subsystem of CFFI that generates the CFFI bindings from a json file, that is in turn autogenerated from the C source.
so,
1) C -> json 2) json -> lisp (CFFI definitions) 3) asdf compiles/loads the generated lisp file
1) requires a heavyweight infrastructure (a binary run by run-program), so there's support to do that lazily, and just distribute the json files generated once by the lib author.
2) is relatively lightweight, but it still requires loading a broader scope of lisp dependencies, so there's support for the lib author to run the generation and distribute the generated lisp file.
now, whether the generator code (extra dependencies) is needed is decided by whether or not the generated lisp file is up-to-date.
unfortunately i cannot test it properly because of another bug/change that i'll report in a separate thread.