Hello,

Julien Lepiller <jul...@lepiller.eu> skribis:
> Users tend to copy what they see in our code base, so it's not rare to have 
> to help them realise that if their last statement is (define-public ...), the 
> file doesn't evaluate to a package.
>
> Running guix build -f mypackage.scm at least gives an error saying it doesn't 
> know how to compile #<unspecified>.
>
> Running guix package -f mypackage.scm returns immediately with no error 
> message and a status of 0, but doesn't actually build or install anything. 
> You can even try with an empty file :)
>
> There should be an error message, and probably even a hint.

Fixed in f9c0400392843540a87985a67ffb9fb6e4dbc2fa.  It doesn’t provide a
hint though.

I thought we may want to provide ‘load*’ a type predicate that it would
check, so that it can say “got #<undefined>, expected <package>”.
However, we’d need a contract rather than a mere predicate to have nice
error reporting, so I decided to punt on this for now.

Ludo’.



Reply via email to