GNU bug report logs - #68163
[PATCH] gnu: Prevent stale cache use when `%package-module-path' is parameterized.

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-patches; Reported by: antlers <antlers@HIDDEN>; Keywords: patch; dated Sun, 31 Dec 2023 06:25:02 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

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


Received: (at 68163) by debbugs.gnu.org; 17 Jan 2024 08:33:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 17 03:33:10 2024
Received: from localhost ([127.0.0.1]:50678 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rQ1ME-0004f7-82
	for submit <at> debbugs.gnu.org; Wed, 17 Jan 2024 03:33:10 -0500
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:60985)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rQ1MB-0004eu-JU
 for 68163 <at> debbugs.gnu.org; Wed, 17 Jan 2024 03:33:09 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 695E85C0103;
 Wed, 17 Jan 2024 03:33:01 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Wed, 17 Jan 2024 03:33:01 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1705480381; x=1705566781; bh=X45ORw9nvO
 0mYQYr4LNBpceraneEYmg1Bp1ixCWl+Gg=; b=O6GOyQEF4HOjz11MNcLJotb7Lt
 dq7PU290hJj1qJk4mDp5PJrc2v9e71SkeCtxGD/79s/nHUSlVyZRCdQCqtKRUV3g
 +gbe2zc0xuzFEKEBnh5VOhC4Fec596lJJ6Jg7TDIAvhK9XGp2E+nwWtehUwUYJrG
 gOIVnwBTDlgLrwVl3XFQyxHXkIyCbnM3yRvOj67nPE335E4Nxh7yeXDkyxIR93BB
 LPQ4HpS8sSicIkmE6VfFEAmb1XXOkPfSbiRCmxw1s1scIbSP8aYdKZxuxU47faNX
 3M2JguQ0BQwiPvTRvcNVyUwm0Fx+cUkTRN791luUNVJgLmpghWAvOZk8wNvw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm3; t=1705480381; x=1705566781; bh=X45ORw9nvO0mYQYr4LNBpceraneE
 Ymg1Bp1ixCWl+Gg=; b=rUEtcKMnSpKBTPIC9CqUQVRl+QOUuMCyecaAvfMtLJqs
 35xvcAtoZvc51BdnUz8oooLxllXLSGHyacTF85ckl5EbgNA64pm2uQDx+CoKYT9F
 LOLICWvxI1n/RWS0Bmiu0kwZBPanmAfRKS/MwRIk/b8XTrvocLr2HoTh2si8qOX8
 hFQKjFM73SSdohADVnc0Wnq5sRd1rMBNBlH/5afE/MVym580Tf1KD9+2EYvaslDU
 jrgVaaOKWyJLgXxTsxKPlXLqT78LO/GK14VBEPPcYUa4StXTnMcwxE8KI2PgqGQ7
 RMlSRC/V78K3NaSkqMU37/DT0Csnlp73qQItDsuE1Q==
X-ME-Sender: <xms:vJCnZXQcEh0DtAgOFf7hHcssB6F5Fx90-V2xidD225BSw952-PSkRw>
 <xme:vJCnZYxxLMGSbcNQd7eYuoZYPv-I6YE1jWw1zf38eAfa54ifkKzt7ebOMIHTaVoRX
 VrkQ_yyLRq7CUeMs7s>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdejgedguddvudcutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomheprghn
 thhlvghrshcuoegrnhhtlhgvrhhssehilhhluhgtihgurdhnvghtqeenucggtffrrghtth
 gvrhhnpeeiffejfffffefhhfehtedtieekteffudeikefgteeludeuuedvffeggfekkeev
 udenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnh
 htlhgvrhhssehilhhluhgtihgurdhnvght
X-ME-Proxy: <xmx:vJCnZc14YDqhpJF8hQ08BB70n2cQdsEuarWFmNLi-vxhjxjfklm6Ww>
 <xmx:vJCnZXAJe-9VEBWVXhWoGwipV70hs6s-vSL13mi9iA8TH5yXDNQ_TA>
 <xmx:vJCnZQhpYZEqP8-n1zjlADRJ1XMSVPMltJEW0BfZ8ziGq7uSOJDVKg>
 <xmx:vZCnZbWGz5XPxEIWxPbxGOWdOL_GdDfoq2S2NlZiVa-Um2Mb_q4u-w>
Feedback-ID: i7f19465a:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 88D6F36A0076; Wed, 17 Jan 2024 03:33:00 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <ac191eec-887e-4e96-bc65-09b0917389c4@HIDDEN>
In-Reply-To: <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
 <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
 <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
Date: Wed, 17 Jan 2024 00:32:39 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 antlers <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 68163
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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: -1.7 (-)

Updates:

> I don't know if a.) there's any cause to be concerned about the
> performance of this tweak, or b.) that you care to support the
> behavior at all, but I hope I've made my own use-case clear and the
> patch is there if you see fit c:

a.) I glued hyperfine to a pair of guix repl endpoints, scaled up until I hit segfaults, no difference
b.) Maybe `specification->package' just has some particular notion of what's "current", like "current-channels" does, in which case we can rule out complacence with the parameter as a non-feature-- but I certainly isn't the same notion.
c.) I had the bright idea to set GUIX_PACKAGE_PATH at build time, first on the command-line and then in the channel modules, but it didn't work out-- felt silly for a minute there. Hey, how do third party channels usually resolve `search-path'? Isn't that the same thing, packages and patches in the same repo? Or are they just expected to use `local-file' and relative paths? I'll look into this another time.

If B or C had come to fruition I'd have closed the issue with 'em, and something like B is up for interpretation-- I don't mind either way (happy to carry the patch on my own). But if I enjoy these instances of syntax-sugar in my own channels (which I do :p), and if the Guix repo utilizes + is cleaner for them as well, then I figure it'd be a shame (barring a solution like C) to interpret the implementation as one which excludes other channels.




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

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


Received: (at submit) by debbugs.gnu.org; 17 Jan 2024 08:33:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 17 03:33:20 2024
Received: from localhost ([127.0.0.1]:50683 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rQ1MN-0004fT-L5
	for submit <at> debbugs.gnu.org; Wed, 17 Jan 2024 03:33:19 -0500
Received: from lists.gnu.org ([2001:470:142::17]:60312)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rQ1ML-0004fG-E8
 for submit <at> debbugs.gnu.org; Wed, 17 Jan 2024 03:33:18 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rQ1MF-0004hs-2e
 for guix-patches@HIDDEN; Wed, 17 Jan 2024 03:33:11 -0500
Received: from out2-smtp.messagingengine.com ([66.111.4.26])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rQ1MA-0007uK-Et; Wed, 17 Jan 2024 03:33:10 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 695E85C0103;
 Wed, 17 Jan 2024 03:33:01 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Wed, 17 Jan 2024 03:33:01 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1705480381; x=1705566781; bh=X45ORw9nvO
 0mYQYr4LNBpceraneEYmg1Bp1ixCWl+Gg=; b=O6GOyQEF4HOjz11MNcLJotb7Lt
 dq7PU290hJj1qJk4mDp5PJrc2v9e71SkeCtxGD/79s/nHUSlVyZRCdQCqtKRUV3g
 +gbe2zc0xuzFEKEBnh5VOhC4Fec596lJJ6Jg7TDIAvhK9XGp2E+nwWtehUwUYJrG
 gOIVnwBTDlgLrwVl3XFQyxHXkIyCbnM3yRvOj67nPE335E4Nxh7yeXDkyxIR93BB
 LPQ4HpS8sSicIkmE6VfFEAmb1XXOkPfSbiRCmxw1s1scIbSP8aYdKZxuxU47faNX
 3M2JguQ0BQwiPvTRvcNVyUwm0Fx+cUkTRN791luUNVJgLmpghWAvOZk8wNvw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm3; t=1705480381; x=1705566781; bh=X45ORw9nvO0mYQYr4LNBpceraneE
 Ymg1Bp1ixCWl+Gg=; b=rUEtcKMnSpKBTPIC9CqUQVRl+QOUuMCyecaAvfMtLJqs
 35xvcAtoZvc51BdnUz8oooLxllXLSGHyacTF85ckl5EbgNA64pm2uQDx+CoKYT9F
 LOLICWvxI1n/RWS0Bmiu0kwZBPanmAfRKS/MwRIk/b8XTrvocLr2HoTh2si8qOX8
 hFQKjFM73SSdohADVnc0Wnq5sRd1rMBNBlH/5afE/MVym580Tf1KD9+2EYvaslDU
 jrgVaaOKWyJLgXxTsxKPlXLqT78LO/GK14VBEPPcYUa4StXTnMcwxE8KI2PgqGQ7
 RMlSRC/V78K3NaSkqMU37/DT0Csnlp73qQItDsuE1Q==
X-ME-Sender: <xms:vJCnZXQcEh0DtAgOFf7hHcssB6F5Fx90-V2xidD225BSw952-PSkRw>
 <xme:vJCnZYxxLMGSbcNQd7eYuoZYPv-I6YE1jWw1zf38eAfa54ifkKzt7ebOMIHTaVoRX
 VrkQ_yyLRq7CUeMs7s>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdejgedguddvudcutefuodetggdotefrod
 ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
 necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
 enucfjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomheprghn
 thhlvghrshcuoegrnhhtlhgvrhhssehilhhluhgtihgurdhnvghtqeenucggtffrrghtth
 gvrhhnpeeiffejfffffefhhfehtedtieekteffudeikefgteeludeuuedvffeggfekkeev
 udenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnh
 htlhgvrhhssehilhhluhgtihgurdhnvght
X-ME-Proxy: <xmx:vJCnZc14YDqhpJF8hQ08BB70n2cQdsEuarWFmNLi-vxhjxjfklm6Ww>
 <xmx:vJCnZXAJe-9VEBWVXhWoGwipV70hs6s-vSL13mi9iA8TH5yXDNQ_TA>
 <xmx:vJCnZQhpYZEqP8-n1zjlADRJ1XMSVPMltJEW0BfZ8ziGq7uSOJDVKg>
 <xmx:vZCnZbWGz5XPxEIWxPbxGOWdOL_GdDfoq2S2NlZiVa-Um2Mb_q4u-w>
Feedback-ID: i7f19465a:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 88D6F36A0076; Wed, 17 Jan 2024 03:33:00 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <ac191eec-887e-4e96-bc65-09b0917389c4@HIDDEN>
In-Reply-To: <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
 <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
 <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
Date: Wed, 17 Jan 2024 00:32:39 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 antlers <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
Received-SPF: pass client-ip=66.111.4.26; envelope-from=antlers@HIDDEN;
 helo=out2-smtp.messagingengine.com
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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.1 (/)

Updates:

> I don't know if a.) there's any cause to be concerned about the
> performance of this tweak, or b.) that you care to support the
> behavior at all, but I hope I've made my own use-case clear and the
> patch is there if you see fit c:

a.) I glued hyperfine to a pair of guix repl endpoints, scaled up until I hit segfaults, no difference
b.) Maybe `specification->package' just has some particular notion of what's "current", like "current-channels" does, in which case we can rule out complacence with the parameter as a non-feature-- but I certainly isn't the same notion.
c.) I had the bright idea to set GUIX_PACKAGE_PATH at build time, first on the command-line and then in the channel modules, but it didn't work out-- felt silly for a minute there. Hey, how do third party channels usually resolve `search-path'? Isn't that the same thing, packages and patches in the same repo? Or are they just expected to use `local-file' and relative paths? I'll look into this another time.

If B or C had come to fruition I'd have closed the issue with 'em, and something like B is up for interpretation-- I don't mind either way (happy to carry the patch on my own). But if I enjoy these instances of syntax-sugar in my own channels (which I do :p), and if the Guix repo utilizes + is cleaner for them as well, then I figure it'd be a shame (barring a solution like C) to interpret the implementation as one which excludes other channels.




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

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


Received: (at 68163) by debbugs.gnu.org; 13 Jan 2024 04:41:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 23:41:43 2024
Received: from localhost ([127.0.0.1]:38130 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rOVq3-0005kq-Hi
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 23:41:43 -0500
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:37467)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rOVpy-0005kZ-53
 for 68163 <at> debbugs.gnu.org; Fri, 12 Jan 2024 23:41:41 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 8F5725C0040;
 Fri, 12 Jan 2024 23:41:34 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Fri, 12 Jan 2024 23:41:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1705120894; x=1705207294; bh=si+WD9qi/5
 x0PR5e+if0N++vU8EBbgrJy1/u3rb+jDg=; b=0XxTDIZzRcYjbNVJfPlHp0Yv2Z
 Jg45m5B+0U11IJhc0Oy9kjcRVM+b6N4nSU+jo77XBE6yLlgyTD0Fby4ynKc3ELGe
 qg6kUxdDylm116BTkcWD+xlX73Sos3Nrd9XWs8qY63rkdz0OVLl6kV7hBoqd0jo1
 ukj3OE4x1Xaijm9CFDJdiFMJSXesgDGKwDSqJlNWllDdQJ3wPjJyGXVhXxMnNRWE
 9ue0ytCjT1twPNfCC+VHohqTAQJoy81p3k8e09wkBmt/nYyBXN7Ps7NQTCDAokfp
 tkBr1QM8whc0ETc/HWNbAMgkyCCTzwKrJcyyub7UKTtZDWuY468UkzFLLFEw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; t=1705120894; x=1705207294; bh=si+WD9qi/5x0PR5e+if0N++vU8EB
 bgrJy1/u3rb+jDg=; b=3gHi3lQmKGyZjJi+epzSnYsO9HZDILhxZ7ewNhnRuP6a
 UhlhDq2qVqOd+rd6/BXHjVw5m4EGDtA/hQlSISTTATlmqcE+iA6vDf59WDnrYJ0h
 2CNkBpW8Sj+bWvL2h+SRsH3/iXn+vYHDeu0YzzLGvTneANbfkKXjj8P4IHCVCmLb
 iNTOL7PtsMaHF7EqoV6+3fOo61MjIQVY9mL2Gx3jiGNMq5cKnqB3IE/usQl7vSnh
 XrFdajORqLXOc9McssUVz77BFE64kI2slaWqhab8r5q2KMfEwMmA5+EJH8jtjbGM
 ETrpaAVBPoJzVnA1IZ11xOEyqfA/mLzqMHJ9QHLMVQ==
X-ME-Sender: <xms:fhSiZU_k380CLl2TegOnyAjkWcPPWmYIUtHYkjG-9AeePANAM60InQ>
 <xme:fhSiZctLPRLinEcu-8jBXru8MufjXts3MRxoBA6VeScciu6ygDF5rfo1apmNresS9
 -7UKsrmv05zxZRgHUU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdeiiedgjeduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepofgfggfkjghffffhvfevufgtsehttdertderredtnecuhfhrohhmpegrnhht
 lhgvrhhsuceorghnthhlvghrshesihhllhhutghiugdrnhgvtheqnecuggftrfgrthhtvg
 hrnhepieffjeffffefhffhheettdeikeetffduieekgfetleduueeuvdffgefgkeekvedu
 necuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprghnth
 hlvghrshesihhllhhutghiugdrnhgvth
X-ME-Proxy: <xmx:fhSiZaD_tbZ7tW16EFI9i1Ubd9Y41WDYpO8TRKLsBV4L9T_iGd1b1Q>
 <xmx:fhSiZUcDi_vC3vOP6sG2ai_2-m8_bJHfvVsD0MXaS_KOzXqMFEFDIQ>
 <xmx:fhSiZZPz2dJx-Xp-m1oId9jIAX__mOUJpL5LVXeYgcuC7VeiymFBtw>
 <xmx:fhSiZVD72sTP-t6CFZc55l3SR1_jTANSEJgQwr8oXlvzkUgTWUJXBw>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id E869036A0076; Fri, 12 Jan 2024 23:41:33 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
In-Reply-To: <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
 <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
Date: Fri, 12 Jan 2024 20:41:11 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 antlers <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 68163
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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: -1.7 (-)

> ii) Could you explain when it fails exactly and running which Guix
>     command-line?
 
Oh, I didn't answer this literally! Apologies for the extra mail, but I do have
an important clarification. I refer several times to "compile time" and
"compiling the channel"; what I am referring to is the lowering of it's
derivation, which happens before the package cache or profile is built when
running `guix pull` or `guix time-machine -C [...]`, not specifically the      
compilation of the SCM files comprising the channel (though my note about
having had to remove compilation artifacts from a successful build to surface
the issue after a rollback remains, and contributes to my confusion of terms).




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

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


Received: (at submit) by debbugs.gnu.org; 13 Jan 2024 04:41:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 23:41:48 2024
Received: from localhost ([127.0.0.1]:38135 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rOVq7-0005l6-S4
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 23:41:48 -0500
Received: from lists.gnu.org ([2001:470:142::17]:39708)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rOVq4-0005kf-Fy
 for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 23:41:45 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rOVq0-00032b-GQ
 for guix-patches@HIDDEN; Fri, 12 Jan 2024 23:41:40 -0500
Received: from out1-smtp.messagingengine.com ([66.111.4.25])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rOVpy-0008VM-OL; Fri, 12 Jan 2024 23:41:40 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 8F5725C0040;
 Fri, 12 Jan 2024 23:41:34 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Fri, 12 Jan 2024 23:41:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1705120894; x=1705207294; bh=si+WD9qi/5
 x0PR5e+if0N++vU8EBbgrJy1/u3rb+jDg=; b=0XxTDIZzRcYjbNVJfPlHp0Yv2Z
 Jg45m5B+0U11IJhc0Oy9kjcRVM+b6N4nSU+jo77XBE6yLlgyTD0Fby4ynKc3ELGe
 qg6kUxdDylm116BTkcWD+xlX73Sos3Nrd9XWs8qY63rkdz0OVLl6kV7hBoqd0jo1
 ukj3OE4x1Xaijm9CFDJdiFMJSXesgDGKwDSqJlNWllDdQJ3wPjJyGXVhXxMnNRWE
 9ue0ytCjT1twPNfCC+VHohqTAQJoy81p3k8e09wkBmt/nYyBXN7Ps7NQTCDAokfp
 tkBr1QM8whc0ETc/HWNbAMgkyCCTzwKrJcyyub7UKTtZDWuY468UkzFLLFEw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; t=1705120894; x=1705207294; bh=si+WD9qi/5x0PR5e+if0N++vU8EB
 bgrJy1/u3rb+jDg=; b=3gHi3lQmKGyZjJi+epzSnYsO9HZDILhxZ7ewNhnRuP6a
 UhlhDq2qVqOd+rd6/BXHjVw5m4EGDtA/hQlSISTTATlmqcE+iA6vDf59WDnrYJ0h
 2CNkBpW8Sj+bWvL2h+SRsH3/iXn+vYHDeu0YzzLGvTneANbfkKXjj8P4IHCVCmLb
 iNTOL7PtsMaHF7EqoV6+3fOo61MjIQVY9mL2Gx3jiGNMq5cKnqB3IE/usQl7vSnh
 XrFdajORqLXOc9McssUVz77BFE64kI2slaWqhab8r5q2KMfEwMmA5+EJH8jtjbGM
 ETrpaAVBPoJzVnA1IZ11xOEyqfA/mLzqMHJ9QHLMVQ==
X-ME-Sender: <xms:fhSiZU_k380CLl2TegOnyAjkWcPPWmYIUtHYkjG-9AeePANAM60InQ>
 <xme:fhSiZctLPRLinEcu-8jBXru8MufjXts3MRxoBA6VeScciu6ygDF5rfo1apmNresS9
 -7UKsrmv05zxZRgHUU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdeiiedgjeduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepofgfggfkjghffffhvfevufgtsehttdertderredtnecuhfhrohhmpegrnhht
 lhgvrhhsuceorghnthhlvghrshesihhllhhutghiugdrnhgvtheqnecuggftrfgrthhtvg
 hrnhepieffjeffffefhffhheettdeikeetffduieekgfetleduueeuvdffgefgkeekvedu
 necuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprghnth
 hlvghrshesihhllhhutghiugdrnhgvth
X-ME-Proxy: <xmx:fhSiZaD_tbZ7tW16EFI9i1Ubd9Y41WDYpO8TRKLsBV4L9T_iGd1b1Q>
 <xmx:fhSiZUcDi_vC3vOP6sG2ai_2-m8_bJHfvVsD0MXaS_KOzXqMFEFDIQ>
 <xmx:fhSiZZPz2dJx-Xp-m1oId9jIAX__mOUJpL5LVXeYgcuC7VeiymFBtw>
 <xmx:fhSiZVD72sTP-t6CFZc55l3SR1_jTANSEJgQwr8oXlvzkUgTWUJXBw>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id E869036A0076; Fri, 12 Jan 2024 23:41:33 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <4bc21e5a-dccb-4427-9ad4-2225ce132d39@HIDDEN>
In-Reply-To: <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
 <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
Date: Fri, 12 Jan 2024 20:41:11 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 antlers <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
Received-SPF: pass client-ip=66.111.4.25; envelope-from=antlers@HIDDEN;
 helo=out1-smtp.messagingengine.com
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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.1 (/)

> ii) Could you explain when it fails exactly and running which Guix
>     command-line?
 
Oh, I didn't answer this literally! Apologies for the extra mail, but I do have
an important clarification. I refer several times to "compile time" and
"compiling the channel"; what I am referring to is the lowering of it's
derivation, which happens before the package cache or profile is built when
running `guix pull` or `guix time-machine -C [...]`, not specifically the      
compilation of the SCM files comprising the channel (though my note about
having had to remove compilation artifacts from a successful build to surface
the issue after a rollback remains, and contributes to my confusion of terms).




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

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


Received: (at submit) by debbugs.gnu.org; 13 Jan 2024 00:24:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 19:24:12 2024
Received: from localhost ([127.0.0.1]:38004 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rORop-0004TF-UE
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 19:24:12 -0500
Received: from lists.gnu.org ([2001:470:142::17]:40494)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rORol-0004Sg-Ae
 for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 19:24:09 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rORoe-00006J-1X
 for guix-patches@HIDDEN; Fri, 12 Jan 2024 19:24:02 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rORoY-0004qj-Jx; Fri, 12 Jan 2024 19:23:57 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id BD18F5C0199;
 Fri, 12 Jan 2024 19:23:51 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Fri, 12 Jan 2024 19:23:51 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1705105431;
 x=1705191831; bh=+cY6Vx1Pj2UgZ0AKiNmsdqy3AX07UIuvmShB1Qfbmpc=; b=
 Bo81GCZjjIMDsb3PgTMg39U/UOak8sdorVDOboJleJXSTZ7sKhk/rjTtucMbqW5W
 kmo782oE2UPlxNFNlAvdzCYrF3TJBQLsk1vuBb369nfuM4a6frV8N9YLcuEGdFb4
 PgD9fwAyBVQrmyStKJahZLbmnLK/QI1/LKZe/BVvno/q8OIedP7zmUnP+MjnQZ4Y
 gCH6zrqqkSYGY1YThMm64T3xZ+zMK7a7o13ifmTvy1QrBfj6KeYuDuV5jiy1rIrB
 dyj5PYlXYFgCy9Nhd5pxYrK6HZS9Be3gwpqUJvHGeRCQjNEWw2DNyn4Cm3JlZ8kz
 NE9YDXejTd/15p+ThZQ+tA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1705105431; x=
 1705191831; bh=+cY6Vx1Pj2UgZ0AKiNmsdqy3AX07UIuvmShB1Qfbmpc=; b=7
 zfJPsWsJ6CXmZxdDqBpUbOmicqw3PXmIqetpabO9v5BrFai/nbOkxuitoxLGr5ZM
 omLP3+HnYdB0X1R3jL/j0LhygUhYPxje155CTtp+eVaSbTDt36Nvx8IohNUskxvN
 C0lK/0eAraT/CE7VrrtMC12JBpkL0jA+MDh0Ec3YfW3JVdd50iOxP1TlwB6svOm0
 Jcw6B5xTfZ8sR5qtXOfIP0WfbDsSTO5J8xlCfUJuLDfhZu4vc9t6mdG8c1A2B+QT
 zBtww4N8n42Y3iD6YtNV2lCPyStBv8SbJ7PAyiR+dUri96qRTKdb9J7RJyXs5FM4
 DW1xcxkpLlMR6fMOakz8w==
X-ME-Sender: <xms:F9ihZSPGFf09rw4hE0_dN3g_Np3yWj34sXvqtrGfmIptm_kw7K_hcg>
 <xme:F9ihZQ_rgpwt5axXAM1geqIluzX_Hh9NFLm_TV6fyk2O4m-Kr9iq04-VWfr87Lmw4
 4qPCBBFrzb4UYqZWw8>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdeiiedgvddvucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepofgfggfkjghffffhvfevufgtgfesthhqredtreerjeenucfhrhhomheprghn
 thhlvghrshcuoegrnhhtlhgvrhhssehilhhluhgtihgurdhnvghtqeenucggtffrrghtth
 gvrhhnpeeghfdttefhvedujeejudejffekffefleeiveegleduhedtkeehfeeklefhfeeu
 tdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnh
 htlhgvrhhssehilhhluhgtihgurdhnvght
X-ME-Proxy: <xmx:F9ihZZTnIe7K3Ei5-3y8pAOopKw1GBTk7hsokQq26Ocz1uig2nj75Q>
 <xmx:F9ihZSv-0fPieZvS1P8qEMF2FxmUoiXVhSOdgiepVaf9swRhNpv9cQ>
 <xmx:F9ihZaeeq1DJIRQGM_Ee34kr_NmobywRi85O83qlbdaMeNRC3qRQXw>
 <xmx:F9ihZST6XAHu90Sh5oo52cnECUliamZ3zkGpV3WW-gSGIxxUUA1ekw>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 35CD236A0076; Fri, 12 Jan 2024 19:23:51 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
In-Reply-To: <87mstbzq26.fsf@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
Date: Fri, 12 Jan 2024 16:23:30 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 "antlers via Guix-patches via" <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain;charset=utf-8
Content-Transfer-Encoding: quoted-printable
Received-SPF: pass client-ip=66.111.4.27; envelope-from=antlers@HIDDEN;
 helo=out3-smtp.messagingengine.com
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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.1 (/)

> =E2=80=99fold-packages=E2=80=99 accepts a list of modules as argument =
and it
> would be the way you should go

Thanks for the suggestion! I was so focused on making `specification->pa=
ckage'
cooperate, I failed to consider calling `fold-packages' directly; `#:mod=
ules'
is exactly the argument I was looking for. I've given it a spin and, whi=
le I
have some notes, it works great.

I still think it's worth considering whether the behavior of
`find-packages-by-name/direct' and it's closure in regards to the
parameterization of `%package-module-path' is intentional. A user's intu=
ition
ought to be that dynamically binding a parameter will have the desired a=
nd
expected effect, down to the bottom of the call-stack, and
`find-packages-by-name/direct' is arguably presented as the implementati=
on
"under" the caching layer. I'm not sure when it's internal cache is
instantiated, and find this behavior surprising.

Returning to `fold-packages' there are two differences of note, each ste=
mming
from how `:guix' approximates guix's standard command-line format by
appropriating the existing modules.

1.)=20

> I guess [...], right?

> If yes, [...] filter based on package name (and/or other information t=
racked
> under use-package keyword :guix).

Right! And, almost! Package specifications do not always match the
`package-name' field of the package they resolve to. Consider `package+o=
utput'
specifications like the venerable `gcc:lib' (RIP), and package aliases l=
ike
`gnupg-1', `linux-libre-lts', or `texinfo-7'. This is solve-able (maybe =
with
`package-name->name+version'), but it's neither as simple as filtering on
`package-name' nor as elegant as re-using the existing modules-- should =
they
behave appropriately under parameterization.

2)

I can avoid using `specification->package' directly, but would also need=
 to
special-case `options->transformation' when the second argument to
`--with-graft` is such a specification because, unlike the other
transformations, it resolves that via `package->specification' before re=
turning
a procedure (uhm, were I in need of such a transformation). Another solv=
able
problem, but also another example of an entry-point that could just
`do-what-I-mean' under parameterization-- and there are likely more.

Why rebuild two spokes when, with a small and deliberate tweak, the old =
wheel
could cooperate with an existing mechanism for exactly this sort of re-t=
ooling?

---

I feel like that's a great place to leave off, but I appreciate your que=
stions
and will take a bit more time answer the rest.=20

>  i)  Could you provide some details about the tree of your channel?

Just that it's some custom packages, a home-env with local-files, and so=
me
dubious programming, all in one channel. If the packages were in a separ=
ate
channel, or the home-env was kept outside of the repo and provided on the
command-line, everything would work just fine. The rest should be clear =
from my
elaborations.

> When you run =E2=80=9Cguix pull=E2=80=9D, it builds the Guix channel a=
nd all the other
> custom channels, therefore all the packages should be visible from
> =E2=80=99specification->package=E2=80=99.  Aren=E2=80=99t they?

>  ii) Could you explain when it fails exactly and running which Guix
>      command-line?

I have a typo in my original message:

> this is a compile-time error, so _profiles_ containing such code fail =
to build

It's *channels*, not profiles (and with the notable exception of guix it=
self),
that fail to compile when attempting to resolve specifications for packa=
ges
they define. We fail before Guix builds the package cache. It might help=
 stage
this in a gexp, but `home-profile-service-type' takes a list (not a gexp=
) and
I'm not sure (yet) how to write the service I need or how that would eff=
ect
whether / when it fails. If I knew the package cache better I might know=
 when /
what's missing it (aside from myself) and `force'-ing the cache in the c=
losure
before I get there.

Oh my, time does fly!
Thanks again for the questions, and the help. I really could roll with
`fold-packages', but I'd rather keep the patch than build any more spoke=
s. I
think the behavior is cleaner and I hope I've made a good case for that,
regardless of whether I'd recommend use-cases indulging in dynamic bindi=
ng--
the parameter already exists and should treated as a volatile value.




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

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


Received: (at 68163) by debbugs.gnu.org; 13 Jan 2024 00:23:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 19:23:58 2024
Received: from localhost ([127.0.0.1]:37998 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rORoc-0004SO-CZ
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 19:23:58 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:44013)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rORoZ-0004S9-5w
 for 68163 <at> debbugs.gnu.org; Fri, 12 Jan 2024 19:23:56 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id BD18F5C0199;
 Fri, 12 Jan 2024 19:23:51 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Fri, 12 Jan 2024 19:23:51 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1705105431;
 x=1705191831; bh=+cY6Vx1Pj2UgZ0AKiNmsdqy3AX07UIuvmShB1Qfbmpc=; b=
 Bo81GCZjjIMDsb3PgTMg39U/UOak8sdorVDOboJleJXSTZ7sKhk/rjTtucMbqW5W
 kmo782oE2UPlxNFNlAvdzCYrF3TJBQLsk1vuBb369nfuM4a6frV8N9YLcuEGdFb4
 PgD9fwAyBVQrmyStKJahZLbmnLK/QI1/LKZe/BVvno/q8OIedP7zmUnP+MjnQZ4Y
 gCH6zrqqkSYGY1YThMm64T3xZ+zMK7a7o13ifmTvy1QrBfj6KeYuDuV5jiy1rIrB
 dyj5PYlXYFgCy9Nhd5pxYrK6HZS9Be3gwpqUJvHGeRCQjNEWw2DNyn4Cm3JlZ8kz
 NE9YDXejTd/15p+ThZQ+tA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1705105431; x=
 1705191831; bh=+cY6Vx1Pj2UgZ0AKiNmsdqy3AX07UIuvmShB1Qfbmpc=; b=7
 zfJPsWsJ6CXmZxdDqBpUbOmicqw3PXmIqetpabO9v5BrFai/nbOkxuitoxLGr5ZM
 omLP3+HnYdB0X1R3jL/j0LhygUhYPxje155CTtp+eVaSbTDt36Nvx8IohNUskxvN
 C0lK/0eAraT/CE7VrrtMC12JBpkL0jA+MDh0Ec3YfW3JVdd50iOxP1TlwB6svOm0
 Jcw6B5xTfZ8sR5qtXOfIP0WfbDsSTO5J8xlCfUJuLDfhZu4vc9t6mdG8c1A2B+QT
 zBtww4N8n42Y3iD6YtNV2lCPyStBv8SbJ7PAyiR+dUri96qRTKdb9J7RJyXs5FM4
 DW1xcxkpLlMR6fMOakz8w==
X-ME-Sender: <xms:F9ihZSPGFf09rw4hE0_dN3g_Np3yWj34sXvqtrGfmIptm_kw7K_hcg>
 <xme:F9ihZQ_rgpwt5axXAM1geqIluzX_Hh9NFLm_TV6fyk2O4m-Kr9iq04-VWfr87Lmw4
 4qPCBBFrzb4UYqZWw8>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdeiiedgvddvucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepofgfggfkjghffffhvfevufgtgfesthhqredtreerjeenucfhrhhomheprghn
 thhlvghrshcuoegrnhhtlhgvrhhssehilhhluhgtihgurdhnvghtqeenucggtffrrghtth
 gvrhhnpeeghfdttefhvedujeejudejffekffefleeiveegleduhedtkeehfeeklefhfeeu
 tdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnh
 htlhgvrhhssehilhhluhgtihgurdhnvght
X-ME-Proxy: <xmx:F9ihZZTnIe7K3Ei5-3y8pAOopKw1GBTk7hsokQq26Ocz1uig2nj75Q>
 <xmx:F9ihZSv-0fPieZvS1P8qEMF2FxmUoiXVhSOdgiepVaf9swRhNpv9cQ>
 <xmx:F9ihZaeeq1DJIRQGM_Ee34kr_NmobywRi85O83qlbdaMeNRC3qRQXw>
 <xmx:F9ihZST6XAHu90Sh5oo52cnECUliamZ3zkGpV3WW-gSGIxxUUA1ekw>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 35CD236A0076; Fri, 12 Jan 2024 19:23:51 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1374-gc37f3abe3d-fm-20240102.001-gc37f3abe
MIME-Version: 1.0
Message-Id: <e4ed1e86-9baf-4183-b4c4-dac030d3f4ba@HIDDEN>
In-Reply-To: <87mstbzq26.fsf@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87mstbzq26.fsf@HIDDEN>
Date: Fri, 12 Jan 2024 16:23:30 -0800
From: antlers <antlers@HIDDEN>
To: "Simon Tournier" <zimon.toutoune@HIDDEN>,
 "antlers via Guix-patches via" <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain;charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 68163
Cc: dev@HIDDEN, othacehe@HIDDEN,
 =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, me@HIDDEN,
 rekado@HIDDEN, guix@HIDDEN
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: -1.7 (-)

> =E2=80=99fold-packages=E2=80=99 accepts a list of modules as argument =
and it
> would be the way you should go

Thanks for the suggestion! I was so focused on making `specification->pa=
ckage'
cooperate, I failed to consider calling `fold-packages' directly; `#:mod=
ules'
is exactly the argument I was looking for. I've given it a spin and, whi=
le I
have some notes, it works great.

I still think it's worth considering whether the behavior of
`find-packages-by-name/direct' and it's closure in regards to the
parameterization of `%package-module-path' is intentional. A user's intu=
ition
ought to be that dynamically binding a parameter will have the desired a=
nd
expected effect, down to the bottom of the call-stack, and
`find-packages-by-name/direct' is arguably presented as the implementati=
on
"under" the caching layer. I'm not sure when it's internal cache is
instantiated, and find this behavior surprising.

Returning to `fold-packages' there are two differences of note, each ste=
mming
from how `:guix' approximates guix's standard command-line format by
appropriating the existing modules.

1.)=20

> I guess [...], right?

> If yes, [...] filter based on package name (and/or other information t=
racked
> under use-package keyword :guix).

Right! And, almost! Package specifications do not always match the
`package-name' field of the package they resolve to. Consider `package+o=
utput'
specifications like the venerable `gcc:lib' (RIP), and package aliases l=
ike
`gnupg-1', `linux-libre-lts', or `texinfo-7'. This is solve-able (maybe =
with
`package-name->name+version'), but it's neither as simple as filtering on
`package-name' nor as elegant as re-using the existing modules-- should =
they
behave appropriately under parameterization.

2)

I can avoid using `specification->package' directly, but would also need=
 to
special-case `options->transformation' when the second argument to
`--with-graft` is such a specification because, unlike the other
transformations, it resolves that via `package->specification' before re=
turning
a procedure (uhm, were I in need of such a transformation). Another solv=
able
problem, but also another example of an entry-point that could just
`do-what-I-mean' under parameterization-- and there are likely more.

Why rebuild two spokes when, with a small and deliberate tweak, the old =
wheel
could cooperate with an existing mechanism for exactly this sort of re-t=
ooling?

---

I feel like that's a great place to leave off, but I appreciate your que=
stions
and will take a bit more time answer the rest.=20

>  i)  Could you provide some details about the tree of your channel?

Just that it's some custom packages, a home-env with local-files, and so=
me
dubious programming, all in one channel. If the packages were in a separ=
ate
channel, or the home-env was kept outside of the repo and provided on the
command-line, everything would work just fine. The rest should be clear =
from my
elaborations.

> When you run =E2=80=9Cguix pull=E2=80=9D, it builds the Guix channel a=
nd all the other
> custom channels, therefore all the packages should be visible from
> =E2=80=99specification->package=E2=80=99.  Aren=E2=80=99t they?

>  ii) Could you explain when it fails exactly and running which Guix
>      command-line?

I have a typo in my original message:

> this is a compile-time error, so _profiles_ containing such code fail =
to build

It's *channels*, not profiles (and with the notable exception of guix it=
self),
that fail to compile when attempting to resolve specifications for packa=
ges
they define. We fail before Guix builds the package cache. It might help=
 stage
this in a gexp, but `home-profile-service-type' takes a list (not a gexp=
) and
I'm not sure (yet) how to write the service I need or how that would eff=
ect
whether / when it fails. If I knew the package cache better I might know=
 when /
what's missing it (aside from myself) and `force'-ing the cache in the c=
losure
before I get there.

Oh my, time does fly!
Thanks again for the questions, and the help. I really could roll with
`fold-packages', but I'd rather keep the patch than build any more spoke=
s. I
think the behavior is cleaner and I hope I've made a good case for that,
regardless of whether I'd recommend use-cases indulging in dynamic bindi=
ng--
the parameter already exists and should treated as a volatile value.




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

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


Received: (at 68163) by debbugs.gnu.org; 12 Jan 2024 12:51:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 07:51:26 2024
Received: from localhost ([127.0.0.1]:35147 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rOH0P-0004BU-JW
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 07:51:26 -0500
Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]:39970)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zimon.toutoune@HIDDEN>) id 1rOH0G-0004A4-Ij
 for 68163 <at> debbugs.gnu.org; Fri, 12 Jan 2024 07:51:18 -0500
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-40e5200c784so5153535e9.0
 for <68163 <at> debbugs.gnu.org>; Fri, 12 Jan 2024 04:51:18 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1705063873; x=1705668673; darn=debbugs.gnu.org;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id
 :reply-to; bh=FIYJlleZFLUugN0UCBjQV0XGg2+bBSMPU9J6nCqmRzs=;
 b=g2wbTxi9RFzfN9GkjpicIYPgpasU1wHhQgQk5zlpQgqSuBElW7DyrymLMMsT+DVwLQ
 ncItQP2/sWDpcBYw2yMFuGglBBubjfsdMhgKlILF8bO2c7335y0U5MAHXEAUZbVYMJJ0
 QhEgFnOpMpkLEtgEy6dMqXnhaY1HmiPCQBoD8CNeOQldeDyu64+3V6ILOb2O58oCkL8K
 EIVeYcU1EfVhK8p9kRHsiLBl9Swk22ui48ipa7JtI+7n1p/xlsoT8+YVySZWVPI54HNO
 K5SB3ZolkGbqOYDzLIp2LPKSKapftUTsNu0uCXsm9RVqn9roJIis437tO+6mOuGQ/UYx
 cvig==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1705063873; x=1705668673;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=FIYJlleZFLUugN0UCBjQV0XGg2+bBSMPU9J6nCqmRzs=;
 b=IMYBMsLsWGz3dks/5HZ7FmQSEeZr3u3EgxplOo+n6iKuTKTlVTRbW/ieZqvJhTClYo
 /4+kwICkvmX7mpYe6zBXosF5itlG4oRyTXLsFBjQiPU8lTCjDBfrds/RuXQdyFlTXmgQ
 yNOj2796xlza5wS3xU56ZqOtK3BwPULX+/tQujw/Ej9WUlyl21QTi1KABuB+vPAZnUVW
 fcX0/mS75SrbdEXnM3QAY3D7j955DS5Yr0luHWHvB9QcPqkfi0nz9vIcgms6wPaBCGj/
 T39C3MvLDGX+UdiHK2EI5XYO6xddKo5KplTwL0TBrsuo0LPZ8cgqJO6w4HTUtQVcNOcy
 o/UA==
X-Gm-Message-State: AOJu0YxZlOtUWEqKHRyOUTiUkbm/lrPNgb0rvd62C55cQ0mPZTw9qrNS
 KMtNoLYa1XvUnlPnY8zWTQQ=
X-Google-Smtp-Source: AGHT+IGGTzXYMMvjGKaZ0qh5Ut5bAX09kHy1sWtk7SytgRJbWnC1inDFrhrfV4hm7kzSg/xMwBq7XQ==
X-Received: by 2002:a5d:4ec5:0:b0:337:39c7:189 with SMTP id
 s5-20020a5d4ec5000000b0033739c70189mr940908wrv.0.1705063872844; 
 Fri, 12 Jan 2024 04:51:12 -0800 (PST)
Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id
 k5-20020adfe8c5000000b003377c5b8a43sm3775612wrn.93.2024.01.12.04.51.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 12 Jan 2024 04:51:12 -0800 (PST)
From: Simon Tournier <zimon.toutoune@HIDDEN>
To: antlers via Guix-patches via <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
In-Reply-To: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
Date: Thu, 11 Jan 2024 19:24:17 +0100
Message-ID: <87mstbzq26.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.8 (/)
X-Debbugs-Envelope-To: 68163
Cc: antlers <antlers@HIDDEN>, dev@HIDDEN, othacehe@HIDDEN,
 ludo@HIDDEN, me@HIDDEN, rekado@HIDDEN, david@HIDDEN,
 guix@HIDDEN
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 (/)

Hi,

(For what it is worth, I have also read the rest of the thread. :-))

On Sun, 31 Dec 2023 at 06:06, antlers via Guix-patches via <guix-patches@gn=
u.org> wrote:

> -(define find-packages-by-name/direct              ;bypass the cache
> -  (let ((packages (delay
> -                    (fold-packages (lambda (p r)
> -                                     (vhash-cons (package-name p) p r))
> -                                   vlist-null)))
> +(define find-packages-by-name/direct
> +  ;; Bypass pre-built cache, but still memoize over `(%package-module-pa=
th)'
> +  (let ((packages (lambda ()
> +                    ((mlambda (_%package-module-path)
> +                       (fold-packages (lambda (p r)
> +                                        (vhash-cons (package-name p) p r=
))
> +                                      vlist-null))
> +                     (%package-module-path))))

I am not sure by this change.

 1. Instead, I would push to =E2=80=99extract-emacs-packages=E2=80=99 the b=
its.
 2. I miss what makes your use case fails.

First, about #1.

Somehow, =E2=80=99fold-packages=E2=80=99 accepts a list of modules as argum=
ent and it
would be the way you should go: in addition to the argument =E2=80=99file-p=
ath=E2=80=99,
you should also pass to =E2=80=99extract-emacs-packages=E2=80=99 another ar=
gument
capturing this locally extended %package-module-path.

Concretely, considering your example [1]: extract the list of packages
based on Emacs configuration (use-package) to then pass for =E2=80=9Cbuildi=
ng
your home=E2=80=9D using Guix.  From my understanding, the core reads:

--8<---------------cut here---------------start------------->8---
antlers/home/extract-emacs-packages.scm[2]:
``` scheme
(define extact-emacs-packages (file-path)
  [...]) ; this is not polished code, you don't wanna see it: just imagine
;; =3D> (list #<package [...]> ...)
```

antlers/home.scm:
``` scheme
(simple-service 'emacs-packages home-profile-service-type
  ;; Add `(antlers packages)' to `specification->package' PATH
  (parameterize ((%package-module-path
                   (cons `(,(dirname (dirname (module-filename (current-mod=
ule))))
                           . "antlers/packages")
                         (%package-module-path))))
    (append (extract-emacs-packages "./home/files/emacs/init.el")
            (extract-emacs-packages "./home/files/emacs/early-init.el"))))
```
--8<---------------cut here---------------end--------------->8---

I guess, the procedure =E2=80=99extract-emacs-packages=E2=80=99 extracts th=
e package
name represented as string from =E2=80=99use-package=E2=80=99 keyword =E2=
=80=99:guix=E2=80=99 and then
passes it to =E2=80=99specification->package=E2=80=99 in order to build a l=
ist of
=E2=80=99<package>=E2=80=99 records.  Right?

If yes, I suggest to tweak that part instead of
=E2=80=99specification->package=E2=80=99.  When doing this conversion, from=
 string to
<package>, it seems doable to:

 a) Pass a list of all modules to =E2=80=99fold-packages=E2=80=99, i.e., ge=
t all the
 packages, included your custom ones;
=20
 b) Filter based on package name (and/or other information tracked under
 use-package keyword :guix).

Somehow, do not rely on =E2=80=99specification->package=E2=80=99 in
=E2=80=99extract-emacs-packages=E2=80=99.


Last, about #2.

What I do not understand is why is required: =C2=AB This enables
`specification->package' to be parameterized to resolve packages from
within the module-under-compilation. =C2=BB

When you run =E2=80=9Cguix pull=E2=80=9D, it builds the Guix channel and al=
l the other
custom channels, therefore all the packages should be visible from
=E2=80=99specification->package=E2=80=99.  Aren=E2=80=99t they?

Then, when running =E2=80=9Cguix home =E2=80=A6=E2=80=9D, I miss why it fai=
ls.

Other said,

 i)  Could you provide some details about the tree of your channel?

 ii) Could you explain when it fails exactly and running which Guix
     command-line?


Cheers,
simon

1: [bug#68163] [PATCH] gnu: Prevent stale cache use when `%package-module-p=
ath' is parameterized.
antlers via Guix-patches via <guix-patches@HIDDEN>
Mon, 08 Jan 2024 23:04:41 +0000
id:21937d23-9a81-4090-979d-584f40880a51@HIDDEN
https://issues.guix.gnu.org/68163
https://issues.guix.gnu.org/msgid/21937d23-9a81-4090-979d-584f40880a51@app.=
fastmail.com
https://yhetil.org/guix/21937d23-9a81-4090-979d-584f40880a51@HIDDEN=
om




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

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


Received: (at submit) by debbugs.gnu.org; 12 Jan 2024 12:51:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 07:51:45 2024
Received: from localhost ([127.0.0.1]:35168 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rOH0j-0004D1-6V
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 07:51:45 -0500
Received: from lists.gnu.org ([2001:470:142::17]:45062)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zimon.toutoune@HIDDEN>) id 1rOH0V-0004BC-0U
 for submit <at> debbugs.gnu.org; Fri, 12 Jan 2024 07:51:32 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <zimon.toutoune@HIDDEN>)
 id 1rOH0M-0004yh-PE
 for guix-patches@HIDDEN; Fri, 12 Jan 2024 07:51:22 -0500
Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <zimon.toutoune@HIDDEN>)
 id 1rOH0H-00043j-9m; Fri, 12 Jan 2024 07:51:19 -0500
Received: by mail-wr1-x42b.google.com with SMTP id
 ffacd0b85a97d-33751fdc2a5so840125f8f.0; 
 Fri, 12 Jan 2024 04:51:13 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1705063873; x=1705668673; darn=gnu.org;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id
 :reply-to; bh=FIYJlleZFLUugN0UCBjQV0XGg2+bBSMPU9J6nCqmRzs=;
 b=Mpwp9Dcvw+NLZnoHdi6kU6Xw7AYAnkxJe9oAnxg70RGA23ocS6mZEK+vVnadysTgnd
 3w2Rw1wTFI1oDXVK3dXAlnH/9ns9qyaJrJ9Sw+LV+wDmZppyckrHKLHq7ssi/h/DHYlg
 tygt6klRENaiabsW/URfHuDb5xyKdOd68dz77/hgw8YAfPmgNZI/43o31MDRAof6uL+J
 iroV2gKPMn7FnhxqgOrU9E/SWCdgYp9rq/v7skhjwx7wZ6MiYc0HHotFkfd78xShQscp
 ldCy8niBF+Z4F7GPb5VpDRLMCdmar9VBZGGsGSBdFeP6+L+CudO5gaKnhpeZZ2zb74QO
 T4TA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1705063873; x=1705668673;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=FIYJlleZFLUugN0UCBjQV0XGg2+bBSMPU9J6nCqmRzs=;
 b=FnNUJ3cuDjqK8jJd9jXpXkwQB/hKo2Z23/LfnQXgWk70TGjEA7Km2R6NyLjx4tp6tN
 kvTdTkhjDWHl1pJsfvUznlOr0wzmzVYyWeQYRYjG2UY/yDwumo4rwNd90r6gMRMN0RiS
 o01RQpkHgC8Pg6v2hQ3z0NWDUAyp/xiYQbY4fCCQPlsdcDNAcCTS2Odrls4ket0ymIi2
 WE5dEXiYTiHcT0I4lnqAUzn1fauUN1dzCyfVhcuWWcqjygAGUiQmtOftydWNfsvTiqar
 6l5NhqEFEBedSwfhEc067CTqQGRBz6qeIzfknuHQe+5cyiReN8HDbI3VbY0ZTZNejIuT
 jeUg==
X-Gm-Message-State: AOJu0Ywp6jAi6cg9FL1kzEvPoUYn+YNvhNUWXOUDe7Mc/SJeESxVKsih
 Fa9PNNLspyM1D0u+CiwC+XA=
X-Google-Smtp-Source: AGHT+IGGTzXYMMvjGKaZ0qh5Ut5bAX09kHy1sWtk7SytgRJbWnC1inDFrhrfV4hm7kzSg/xMwBq7XQ==
X-Received: by 2002:a5d:4ec5:0:b0:337:39c7:189 with SMTP id
 s5-20020a5d4ec5000000b0033739c70189mr940908wrv.0.1705063872844; 
 Fri, 12 Jan 2024 04:51:12 -0800 (PST)
Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id
 k5-20020adfe8c5000000b003377c5b8a43sm3775612wrn.93.2024.01.12.04.51.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 12 Jan 2024 04:51:12 -0800 (PST)
From: Simon Tournier <zimon.toutoune@HIDDEN>
To: antlers via Guix-patches via <guix-patches@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
In-Reply-To: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
Date: Thu, 11 Jan 2024 19:24:17 +0100
Message-ID: <87mstbzq26.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Received-SPF: pass client-ip=2a00:1450:4864:20::42b;
 envelope-from=zimon.toutoune@HIDDEN; helo=mail-wr1-x42b.google.com
X-Spam_score_int: -10
X-Spam_score: -1.1
X-Spam_bar: -
X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DATE_IN_PAST_12_24=1.049,
 DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.8 (+)
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:  Hi, (For what it is worth, I have also read the rest of the
 thread. :-)) On Sun, 31 Dec 2023 at 06:06, antlers via Guix-patches via wrote:
 Content analysis details:   (1.8 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 0.8 DATE_IN_PAST_12_24     Date: is 12 to 24 hours before Received: date
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (zimon.toutoune[at]gmail.com)
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
X-Debbugs-Envelope-To: submit
Cc: antlers <antlers@HIDDEN>, dev@HIDDEN, othacehe@HIDDEN,
 ludo@HIDDEN, me@HIDDEN, rekado@HIDDEN, david@HIDDEN,
 guix@HIDDEN
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.8 (/)

Hi,

(For what it is worth, I have also read the rest of the thread. :-))

On Sun, 31 Dec 2023 at 06:06, antlers via Guix-patches via <guix-patches@gn=
u.org> wrote:

> -(define find-packages-by-name/direct              ;bypass the cache
> -  (let ((packages (delay
> -                    (fold-packages (lambda (p r)
> -                                     (vhash-cons (package-name p) p r))
> -                                   vlist-null)))
> +(define find-packages-by-name/direct
> +  ;; Bypass pre-built cache, but still memoize over `(%package-module-pa=
th)'
> +  (let ((packages (lambda ()
> +                    ((mlambda (_%package-module-path)
> +                       (fold-packages (lambda (p r)
> +                                        (vhash-cons (package-name p) p r=
))
> +                                      vlist-null))
> +                     (%package-module-path))))

I am not sure by this change.

 1. Instead, I would push to =E2=80=99extract-emacs-packages=E2=80=99 the b=
its.
 2. I miss what makes your use case fails.

First, about #1.

Somehow, =E2=80=99fold-packages=E2=80=99 accepts a list of modules as argum=
ent and it
would be the way you should go: in addition to the argument =E2=80=99file-p=
ath=E2=80=99,
you should also pass to =E2=80=99extract-emacs-packages=E2=80=99 another ar=
gument
capturing this locally extended %package-module-path.

Concretely, considering your example [1]: extract the list of packages
based on Emacs configuration (use-package) to then pass for =E2=80=9Cbuildi=
ng
your home=E2=80=9D using Guix.  From my understanding, the core reads:

--8<---------------cut here---------------start------------->8---
antlers/home/extract-emacs-packages.scm[2]:
``` scheme
(define extact-emacs-packages (file-path)
  [...]) ; this is not polished code, you don't wanna see it: just imagine
;; =3D> (list #<package [...]> ...)
```

antlers/home.scm:
``` scheme
(simple-service 'emacs-packages home-profile-service-type
  ;; Add `(antlers packages)' to `specification->package' PATH
  (parameterize ((%package-module-path
                   (cons `(,(dirname (dirname (module-filename (current-mod=
ule))))
                           . "antlers/packages")
                         (%package-module-path))))
    (append (extract-emacs-packages "./home/files/emacs/init.el")
            (extract-emacs-packages "./home/files/emacs/early-init.el"))))
```
--8<---------------cut here---------------end--------------->8---

I guess, the procedure =E2=80=99extract-emacs-packages=E2=80=99 extracts th=
e package
name represented as string from =E2=80=99use-package=E2=80=99 keyword =E2=
=80=99:guix=E2=80=99 and then
passes it to =E2=80=99specification->package=E2=80=99 in order to build a l=
ist of
=E2=80=99<package>=E2=80=99 records.  Right?

If yes, I suggest to tweak that part instead of
=E2=80=99specification->package=E2=80=99.  When doing this conversion, from=
 string to
<package>, it seems doable to:

 a) Pass a list of all modules to =E2=80=99fold-packages=E2=80=99, i.e., ge=
t all the
 packages, included your custom ones;
=20
 b) Filter based on package name (and/or other information tracked under
 use-package keyword :guix).

Somehow, do not rely on =E2=80=99specification->package=E2=80=99 in
=E2=80=99extract-emacs-packages=E2=80=99.


Last, about #2.

What I do not understand is why is required: =C2=AB This enables
`specification->package' to be parameterized to resolve packages from
within the module-under-compilation. =C2=BB

When you run =E2=80=9Cguix pull=E2=80=9D, it builds the Guix channel and al=
l the other
custom channels, therefore all the packages should be visible from
=E2=80=99specification->package=E2=80=99.  Aren=E2=80=99t they?

Then, when running =E2=80=9Cguix home =E2=80=A6=E2=80=9D, I miss why it fai=
ls.

Other said,

 i)  Could you provide some details about the tree of your channel?

 ii) Could you explain when it fails exactly and running which Guix
     command-line?


Cheers,
simon

1: [bug#68163] [PATCH] gnu: Prevent stale cache use when `%package-module-p=
ath' is parameterized.
antlers via Guix-patches via <guix-patches@HIDDEN>
Mon, 08 Jan 2024 23:04:41 +0000
id:21937d23-9a81-4090-979d-584f40880a51@HIDDEN
https://issues.guix.gnu.org/68163
https://issues.guix.gnu.org/msgid/21937d23-9a81-4090-979d-584f40880a51@app.=
fastmail.com
https://yhetil.org/guix/21937d23-9a81-4090-979d-584f40880a51@HIDDEN=
om




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

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


Received: (at 68163) by debbugs.gnu.org; 8 Jan 2024 23:57:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 18:57:21 2024
Received: from localhost ([127.0.0.1]:37870 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rMzUf-0003XP-DW
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2024 18:57:21 -0500
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:46879)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rMzUZ-0003X1-JC
 for 68163 <at> debbugs.gnu.org; Mon, 08 Jan 2024 18:57:19 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id BC39C5C032D;
 Mon,  8 Jan 2024 18:57:03 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Mon, 08 Jan 2024 18:57:03 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1704758223; x=1704844623; bh=XWkWI70EFf
 jhRCjyfjYjZM19+j6ptPEih6p2HNlTVRY=; b=J2QLrU+lnanaeolMYyblexs/eI
 JvJ2B430sEq2LV8AFaZafRDVg6ExQES0z6/oxVnhEFf1BPhhRo90Y3RMjSBQu8I6
 67Mrnhdddfdp0rsJ3L2C0VGQr+VV5yI4tec8Gait/HWi3zc8ZlRFy2N4yWq9/2m3
 AfrufJcVAR8jKR2gywI0IMc6CY7RICyGHDgKLbq0b7dwAif2wP4pykriulmaIcSx
 qeLcTSIhBZAv79SvSVGxgbzr3cWJkXEQEVIzeV8unlLF3u+vcHzywGBozKTrQvmI
 qBBE1otZrPRkpDtnPwYlPLpRaUofTkM9jw6ni8FR/McnAnpnZX5zxyNw4rdQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; t=1704758223; x=1704844623; bh=XWkWI70EFfjhRCjyfjYjZM19+j6p
 tPEih6p2HNlTVRY=; b=yI/kuh1j2wExRDkmq4VRTjfdRykI3Vi7CnQyDC0H3rgp
 aMLrrm3PICSc8+yaF2DwxM3XnCfJ78XJ4+wnGPL7f//jYD/ZAU8/6WQcSgNbW3z7
 RjmIa78jWqNyQ3C4rabXHMI43MxZROoVks0UAi3Fd1x8zSh7GBG5cjz/TTQT3bjQ
 YRNJj3wONTZ7lH/1at2jilp9WbFnO5dWvZq0HAnaMLAFjsLpOzdD1vJPblczqKCN
 zsgItpMdlRzkY3gZWpy+FcvVk6TOZr9JdwBMpWATdzE58tYZdVPeD196Kjo4dzAU
 wbYVEpvypgDkIrN/69zIFYZAo20V+QwKP+LzLA9FOg==
X-ME-Sender: <xms:z4ucZafeHicFvxS2IGwkVkjNJOjnwxTZqYJWHZ4jFPj6ZOXM3tG2tw>
 <xme:z4ucZUPzGMBtPVRvL1ipIoAsZ7_S5kE_MK35DpAV8XfCqR4m62kejNh-CUe5nRv-R
 0MzGKmPM3yFNxJAJYw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdehkedgudejucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepofgfggfkjghffffhvffutgesthdtredtreertdenucfhrhhomheprghnthhl
 vghrshcuoegrnhhtlhgvrhhssehilhhluhgtihgurdhnvghtqeenucggtffrrghtthgvrh
 hnpeevudegheeivdfhgedtvdekgfehiefhleeufeefueeiudeuudffkefffedvvdfhieen
 ucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnhhtlh
 gvrhhssehilhhluhgtihgurdhnvght
X-ME-Proxy: <xmx:z4ucZbgdUoh8yzYtBznViTRrCSFUqkmoWtIXLtq_bFreKvfqRHSZpg>
 <xmx:z4ucZX9jLQwVTzZaryc-s-mwPN1KSlZyTxX127I9lg4ik6h6mw4AKA>
 <xmx:z4ucZWs7Dw6vXORZiwOh9H_z3AuZVWAJeBec6P2zXqscmYE_X6JC_Q>
 <xmx:z4ucZc058E5WVZea46OgPSXRM6BjNWvou87xv01Spilhyrhcv5BFnA>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 44BF136A0076; Mon,  8 Jan 2024 18:57:03 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1364-ga51d5fd3b7-fm-20231219.001-ga51d5fd3
MIME-Version: 1.0
Message-Id: <c83d9e09-15bc-4bc6-acbc-dd2cf83d266a@HIDDEN>
In-Reply-To: <21937d23-9a81-4090-979d-584f40880a51@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87a5pf4ux1.fsf@HIDDEN>
 <21937d23-9a81-4090-979d-584f40880a51@HIDDEN>
Date: Mon, 08 Jan 2024 23:56:32 +0000
From: antlers <antlers@HIDDEN>
To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, 68163 <at> debbugs.gnu.org,
 david@HIDDEN
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 68163
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: -1.7 (-)

Some final thoughts I had I as I was moving-on:

1.) Mailing list guidelines prob say not to link to Gists, I made sure to include all relevant content in-line and wouldn't have attached them on their own anyways. They're there for the adventurous.

2) No, I don't want to put my packages in a separate channel-- I believe that the average Guix user has one channel for both their configuration and custom packages / services (I don't mean this in a demanding way, clearly happy to scratch my own itches, just anticipating the suggestion).

3.) Yes, my `extract-emacs-packages' parser really does support command-line transformation options and comments in use-package `:guix` blocks-- that snippet is verbatim.

4.) cc davie, he might get a kick outta that snippet

5.) I started preparing the reduced example as a `guix repl' session until I realized it has to be a real file for `module-filename' and `fold-packages' to work-- it could expose a module search-path, but I don't *think* there's a real use-case for that :p




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

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


Received: (at 68163) by debbugs.gnu.org; 8 Jan 2024 23:05:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 18:05:18 2024
Received: from localhost ([127.0.0.1]:37843 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rMygH-0002oL-IF
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2024 18:05:18 -0500
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:54337)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rMygD-0002nz-IZ
 for 68163 <at> debbugs.gnu.org; Mon, 08 Jan 2024 18:05:15 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id F01305C036A;
 Mon,  8 Jan 2024 18:05:01 -0500 (EST)
Received: from imap44 ([10.202.2.94])
 by compute5.internal (MEProxy); Mon, 08 Jan 2024 18:05:01 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:content-type:content-type:date:date:from:from:in-reply-to
 :in-reply-to:message-id:mime-version:references:reply-to:subject
 :subject:to:to; s=fm1; t=1704755101; x=1704841501; bh=CwWhwVaAaJ
 gUdbKISmKkdtjK4hEB/zqxXWYumcoW89c=; b=G/7m258XPeX64GgR5oF6W3QUvE
 yTU5VWOkm37fe4dMOzGgWpZSY0hRKj72gDoucVOxFXZbPvLXVumoiG8a/8mStErH
 luzQlBzVNf0t64e5UfR0M2tIng86dSDsEVyh6aa/NhfYPZgAF+3Bqb4PeNvmryyy
 qOZYxWw91DZAucNWS6Z3WcwD3r5tYfGFH7g1i7oHvuD7IKuBIcmohH41yKvvHLwv
 tPJgsR4QUjSdq3JOgFBfOEkLtBN0f1ZOMSr6DLibXof2fcjNo/tpv0CmX7XCL5+P
 qI/t33z0GdHRuCvLbf5e+EFPF0dkLWGMbPoLzAsS/fPwboM8zeBHaTmrT4GQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; t=1704755101; x=1704841501; bh=CwWhwVaAaJgUdbKISmKkdtjK4hEB
 /zqxXWYumcoW89c=; b=28zuarw0FpzW4VSlmpcewsbtnywn03Bw8UCRAVUeX2dW
 OdTOzkD7QXAKO77Ks1QEFyw8UUyj0BV7wZX+nJT50iRLG+ILKImv700JhWzb4tF0
 +ssoLte9ru0y/OJVnmLh30FLSJVKjvURphyTEABpem4UbQju0hY6Gk0wAfdCd0rA
 DICb93NegaxqwmI+R3EhaeH2vcED4YSdRTDyc8WITdpqMZphKrCeYYlgyVJTtTXq
 xLISwOBeSoPSG780xqc0ERPhKtVGrgMs6H8FYps7tFr9BbATPKD0uTbj/LT1zOlT
 C0425j0atr7YFNxFykR2s6SUT7vWip7XrxbFWEw0UA==
X-ME-Sender: <xms:nX-cZafCKTLRPdDEJsXmbS5eXdkuq-9FS_y1HHuYmauTApYgYDVZYg>
 <xme:nX-cZUMHlGwi3kor0QdpQxMGlRWVuwRY6I5YO57jGIvez2xxqot1pNLPK-MyQMPKf
 SWtplN5zT-9-u1X3x4>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdehkedgtdejucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 goufhushhpvggtthffohhmrghinhculdegledmnecujfgurhepofgfggfkjghffffhvffu
 tgesthdtredtreertdenucfhrhhomheprghnthhlvghrshcuoegrnhhtlhgvrhhssehilh
 hluhgtihgurdhnvghtqeenucggtffrrghtthgvrhhnpeejvddthfevgffhtddtgfetjeeu
 heekjedtledtieefvdfgtdejfeelleegvdehffenucffohhmrghinhepghhithhhuhgsrd
 gtohhmpdhgihhthhhusgdrihhonecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm
 pehmrghilhhfrhhomheprghnthhlvghrshesihhllhhutghiugdrnhgvth
X-ME-Proxy: <xmx:nX-cZbihsfz8gOgrXQi0zt9kRnBvNOKKk9MWtfsX0kDCZF7YS08lwg>
 <xmx:nX-cZX-XcBmv8cFP6xWblelRjwq5F5mcWP5NMj1cjODhu-tSOxWLTQ>
 <xmx:nX-cZWtfZARLWHw4MFlNhp3Yqy9n6b-Emm95-V_usBLxLBz5o_MW0g>
 <xmx:nX-cZX6_Cgn9KegKoGof3lJPMvEXG6wcGnBTC62M0jB3RNanpjP50g>
Feedback-ID: ie5814659:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 7282936A0076; Mon,  8 Jan 2024 18:05:01 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1364-ga51d5fd3b7-fm-20231219.001-ga51d5fd3
MIME-Version: 1.0
Message-Id: <21937d23-9a81-4090-979d-584f40880a51@HIDDEN>
In-Reply-To: <87a5pf4ux1.fsf@HIDDEN>
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 <87a5pf4ux1.fsf@HIDDEN>
Date: Mon, 08 Jan 2024 23:04:41 +0000
From: antlers <antlers@HIDDEN>
To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>, 68163 <at> debbugs.gnu.org
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 68163
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: -1.7 (-)

So I did! It's probably better to give a clear, in-line example anyways.

I take it you know *what* I'm doing, just not *why*; but I'm going to
include a full example anyway for the benefit of future readers.

Note that this is a compile-time error, so profiles containing such
code fail to build entirely but produce cached object files which may
continue to function correctly after eg. a roll-back. I was briefly
bit by one after pulling an upstream profile to confirm the behavior
shown :p

``` scheme
#!/usr/bin/env -S guix repl -L ./modules
!#

(define-module (example)
  #:use-module (gnu packages)
  #:use-module (gnu packages base)
  #:use-module (guix packages))

(define-public my-hello
  (package
    (inherit hello)
    (name "my-hello")))

;; Suppose we're an average user and keep our configuration in a
;; channel in our home-dir:
(format (current-output-port) "~s~%"
  (module-filename (current-module)))
;; => "/home/user/src/example/./example.scm"

;; Whether or not it's best practice, we may be inclined to use
;; `specification->package' to populate our `operating-system',
;; `home-environment', and even (*gasp*) `service' records.
(format (current-output-port) "~s~%"
  (specification->package "hello"))
;; => #<package hello@HIDDEN gnu/packages/base.scm:92 7f958d8c09a0>

;; But this procedure fails when we attempt to reference a
;; package-variant defined within our configuration channel (even
;; when it's in another module, eg. `(example packages base)'):
(format (current-output-port) "~s~%"
  (specification->package "my-hello"))
;; => guix repl: error: my-hello: unknown package

;; (Note that this is a non-continuable exception, and would commented out
;; to execute the remaining stanza of this script.)

;; A clever user might parameterize `%package-search-path' to get
;; around this limitation:
(parameterize ((%package-module-path
                 (cons `(,(dirname (module-filename (current-module))) . "")
                       (%package-module-path))))
  (format (current-output-port) "~s~%"
    (specification->package "my-hello")))
;; => guix repl: error: my-hello: unknown package
;; But only with the patch do we enable this functionality:
;; => #<package my-hello@HIDDEN /home/user/src/example/./example.scm:10 7fc6a6678a50>
```

Regarding my specific use-case, I have a channel featuring the following
at least the following four snippets.

antlers/home/files/emacs/init.el[1]:
``` elisp
(use-package all-the-icons
  :guix (emacs-all-the-icons)
  :defer t)

(use-package magit
  :guix emacs-magit git
  :custom (magit-diff-refine-hunk t))

(use-package embark
  :guix (emacs-embark ; This refers to my fork with a page-able which-key pop-up on `embark-collect'
          --with-git-url=emacs-embark=file:///home/antlers/[...]
          --with-branch=emacs-embark=fix/issue-647)
  :custom (prefix-help-command 'embark-prefix-help-command))

(use-package devil-mode
  :guix emacs-devil-mode
  :custom (devil-key "'"))
```

antlers/home/extract-emacs-packages.scm[2]:
``` scheme
(define extact-emacs-packages (file-path)
  [...]) ; this is not polished code, you don't wanna see it: just imagine
;; => (list #<package [...]> ...)
```

antlers/packages/emacs-xyz:
``` elisp
(define-public emacs-devil-mode
  (package
    (name "emacs-devil-mode")
    (version "0.6.0")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/susam/devil")
             (commit version)))
       (sha256
        (base32 "1pr9yf6f37sz5qy1snn8ag5bvg6lza7q635jh8jhaqqfp37jvv1y"))
       (file-name (git-file-name name version))))
    (build-system emacs-build-system)
    (home-page "https://susam.github.io/devil")
    (synopsis "Modifier-free editing in Emacs")
    (description
     "Devil mode trades your comma key in exchange for a modifier-free
editing experience in Emacs.")
    (license license:expat)))
```

antlers/home.scm:
``` scheme
(simple-service 'emacs-packages home-profile-service-type
  ;; Add `(antlers packages)' to `specification->package' PATH
  (parameterize ((%package-module-path
                   (cons `(,(dirname (dirname (module-filename (current-module))))
                           . "antlers/packages")
                         (%package-module-path))))
    (append (extract-emacs-packages "./home/files/emacs/init.el")
            (extract-emacs-packages "./home/files/emacs/early-init.el"))))
```

If there's a better way to do this (barring the obvious of upstreaming
assorted bits) let me know, I'm sure there are many ways, but this
one's mine. I don't like to keep the manifest seperate from my configuration,
but also don't want to keep them in an org file and have to invoke
emacs to build my channel.

I don't know if a.) there's any cause to be concerned about the
performance of this tweak, or b.) that you care to support the
behavior at all, but I hope I've made my own use-case clear and the
patch is there if you see fit c:

Thx for your time!

1: https://gist.github.com/AutumnalAntlers/efa81fbb3ecc2c4fdd97785731f4348c
2: https://gist.github.com/AutumnalAntlers/b3090d73b97779f977105b905be14453




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

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


Received: (at 68163) by debbugs.gnu.org; 8 Jan 2024 17:06:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 12:06:22 2024
Received: from localhost ([127.0.0.1]:37423 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rMt4v-00076M-RR
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2024 12:06:22 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:33224)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1rMt4u-00076A-3P
 for 68163 <at> debbugs.gnu.org; Mon, 08 Jan 2024 12:06:20 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1rMt4g-0003W0-Ak; Mon, 08 Jan 2024 12:06:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=QQamAZxPKLNMeTXJMxPbHY41xHDUwwVX8zpM8bCrz+k=; b=QZWCo9Nb/C1Spu2COVnO
 II6webbpHp/LesBM+dUZ3bBgax4cyVV4lwTZxzJ6IsRxLNdf5ZfkPrKHcYdLTDZcdar2T3JuuFHfu
 p9DbHjwJPqAeRq9d98pTBwRIKYPazsTn6KO3hW7DaXWFwbjzpjU70JylItgLsU6PqltqGgTmdtqr2
 zOax7zzqxkYqO3T8J2scJ2eAgrK6wkjUnYlbNsZ3QUR6YFyp59JnVtcKA6iOydp7nWFosSnimqwhn
 I83Sdlw8B9/v0uzrz3aAN7aMqnG1hXII31uZ23UJI3wINuRMz6HdzOijiVjsk8IVF49gqb9Ogzk2/
 fM7d/XCRS7x0zQ==;
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: antlers <antlers@HIDDEN>
Subject: Re: [bug#68163] [PATCH] gnu: Prevent stale cache use when
 `%package-module-path' is parameterized.
In-Reply-To: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
 (antlers@HIDDEN's message of "Sun, 31 Dec 2023 06:06:21 +0000")
References: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: Nonidi 19 =?utf-8?Q?Niv=C3=B4se?= an 232 de la
 =?utf-8?Q?R=C3=A9volution=2C?= jour du Marbre
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Mon, 08 Jan 2024 18:06:02 +0100
Message-ID: <87a5pf4ux1.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 68163
Cc: dev@HIDDEN, 68163 <at> debbugs.gnu.org, zimon.toutoune@HIDDEN,
 othacehe@HIDDEN, me@HIDDEN, rekado@HIDDEN, guix@HIDDEN
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: -3.3 (---)

Hi,

antlers <antlers@HIDDEN> skribis:

> * gnu/packages.scm(find-package-by-name/direct): Convert `delay'-ed cache
> construction in closure into a form memoized over `%package-module-path'.
>
> Change-Id: I6e4b4b3fa58082b79aacf307468aec43ec60bf22
> ---
> This enables `specification->package' to be parameterized to resolve pack=
ages
> from within the module-under-compilation.
>
> I use this to parse my init.el[0] into packages in my guix-home profile, =
all
> in one repo.

Looks like you forgot reference [0].

(I=E2=80=99m not sure I understand the use case but seeing your code will s=
urely
help!)

Thanks,
Ludo=E2=80=99.




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

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


Received: (at submit) by debbugs.gnu.org; 31 Dec 2023 06:24:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 31 01:24:54 2023
Received: from localhost ([127.0.0.1]:45502 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rJpFm-0007Zp-Ib
	for submit <at> debbugs.gnu.org; Sun, 31 Dec 2023 01:24:54 -0500
Received: from lists.gnu.org ([2001:470:142::17]:58210)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <antlers@HIDDEN>) id 1rJpFh-0007ZU-Oe
 for submit <at> debbugs.gnu.org; Sun, 31 Dec 2023 01:24:53 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rJpFb-0003Sx-7F
 for guix-patches@HIDDEN; Sun, 31 Dec 2023 01:24:43 -0500
Received: from wout1-smtp.messagingengine.com ([64.147.123.24])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <antlers@HIDDEN>)
 id 1rJpFZ-0001i5-8L
 for guix-patches@HIDDEN; Sun, 31 Dec 2023 01:24:42 -0500
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.west.internal (Postfix) with ESMTP id CD5853200C3D;
 Sun, 31 Dec 2023 01:24:36 -0500 (EST)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Sun, 31 Dec 2023 01:24:37 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illucid.net; h=
 cc:cc:content-transfer-encoding:content-type:date:date:from:from
 :in-reply-to:message-id:mime-version:reply-to:subject:subject:to
 :to; s=fm1; t=1704003876; x=1704090276; bh=BITDvyJOi55QFAmQC+Fjj
 U7ez8cei8GJIaMXWBec/Lk=; b=w9e/6iYaYGKnrTns1eQPfR+8wLbPyuMJA2L0n
 IMj4+PlAJBN7d8Ze6LityCmGaM0qxSj5QumiqyfqNw0JBnyrU2kwsIF8aW5osyuC
 aL2SB90fkPH61vrF2tIvzlQgfLR5lHEzpdDIkB+lkfJUiwH7TYWfhiVw0xGytqlU
 EZvtl4hC08Je6xVHOeOng80D60jW/m6z6nhJOUXb8/BXsB8UYud11kEbl/Kwf1xT
 TB4eNZ3Fl4mXMUPNiitm3feYOuSxMdE9nIYn1GVEsVHAjdCwSupEoUZ2SHR/DH/5
 GsrvQEc2KTKGy2S+2KFCvcDy5J5pE47cSnCCb278bT2AooZow==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:feedback-id:feedback-id:from:from
 :in-reply-to:message-id:mime-version:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; t=1704003876; x=1704090276; bh=BITDvyJOi55QFAmQC+FjjU7ez8ce
 i8GJIaMXWBec/Lk=; b=FmaQfJTCnW2zhoMEYELX/zqylqpVGKE5riYo0P13XXu3
 /HhCQZ4k/SU/7kX9md75cqDbraPCjSoT1sZRJAgPDAFsLv3CZiKVjHtH57CD84IM
 5ApxZ+8OXevOo1HB8serGDjlxtqpNbos+PEXr4hL06A2wC1fmf0YyHfaQ4OXGJdx
 C4Ugzw6BH2wtiJZ5t/T+G1JVVg8MkrvXXLO2m675My+5RU0NfHp2HbEkVFCN+TyP
 lvtbxfQtITSbiXNctsQQcrPBu3Gms87hjIo5z1gsF3IeLwC6kh1E4U8sH49NqCB+
 Wjiz5Syj9oQSVQNxFy2U6zhpIm5Rjq6ywqpn+9kcKw==
X-ME-Sender: <xms:JAmRZeJDXudoruclSK1GXhMkkKBdttxfHucKd2rsE7jS8WNu-9v0PQ>
 <xme:JAmRZWIPbgyID5eO72he9EJ-ljehpcJnNK9y655kVyRW3XcDsp5O8YZeqImG-Ih7N
 dVn0zT18aiFDxM5IYg>
X-ME-Received: <xmr:JAmRZevwZk7PvczPn2-__ammpmH6XAYZr8r5M2-3HriWndzT721CrwxSvuFOqQXtRolW0zQbR0y8FYBxQ2QpPrG4YfPNXgiBy4O1GRGqmyqmNB-aeA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdefiedgleehucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucenucfjughrpefhvfevufffkffoggfgsedtkeertd
 ertddtnecuhfhrohhmpegrnhhtlhgvrhhsuceorghnthhlvghrshesihhllhhutghiugdr
 nhgvtheqnecuggftrfgrthhtvghrnhephfefkedthfegjedugefggfdvgeegueeilefhgf
 elgffhvedulefghfekteevgfejnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm
 pehmrghilhhfrhhomheprghnthhlvghrshesihhllhhutghiugdrnhgvth
X-ME-Proxy: <xmx:JAmRZTYizwXW4DRQFUCPeBixt1BDO_qvkD3jTN-6b8EzMgIIDrdqKQ>
 <xmx:JAmRZVbZ-StoItDXALoM-C8uCIbvMB6xIVEA90hy6NL8K-TydWdHFQ>
 <xmx:JAmRZfBp06ITqBfv_-B0O3S-tBTWp5H6q-JzA5ycMzeQO32RRowRxQ>
 <xmx:JAmRZWAgK_o0Mr3U86nn0KWXs7ppgERv2ngjL8w6PdL1VcJnjgvUQQ>
Feedback-ID: ie5814659:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 31 Dec 2023 01:24:35 -0500 (EST)
From: antlers <antlers@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH] gnu: Prevent stale cache use when `%package-module-path' is
 parameterized.
Date: Sun, 31 Dec 2023 06:06:21 +0000
Message-ID: <b2aaf81a7ae81d47ff5091cb4012764124c6f61c.1704002781.git.antlers@HIDDEN>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
X-Debbugs-Cc: guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN,
 rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=64.147.123.24; envelope-from=antlers@HIDDEN;
 helo=wout1-smtp.messagingengine.com
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
Cc: antlers <antlers@HIDDEN>
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.1 (/)

* gnu/packages.scm(find-package-by-name/direct): Convert `delay'-ed cache
construction in closure into a form memoized over `%package-module-path'.

Change-Id: I6e4b4b3fa58082b79aacf307468aec43ec60bf22
---
This enables `specification->package' to be parameterized to resolve packages
from within the module-under-compilation.

I use this to parse my init.el[0] into packages in my guix-home profile, all
in one repo.

 gnu/packages.scm | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/gnu/packages.scm b/gnu/packages.scm
index 80c22d1d7f..b0cc2f7427 100644
--- a/gnu/packages.scm
+++ b/gnu/packages.scm
@@ -281,18 +281,21 @@ (define load-package-cache
                #f
                (apply throw args))))))))
 
-(define find-packages-by-name/direct              ;bypass the cache
-  (let ((packages (delay
-                    (fold-packages (lambda (p r)
-                                     (vhash-cons (package-name p) p r))
-                                   vlist-null)))
+(define find-packages-by-name/direct
+  ;; Bypass pre-built cache, but still memoize over `(%package-module-path)'
+  (let ((packages (lambda ()
+                    ((mlambda (_%package-module-path)
+                       (fold-packages (lambda (p r)
+                                        (vhash-cons (package-name p) p r))
+                                      vlist-null))
+                     (%package-module-path))))
         (version>? (lambda (p1 p2)
                      (version>? (package-version p1) (package-version p2)))))
     (lambda* (name #:optional version)
       "Return the list of packages with the given NAME.  If VERSION is not #f,
 then only return packages whose version is prefixed by VERSION, sorted in
 decreasing version order."
-      (let ((matching (sort (vhash-fold* cons '() name (force packages))
+      (let ((matching (sort (vhash-fold* cons '() name (packages))
                             version>?)))
         (if version
             (filter (lambda (package)

base-commit: 2a242e86379ebddbdddf2927f26e5e27a98fc605
-- 
2.41.0





Acknowledgement sent to antlers <antlers@HIDDEN>:
New bug report received and forwarded. Copy sent to guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN, rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN, rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN, guix-patches@HIDDEN:
bug#68163; Package guix-patches. 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: Sat, 20 Jan 2024 12:30:02 UTC

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