--- Begin Message ---
Subject: |
hard to understand error message |
Date: |
Wed, 13 Jul 2016 09:48:08 +0200 |
Hello,
I'm discovering guix, and started to try to package something.
I made an error (add a string URL parameter to license x11-style):
(license x11-style "file://LICENSE")
But this is not working, because I've forgotten the scheme call syntax
(missing parens)
I'll fix my package definition with:
(license (x11-style "file://LICENSE"))
which seems to be working OK...
But the error message I got was very unhelpful:
something.scm:10:2: warning: source expression failed to match any pattern
the line 10 is:
(package
whereas the real error happened on line 32 (the license one)
So what's wrong:
- wrong line number
- 'source expression' meaning is shady, as there is a "(source (origin
...))" element defined in the package, which is also not on line 10,
but misleading anyways
I would have expected that error to be reported as:
error: license x11-style: cannot match the pattern : file://LICENSE in
directory /tmp/guix-build-something/something/path/to/where/it/searched
--
Vincent Legoll
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#23969: hard to understand error message |
Date: |
Thu, 14 Jul 2016 19:09:59 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Hi,
Vincent Legoll <address@hidden> skribis:
> I'm discovering guix, and started to try to package something.
>
> I made an error (add a string URL parameter to license x11-style):
>
> (license x11-style "file://LICENSE")
>
> But this is not working, because I've forgotten the scheme call syntax
> (missing parens)
>
> I'll fix my package definition with:
>
> (license (x11-style "file://LICENSE"))
>
> which seems to be working OK...
>
> But the error message I got was very unhelpful:
>
> something.scm:10:2: warning: source expression failed to match any pattern
>
> the line 10 is:
> (package
>
> whereas the real error happened on line 32 (the license one)
>
> So what's wrong:
> - wrong line number
> - 'source expression' meaning is shady, as there is a "(source (origin
> ...))" element defined in the package, which is also not on line 10,
> but misleading anyways
Indeed. This is fixed or at least improved in commit
babc2c80a7e1f1b5e72fd1685ef6604b93157a8e. Now the message looks like:
--8<---------------cut here---------------start------------->8---
ice-9/psyntax.scm:1422:32: Syntax error:
gnu/packages/idutils.scm:42:4: package: invalid field specifier in form
(synopsis "Identifier database utilities" foo)
--8<---------------cut here---------------end--------------->8---
Thanks,
Ludo’.
--- End Message ---