From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id SKT/HbIy0V5+eQAA0tVLHw (envelope-from ) for ; Fri, 29 May 2020 16:05:06 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id st3dGbIy0V5OdwAA1q6Kng (envelope-from ) for ; Fri, 29 May 2020 16:05:06 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id F2AA1940416 for ; Fri, 29 May 2020 16:05:05 +0000 (UTC) Received: from localhost ([::1]:40118 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jehVI-00042c-Sv for larch@yhetil.org; Fri, 29 May 2020 12:05:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53546) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jehRO-0007Vb-JL for guix-patches@gnu.org; Fri, 29 May 2020 12:01:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:44336) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jehRO-0006g5-8O for guix-patches@gnu.org; Fri, 29 May 2020 12:01:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jehRO-0001Bv-5U for guix-patches@gnu.org; Fri, 29 May 2020 12:01:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#41472] [PATCH] gnu: Add pypy3. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 29 May 2020 16:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41472 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Lars-Dominik Braun Cc: 41472@debbugs.gnu.org Received: via spool by 41472-submit@debbugs.gnu.org id=B41472.15907680324505 (code B ref 41472); Fri, 29 May 2020 16:01:02 +0000 Received: (at 41472) by debbugs.gnu.org; 29 May 2020 16:00:32 +0000 Received: from localhost ([127.0.0.1]:55879 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jehQq-0001AU-1V for submit@debbugs.gnu.org; Fri, 29 May 2020 12:00:32 -0400 Received: from eggs.gnu.org ([209.51.188.92]:45944) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jehQk-0001A2-2h for 41472@debbugs.gnu.org; Fri, 29 May 2020 12:00:26 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:41612) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jehQe-0006HV-2C; Fri, 29 May 2020 12:00:16 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=44420 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1jehQc-0005PD-WC; Fri, 29 May 2020 12:00:15 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <20200523065648.GA1418@noor.fritz.box> Date: Fri, 29 May 2020 18:00:13 +0200 In-Reply-To: <20200523065648.GA1418@noor.fritz.box> (Lars-Dominik Braun's message of "Sat, 23 May 2020 08:56:48 +0200") Message-ID: <87tuzy20ky.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -3.3 (---) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: -1.01 X-TUID: 1ThuVv56FDCE Hi, Lars-Dominik Braun skribis: > the attached patch adds pypy3, a Python 3 JIT. As you can see this is a > lot of work, because pypy=E2=80=99s build system is rather unconventional= . I=E2=80=99m > not adding pypy2, because Python 2 is essentially EOL. > > I=E2=80=99ve tried fixing as many testcases as possible, but there are so= me I > don=E2=80=99t know how to fix. Thus I=E2=80=99m disabling the test suite,= although > everything is in place to run it. pypy itself works fine though, the > build is reproducible and passes `guix lint`. Yay! > One thing I don=E2=80=99t like right now is the dependency on gcc-toolcha= in > (i.e. gcc and binutils) in distutils. I don=E2=80=99t know how to avoid t= hat, > since building CFFI modules won=E2=80=99t work without patching. Is CFFI able to pick =E2=80=98gcc=E2=80=99 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. > I guess the next step would be figuring out how to add =E2=80=9Cpypy3-foo= =E2=80=9D > 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. >>>From bdf71850523b42e9d710618d0e0d9ea9fbfe9f87 Mon Sep 17 00:00:00 2001 > From: Lars-Dominik Braun > Date: Fri, 22 May 2020 16:02:26 +0200 > Subject: [PATCH] gnu: Add pypy3. > > * gnu/packages/python.scm (pypy3): New public variable. > * gnu/packages/patches/pypy3-7.3.1-fix-tests.patch: New file. > * gnu/local.mk (dist_patch_DATA): Add it [...] > +(define-public pypy3 > + (package > + (name "pypy3") > + ;; if you intend to upgrade this package, enable the tests and check > + ;; the results for anything abnormal 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? Nitpick: please use uppercase at the beginning and period at the end. [...] > + ("dash" ,dash) ; used as /bin/sh I=E2=80=99d suggest =E2=80=98bash-minimal=E2=80=99 here, to be consistent w= ith the other packages. [...] > + (home-page "https://www.pypy.org/") > + (synopsis "Python 3.6 JIT") Maybe =E2=80=9CPython implementation with just-in-time compilation=E2=80=9D? > + (description "This package provides a Python 3.6 just-in-time compil= er.") Maybe remove =E2=80=9C3.6=E2=80=9D since it=E2=80=99s likely to become stal= e. Bonus points if you can expound a little bit. :-) Thanks! Ludo=E2=80=99.