From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hartmut Goebel Subject: Re: [PATCH 00/14] Change python-build-system (fixes bug 20765) Date: Tue, 4 Oct 2016 23:39:49 +0200 Message-ID: <149f0d8c-94a2-122e-9fb1-d55a34767f04@crazy-compilers.com> References: <1475071107-10765-1-git-send-email-h.goebel@crazy-compilers.com> <57EBCD98.9020407@goebel-consult.de> <87mvism34v.fsf@ike.i-did-not-set--mail-host-address--so-tickle-me> <57EC008A.4030006@crazy-compilers.com> <87bmz5ih9u.fsf@ike.i-did-not-set--mail-host-address--so-tickle-me> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57265) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1brXRM-0007Ws-GP for guix-devel@gnu.org; Tue, 04 Oct 2016 17:39:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1brXRJ-0002KS-8e for guix-devel@gnu.org; Tue, 04 Oct 2016 17:39:56 -0400 Received: from mail-out.m-online.net ([212.18.0.10]:44387) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1brXRJ-0002K9-1u for guix-devel@gnu.org; Tue, 04 Oct 2016 17:39:53 -0400 In-Reply-To: <87bmz5ih9u.fsf@ike.i-did-not-set--mail-host-address--so-tickle-me> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Marius Bakke , guix-devel@gnu.org Am 30.09.2016 um 16:39 schrieb Marius Bakke: > Also some packages are missing a dependency on "python-py"[1]. FYI: I found an example: python-pytest-cov fails in the "check" phase. This is an undocumented requirement for the tests, resp. this is an install-requirement for pytest, but pytest has "python-py" defined as a normal input. I investigated this and found that the existing build-system was kind of broken :-( Prior to my changes, a .pth file was created in in many cases - while now it is never creates. (For those not common to Python: .pth-files are an old way to specify additional directories to be added to sys.path (PYTHONPATH). .pth-file were rarely used until setuptools and easy-install came up. And now since pip is the recommended install method, they are bound to vanish again.) This .pth file did not only point to the .egg-directory (or file, in case of a zipped .egg), but also to the .eggs of the requirement of the current package. In the case of pytest, the .pth file looked something like thus: ./pytest-1.2.3.egg /gnu/store/=E2=80=A6-python-py-3.2.1/lib/python3.4/site-packages/py-3.= 2.1.egg Thus the .pth-file did "propagate" the inputs. Due to my change the .pth-file is gone now, and thus all required inputs need to be declared as propageded-inputs as uix. I'm working on this, but it requires to have a look at many of the packages' source to do it right and will take some days to finish. --=20 Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible |