Subject: Re: bug#49168: ‘guix import pypi’ misses package dependencies

From: Maxim Cournoyer <[email-masked]>
Date: Tue, 22 Jun 2021 15:01:13 -0400

Hello,

Leo Prikler <[email-masked]> writes:

> Am Dienstag, den 22.06.2021, 14:33 +0200 schrieb Ludovic Courtès:
>> Hi,
>> 
>> Leo Prikler <[email-masked]> skribis:
>> 
>> > > Here, some of tablib’s dependencies are missing; the same problem
>> > > seems
>> > > to happen with python-django-import-export itself.
>> > > 
>> > > Are we failing to parse some of the PyPI metadata?
>> > I don't think so, rather it appears as though the requires.txt is
>> > somehow malformed or ill-suited for importing.  It basically marks
>> > all
>> > inputs as optional.
>> 
>> Oh.  So that’s first and foremost a bug of the PyPI package, right?

Sounds like so, if the inputs are required but marked as optional.

>> > Perhaps we could instruct the importer to emit comments for
>> > optional
>> > inputs like so
>> > ;; Optional inputs by section
>> > ;; -- [SECTION]
>> > ;; ("python-some-package" ,python-some-package)
>> > ;; ("python-some-other-package" ,python-some-other-package) 
>> > Maybe add a command line switch to toggle these comments or a way
>> > of
>> > assuming some section, e.g. [cli] to be the thing we want to build
>> > for
>> > a package.
>> 
>> A CLI switch to include optional dependencies would be nice.

+1.

>> As for emitting comments, the (not-so-) pretty printer written for
>> ‘guix
>> style’¹ could come in handy for importers and more generally in any
>> place where we need to emit comments.
> Indeed, I wasn't thinking about that when I wrote this reply, but I see
> what you mean.  Should we strive to have such a pretty-printer in Guile
> as well or do we keep it to ourselves for now? :)

This sounds good too, although I haven't read about that new fancy
printer yet.

Maxim