Subject: Re: ‘guix import pypi’misses package dependencies

From: Ludovic Courtès <[email-masked]>
Date: Tue, 22 Jun 2021 14:33:10 +0200

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?

Actually
<https://files.pythonhosted.org/packages/fe/9d/4e15b2e74044ee051b6939c1b3ff716b0106e8f72d78eab8e08212eab44c/tablib-3.0.0.tar.gz>
does not have a ‘requirements.txt’ file, and
<https://files.pythonhosted.org/packages/16/85/078fc037b15aa1120d6a0287ec9d092d93d632ab01a0e7a3e69b4733da5e/tablib-3.0.0-py3-none-any.whl>
doesn’t have much metadata, so I don’t even get where were get that
info.

> 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.

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.

Thanks,
Ludo’.

¹ https://issues.guix.gnu.org/49169