On 2016-09-16 10:47, David Craven wrote:
AFAIK we haven't established module-level global symbol prefixing as
best
practice. In gnu/packages/perl.scm it's unnecessary.
It's a fact that if we don't establish a best practice, the (generic)
importer code won't fit all importer implementations. Maybe you could
have been a bit more vocal about this at the time. Constructively -
what do you expect me to do about this?
I'll correct myself now in my assertion that this change broke `guix
import cpan`, which uses its own string->license procedure. Indeed,
apparently the only user of the string->license and license->symbol in
(guix import utils) is the pypi importer.
My suggestion would be to move those procedures back into (guix import
pypi). I don't think they are as generic as their inclusion in (guix
import utils) might suggest. The strings they accept are specific to
pypi.
Perhaps what might also be done is to clarify in the documentation that
the importers are not meant to be "dumpers": their output is not
intended to be dumped directly into package modules and pushed upstream,
and that editing will most likely need to take place. Maybe adding a
'guix-import' command to guix.el could improve on this situation in
particular, by using geiser to detect proper symbol prefixes, since it
could have an understanding of what module the imported package is
destined for.
--
`~Eric