Message ID | 3bbb8349-fd68-3c2b-53b4-8b258d54ad87@disroot.org |
---|---|
State | Accepted |
Headers | show |
Series | [bug#43346] Poezio (Revised Patches) | expand |
Hi RG, On Sat, 12 Sep 2020 08:06:05 -0400 Raghav Gururajan <raghavgururajan@disroot.org> wrote: > I had to make some changes to poezio, based on your changes. Could you > push the attached patches please? ... why? I've checked the source code of poezio and it does not use aiodns, aiohttp. In order to find that out: $ guix build python-aiodns Check resulting directory to find /gnu/store/8bzk4dwhhbblz8gky9hzdnzjlsi1nk7v-python-aiodns-1.1.1/lib/python3.8/site-packages/aiodns/__init__.py That means a user of the library would have to do from aiodns import * or import aiodns . So I grepped the whole source code of poezio, and it doesn't do that. Hence it is not a direct input. It is a propagated-input in a dependency, which indeed does do the import. You can't really trust what upstream says here. Almost no package manager has non-propagated inputs, so of course they wouldn't be saying "the input such and such is propagated, and the input such and such is not propagated". Thus you have to check it yourself. Could you do so with the other dependencies before adding them? Thanks.
Hi Danny! > > ... why? > > I've checked the source code of poezio and it does not use aiodns, aiohttp. > > In order to find that out: > > $ guix build python-aiodns > > Check resulting directory to find > /gnu/store/8bzk4dwhhbblz8gky9hzdnzjlsi1nk7v-python-aiodns-1.1.1/lib/python3.8/site-packages/aiodns/__init__.py > > That means a user of the library would have to do > > from aiodns import * > > or > > import aiodns > . > > So I grepped the whole source code of poezio, and it doesn't do that. Hence > it is not a direct input. > > It is a propagated-input in a dependency, which indeed does do the import. > > You can't really trust what upstream says here. Almost no package manager > has non-propagated inputs, so of course they wouldn't be saying "the input > such and such is propagated, and the input such and such is not propagated". > > Thus you have to check it yourself. > > Could you do so with the other dependencies before adding them? Hmm. When I grep the source, they were mentioned in requirements.txt and requirements-plugins.txt. Also, the setup.py has install_requires and plugins_require sections, which are similar to required section in .pc files right? Regards, RG.
From 5a6ae94b2fafad1148f21a617295b941bc206851 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgururajan@disroot.org> Date: Sat, 12 Sep 2020 07:57:17 -0400 Subject: [PATCH 86/86] gnu: poezio: Propagated certain dependencies. * gnu/packages/messaging.scm (poezio): Propagated certain dependencies. [inputs]: Move python-aiodns, python-cffi, python-potr, python-pyasn1, python-pyasn1-modules, python-pyinotify and python-slixmpp to ... [propagated-inputs]: ... here. The above changes satisfy install.requires and extras.require sections of setup.py. --- gnu/packages/messaging.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 8f1c71563c..5f4e13365f 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -154,17 +154,18 @@ ("python-setuptools" ,python-setuptools) ("python-sphinx" ,python-sphinx))) (inputs + `(("python-aiohttp" ,python-aiohttp) + ("python-mpd2" ,python-mpd2) + ("python-pycares" ,python-pycares) + ("python-pygments" ,python-pygments) + ("python-qrcode" ,python-qrcode))) + (propagated-inputs `(("python-aiodns" ,python-aiodns) - ("python-aiohttp" ,python-aiohttp) ("python-cffi" ,python-cffi) - ("python-mpd2" ,python-mpd2) ("python-potr" ,python-potr) ("python-pyasn1" ,python-pyasn1) ("python-pyasn1-modules" ,python-pyasn1-modules) - ("python-pycares" ,python-pycares) - ("python-pygments" ,python-pygments) ("python-pyinotify" ,python-pyinotify) - ("python-qrcode" ,python-qrcode) ("python-slixmpp" ,python-slixmpp))) (synopsis "Console Jabber/XMPP Client") (description "Poezio is a free console XMPP client (the protocol on which -- 2.28.0