GNU bug report logs -
#22013
python2 versions of packages failing as inputs
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
On Thu, 26 Nov 2015 09:59:12 +0100
ludo <at> gnu.org (Ludovic Courtès) wrote:
> Ricardo Wurmus <rekado <at> elephly.net> skribis:
>
> > Efraim Flashner <efraim <at> flashner.co.il> writes:
> >
> >> Guix build python2-cryptography builds fine, guix build python2-oauthlib
> >> rebuilds python2-cryptography, and fails to build. Python2-cryptography has
> >> an additional input of python2-ipaddress which doesn't get carried along when
> >> python2-cryptography is an input and not the final build.
> >
> > I think that’s pretty normal. We have the same situation in
> > ‘python2-openssl’ where we have to explicitly add ‘python2-cryptography’
> > and remove ‘python-cryptography’.
>
> Yes, and this is due to the fact that ‘python2-cryptography’ is not just
> an automatically-translated package:
>
> (define-public python2-cryptography
> (let ((crypto (package-with-python2 python-cryptography)))
> (package (inherit crypto)
> (propagated-inputs
> `(("python2-ipaddress" ,python2-ipaddress)
> ,@(package-propagated-inputs crypto))))))
>
> If it were simply equal to (package-with-python2 python-cryptography),
> there would be no need for the manual tweak in ‘python-pyopenssl’.
>
> Efraim, could you apply the same strategy as for ‘python2-pyopenssl’ in
> ‘python2-oauthlib’?
Ok, I understand now. I thought I had to edit python2-cryptography to fix
python2-oauthlib, now I realize everytime I use python2-cryptography I need
to make sure it pulls the right one.
>
> > It would, of course, be nice if package-with-python2 could handle this
> > automatically.
>
> I think we would need a way to register “translation” results.
> Currently ‘package-with-python2’ internally uses a hash table to memoize
> conversion results. We could imagine adding something like:
>
> (register-python2-variant PY3VARIANT PY2VARIANT)
>
> to explicitly add a pair to that hash table.
>
> The downside of this approach is that this would break referential
> transparency.
>
> WDYT?
>
> Thanks,
> Ludo’.
We already have the python- and python2- variants as the same packages, just
with the occasional additional input to make it build. Mapping the two
together might speed up package-with-python2.
I'm going to keep on looking at guix/build-systems/python.scm to see if I can
come up with something to not need to specifically declare python2-foo every
time python-foo ends up being used.
--
Efraim Flashner <efraim <at> flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[Message part 2 (application/pgp-signature, inline)]
This bug report was last modified 9 years and 167 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.