GNU bug report logs - #32661
modify-phases: detect invalid phase addition

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Reported by: Ricardo Wurmus <rekado@HIDDEN>; dated Fri, 7 Sep 2018 21:51:02 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at 32661 <at> debbugs.gnu.org:


Received: (at 32661) by debbugs.gnu.org; 10 Sep 2018 08:39:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Sep 10 04:39:00 2018
Received: from localhost ([127.0.0.1]:51735 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fzHik-0006Ax-MQ
	for submit <at> debbugs.gnu.org; Mon, 10 Sep 2018 04:39:00 -0400
Received: from mail-it0-f47.google.com ([209.85.214.47]:52219)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <boskovits@HIDDEN>) id 1fzHii-0006Af-Ez
 for 32661 <at> debbugs.gnu.org; Mon, 10 Sep 2018 04:38:56 -0400
Received: by mail-it0-f47.google.com with SMTP id e14-v6so28472621itf.1
 for <32661 <at> debbugs.gnu.org>; Mon, 10 Sep 2018 01:38:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=sRTJazRprDFr30qVf0LFq9tqV5Q/ecrl/6bKmNu0gEU=;
 b=XMgUkMMyH+WGNcryzB//8SjXJBRzJaZ2k1qGxqZfu8gJjAA0OXChMvC9IQM6LjULT4
 LuJHfMTTMa9utlYRmSfIn3IsRWBzU6gIntZ39qqYlK5Ey5IgoN4jAPByfszZACuDRZrJ
 djCc9hMrU1JNM8zVLkx75FtFrRpJMEeMeSCW9XdtYC2oPu5BUiHmx0QTVKcQZ9oG6kVW
 SXJe7gX4/c2YRVoffxZ05Qr9vjW43ID69WSLKFNRgQx/HW80y7Kpfyn+fEzAVS+4i9Nf
 oYn0egjRDHRTWWp1Pv2Ia6BKFXPl91FK8pWNeyqK0drYy1SQJWBgNb9o1x2dOIpBPi3D
 j8Wg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=sRTJazRprDFr30qVf0LFq9tqV5Q/ecrl/6bKmNu0gEU=;
 b=AQQqEPaYifEPDTLXiYrShTM+iqTYNtl6tToDa1VDh8ePceYnBnKLS9iIGD+eCtX4r+
 Ah1gLsHn0RMh6eDtIi/dSzaHjYtHt9Z3X50FquH/bKHErY6O/RT1sH6FkHNbxlxCGF24
 ZQAcMwYyqBM7daP5Rzr9KOf+k8ruBMgGJk9PsSBHXwbmpf221U4PLd0ecRNM+Dj66VVq
 sbtkkFCy6nElfyc5aCRYxyDSjs9E5o6PtT7J5hWUhSVzioabF/E0IV0MzTZO1lbTbK+S
 a1HC73eIZtFhYMMUvMeq+DT73+xTYt8gm0Hvbi9JzvoeIP/4cPrYlPMxTVFee4XbyGSO
 lNUA==
X-Gm-Message-State: APzg51AMXjIuT52q5bkoNjx7EWg7UFPPJ3ev2NW/o/1WFWJnHjRMT9R5
 Xh82LLyyPuqT7PJKO1dyWa0JHV1+COgKgeattwYm
X-Google-Smtp-Source: ANB0Vdby0UZvEy0tiOK/eBW8X70oNBX5dAvbdZwT32py6KjKjXcUinNYNZ33Egu2nDNzXRMnzUD7LjrlOEKttchPdOw=
X-Received: by 2002:a02:5c46:: with SMTP id
 q67-v6mr17381100jab.85.1536568730852; 
 Mon, 10 Sep 2018 01:38:50 -0700 (PDT)
MIME-Version: 1.0
References: <877ejxm0z9.fsf@HIDDEN>
In-Reply-To: <877ejxm0z9.fsf@HIDDEN>
From: =?UTF-8?Q?G=C3=A1bor_Boskovits?= <boskovits@HIDDEN>
Date: Mon, 10 Sep 2018 10:38:39 +0200
Message-ID: <CAE4v=phrpqog=3nQfXbwbrZjCFU3Acst_+k4aBRHNfPgE4NzBA@HIDDEN>
Subject: Re: bug#32661: modify-phases: detect invalid phase addition
To: Ricardo Wurmus <rekado@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000006022340575804928"
X-Spam-Score: 1.2 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  Ricardo Wurmus ezt írta (időpont: 2018. szept. 7., P 23:51):
    > It is possible to add a build phase to a non-existing phase without an
   > error. The new build phase will simply not be executed. > > This is problematic
    when an inherited package augments the original > package’s phases and
   the original package is changed. Imagine that the > parent package’s “pre-configure”
    phase is removed: > > ((#:phases original-phases) > `(modify-phases ,original-phases
    > (add-after 'pre-configure 'patch-this > (lambda _ …)))) > > This would
    cause the “patch-this” phase in the child package to be > skipped without
    warning. > > This kind of thing can be especially confusing in the bootstrap,
    which > makes heavy use of inheritance. > It would be nice to fix this. Also
    I have noticed that it is easier to make mistakes when inheritance is involved,
    but these tend to only break derived packages. I am not aware of a facility
    to make it easier to build all derived packages. Am I missing something?
   I guess this would be a useful tool, but not sure about implementation. [...]
    
 
 Content analysis details:   (1.2 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  1.2 MIME_BOUND_DIGITS_15   Spam tool pattern in MIME boundary
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at http://www.dnswl.org/, no
                             trust
                             [209.85.214.47 listed in list.dnswl.org]
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail provider
                             (boskovits[at]gmail.com)
  0.0 HTML_MESSAGE           BODY: HTML included in message
  0.0 T_DKIM_INVALID         DKIM-Signature header exists but is not valid
X-Debbugs-Envelope-To: 32661
Cc: 32661 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.2 (/)

--0000000000006022340575804928
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Ricardo Wurmus <rekado@HIDDEN> ezt =C3=ADrta (id=C5=91pont: 2018. szep=
t. 7., P
23:51):

> It is possible to add a build phase to a non-existing phase without an
> error.  The new build phase will simply not be executed.
>
> This is problematic when an inherited package augments the original
> package=E2=80=99s phases and the original package is changed.  Imagine th=
at the
> parent package=E2=80=99s =E2=80=9Cpre-configure=E2=80=9D phase is removed=
:
>
> ((#:phases original-phases)
> `(modify-phases ,original-phases
>   (add-after 'pre-configure 'patch-this
>     (lambda _ =E2=80=A6))))
>
> This would cause the =E2=80=9Cpatch-this=E2=80=9D phase in the child pack=
age to be
> skipped without warning.
>
> This kind of thing can be especially confusing in the bootstrap, which
> makes heavy use of inheritance.
>
It would be nice to fix this. Also I have noticed that it is easier to make
mistakes when inheritance is involved, but these tend to only break derived
packages. I am not aware of a facility to make it easier to build all
derived packages. Am I missing something? I guess this would be a useful
tool, but not sure about implementation.

>
> --
> Ricardo
>
>
>
>
>

--0000000000006022340575804928
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div><br><br><div class=3D"gmail_quote"><div dir=3D"ltr">=
Ricardo Wurmus &lt;<a href=3D"mailto:rekado@HIDDEN">rekado@HIDDEN=
</a>&gt; ezt =C3=ADrta (id=C5=91pont: 2018. szept. 7., P 23:51):<br></div><=
blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px=
 #ccc solid;padding-left:1ex">It is possible to add a build phase to a non-=
existing phase without an<br>
error.=C2=A0 The new build phase will simply not be executed.<br>
<br>
This is problematic when an inherited package augments the original<br>
package=E2=80=99s phases and the original package is changed.=C2=A0 Imagine=
 that the<br>
parent package=E2=80=99s =E2=80=9Cpre-configure=E2=80=9D phase is removed:<=
br>
<br>
((#:phases original-phases)<br>
`(modify-phases ,original-phases<br>
=C2=A0 (add-after &#39;pre-configure &#39;patch-this<br>
=C2=A0 =C2=A0 (lambda _ =E2=80=A6))))<br>
<br>
This would cause the =E2=80=9Cpatch-this=E2=80=9D phase in the child packag=
e to be<br>
skipped without warning.<br>
<br>
This kind of thing can be especially confusing in the bootstrap, which<br>
makes heavy use of inheritance.<br></blockquote></div></div><div dir=3D"aut=
o">It would be nice to fix this. Also I have noticed that it is easier to m=
ake mistakes when inheritance is involved, but these tend to only break der=
ived packages. I am not aware of a facility to make it easier to build all =
derived packages. Am I missing something? I guess this would be a useful to=
ol, but not sure about implementation.</div><div dir=3D"auto"><div class=3D=
"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;=
border-left:1px #ccc solid;padding-left:1ex">
<br>
--<br>
Ricardo<br>
<br>
<br>
<br>
<br>
</blockquote></div></div></div>

--0000000000006022340575804928--




Information forwarded to bug-guix@HIDDEN:
bug#32661; Package guix. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 7 Sep 2018 21:50:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Sep 07 17:50:38 2018
Received: from localhost ([127.0.0.1]:49902 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fyOeE-0002Br-0N
	for submit <at> debbugs.gnu.org; Fri, 07 Sep 2018 17:50:38 -0400
Received: from eggs.gnu.org ([208.118.235.92]:39477)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <rekado@HIDDEN>) id 1fyOeB-0002Bd-TN
 for submit <at> debbugs.gnu.org; Fri, 07 Sep 2018 17:50:36 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <rekado@HIDDEN>) id 1fyOe5-0004X2-O3
 for submit <at> debbugs.gnu.org; Fri, 07 Sep 2018 17:50:30 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_DKIM_INVALID
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:41818)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <rekado@HIDDEN>) id 1fyOe5-0004WA-Eu
 for submit <at> debbugs.gnu.org; Fri, 07 Sep 2018 17:50:29 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:60447)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <rekado@HIDDEN>) id 1fyOe4-0008DU-Lf
 for bug-guix@HIDDEN; Fri, 07 Sep 2018 17:50:29 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <rekado@HIDDEN>) id 1fyOe1-0004Oj-K0
 for bug-guix@HIDDEN; Fri, 07 Sep 2018 17:50:28 -0400
Received: from sender-of-o51.zoho.com ([135.84.80.216]:21061)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <rekado@HIDDEN>) id 1fyOe1-0004LA-93
 for bug-guix@HIDDEN; Fri, 07 Sep 2018 17:50:25 -0400
ARC-Seal: i=1; a=rsa-sha256; t=1536357007; cv=none; d=zoho.com; s=zohoarc; 
 b=S2sW7ZMVWDq+qohzaqOXvy4HmAQbIhCocSfIOpLOkSgfs/WQs08N+ULeMwQlUav7whPQZMo7coW0MY0qAOk6Gk/VHj1fLJ1Glpei7busARbEn7apRSdLnMu1Uwp4Od3RuyvvUuE3HGJwwWjQywqiisD8PDWXx2XPIwadeZn1vSQ=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com;
 s=zohoarc; t=1536357007;
 h=Content-Type:Content-Transfer-Encoding:Date:From:MIME-Version:Message-ID:Subject:To:ARC-Authentication-Results;
 bh=S1OnV5JiMxZpafJBAhW6Hdv5io9Pk2h9ZkrJSr6E9yM=; 
 b=Tkw2IEWURyAT2M5VnTbRMiBDO9lUNzerMW4QROUUOW1/Xe4NuEteMzVkhgRyC1tJ+j22SYTMaBqxQIbrfEK0hHDfUMhZ302Z0ttRLoaWQoOIw8/I9GcsSItDl3Iv5BDw2XcCnj2005vSNqYf+G4Uqa5FmlDa1m5DWnHU8iaq7DY=
ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass  header.i=elephly.net;
 spf=pass  smtp.mailfrom=rekado@HIDDEN;
 dmarc=pass header.from=<rekado@HIDDEN> header.from=<rekado@HIDDEN>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1536357007; 
 s=zoho; d=elephly.net; i=rekado@HIDDEN;
 h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding;
 l=727; bh=S1OnV5JiMxZpafJBAhW6Hdv5io9Pk2h9ZkrJSr6E9yM=;
 b=Gzk7H9XXQl2ah1mnDAuqKryCtpjb/Gu6ts28ZKbqoVYpgyzrScIeSb7bMVft3T0x
 +67BConPSoNxZD9jbF1ioAAMmrLwShMm46+lTovOP4NbuZ3OxwrfzTMPythuYKfVDoe
 cGXmRUOkbW4oUMr2Cbxl+OAmqpohmlyjxPOKu7jU=
Received: from localhost (port-92-200-2-74.dynamic.qsc.de [92.200.2.74]) by
 mx.zohomail.com with SMTPS id 1536357005599175.68790066938016;
 Fri, 7 Sep 2018 14:50:05 -0700 (PDT)
User-agent: mu4e 1.0; emacs 26.1
From: Ricardo Wurmus <rekado@HIDDEN>
To: bug-guix@HIDDEN
Subject: modify-phases: detect invalid phase addition
X-URL: https://elephly.net
X-PGP-Key: https://elephly.net/rekado.pubkey
X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
Date: Fri, 07 Sep 2018 23:50:02 +0200
Message-ID: <877ejxm0z9.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-ZohoMailClient: External
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.0 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

It is possible to add a build phase to a non-existing phase without an
error.  The new build phase will simply not be executed.

This is problematic when an inherited package augments the original
package=E2=80=99s phases and the original package is changed.  Imagine that=
 the
parent package=E2=80=99s =E2=80=9Cpre-configure=E2=80=9D phase is removed:

((#:phases original-phases)
`(modify-phases ,original-phases
  (add-after 'pre-configure 'patch-this
    (lambda _ =E2=80=A6))))

This would cause the =E2=80=9Cpatch-this=E2=80=9D phase in the child packag=
e to be
skipped without warning.

This kind of thing can be especially confusing in the bootstrap, which
makes heavy use of inheritance.

--
Ricardo





Acknowledgement sent to Ricardo Wurmus <rekado@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#32661; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 10 Sep 2018 08:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.