(name . Bug reports for GNU Guix)(address . bug-guix@gnu.org)(address . julien@lepiller.eu)
The specific error is this:
Wrong number of values returned to continuation (expected 2)
It is caused by opam->guix-package silencing intermediate errors by
using and-let* (the poor person's Maybe monad) and returning #f when the
receiving side expects two return values.
Initial reproducer:
guix import opam -r mirage
Also happens with opam-monorepo.
Cc-ing Julien whom might know why the code is structured this way? It's
not like the calling side can handle a falsy return and the error is not
detected early either, so the user doesn't even know what is causing it.
Can I just turn it all into errors? Or maybe we can use the condition
system?