guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#41472] [PATCH] gnu: Add pypy3.


From: Lars-Dominik Braun
Subject: [bug#41472] [PATCH] gnu: Add pypy3.
Date: Sat, 30 May 2020 18:52:39 +0200

Hi Ludo,

> > One thing I don’t like right now is the dependency on gcc-toolchain
> > (i.e. gcc and binutils) in distutils. I don’t know how to avoid that,
> > since building CFFI modules won’t work without patching.
> Is CFFI able to pick ‘gcc’ from $PATH?  If it can do it, we can avoid
> hardcoding the absolute file name of GCC and instead leave it up to the
> user to add GCC to their environment when they want to use CFFI.
yes, it is, but it looks for the executable "cc", which – oddly – our
gcc-toolchain does not provide. Is this intentional? The updated patch
replaces it with gcc, which seems to work.

> > I guess the next step would be figuring out how to add “pypy3-foo”
> > variants for our Python packages, right?
> Maybe.  Is it generally applicable?  I hear that many core Python
> packages require CPython, which makes it hard to migrate to a different
> implementation.
For plain Python packages it works pretty much out of the box. Afaik C
extensions are supported, but software making heavy use of those does
not benefit from PyPy’s JIT.

> The advice seems to be very general; did you mean that people should
> look for something specific in the build log, for example because test
> failures are silently ignored?
No, not really. Just to run the disabled test suite and see if it goes
from “a few failures” to “everything is broken now”. I could selectively
patch the testsuite to disable currently failing tests, but I’m not
competent enough to judge which one can be skipped safely (due to
sandboxing limitations for example) and which indicate an actual
failure. I’ll remove the comment.

> I’d suggest ‘bash-minimal’ here, to be consistent with the other
> packages.
Done, actually `guix size dash` includes bash-minimal…

> Maybe “Python implementation with just-in-time compilation”?
Sounds good, done.

> Maybe remove “3.6” since it’s likely to become stale.  Bonus points if
> you can expound a little bit.  :-)
I copy-edited a paragraph from Wikipedia. Hope that’s acceptable.

Additionally I removed some test data from the output, which is not
required at runtime and removed python2 from the closure by patching a
few shebangs.

Cheers,
Lars

Attachment: 0001-gnu-Add-pypy3.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]