From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id oOzcLD0CI1/9IgAA0tVLHw (envelope-from ) for ; Thu, 30 Jul 2020 17:24:13 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id sG+8KD0CI1/DUQAA1q6Kng (envelope-from ) for ; Thu, 30 Jul 2020 17:24:13 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 48A949404CA for ; Thu, 30 Jul 2020 17:24:13 +0000 (UTC) Received: from localhost ([::1]:34322 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k1CHs-0004gU-9G for larch@yhetil.org; Thu, 30 Jul 2020 13:24:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51106) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k1CHi-0004dR-VJ for bug-guix@gnu.org; Thu, 30 Jul 2020 13:24:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:53344) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1k1CHi-0002kD-Gu for bug-guix@gnu.org; Thu, 30 Jul 2020 13:24:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1k1CHi-0004ko-Cp for bug-guix@gnu.org; Thu, 30 Jul 2020 13:24:02 -0400 Subject: bug#42009: package.cache not deterministic Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-To: bug-guix@gnu.org Resent-Date: Thu, 30 Jul 2020 17:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: cc-closed 42009 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: zimoun Mail-Followup-To: 42009@debbugs.gnu.org, ludo@gnu.org, marinus.savoritias@disroot.org Received: via spool by 42009-done@debbugs.gnu.org id=D42009.159612978618205 (code D ref 42009); Thu, 30 Jul 2020 17:24:02 +0000 Received: (at 42009-done) by debbugs.gnu.org; 30 Jul 2020 17:23:06 +0000 Received: from localhost ([127.0.0.1]:36656 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1k1CGo-0004jX-0r for submit@debbugs.gnu.org; Thu, 30 Jul 2020 13:23:06 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40866) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1k1CGl-0004iq-Iy for 42009-done@debbugs.gnu.org; Thu, 30 Jul 2020 13:23:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:41914) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k1CGg-0002gp-0b; Thu, 30 Jul 2020 13:22:58 -0400 Received: from [2a01:e35:2ffd:930:68c2:32f7:f96f:b343] (port=48040 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1k1CGf-0007AZ-H8; Thu, 30 Jul 2020 13:22:57 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <1593096834.1154.5@disroot.org> <87h7uysrmr.fsf@nckx> <86366ibuor.fsf@gmail.com> <874kqvgchu.fsf@gnu.org> <86o8p2b34l.fsf@gmail.com> <875zbacaov.fsf@gnu.org> Date: Thu, 30 Jul 2020 19:22:47 +0200 In-Reply-To: <875zbacaov.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 29 Jun 2020 14:34:40 +0200") Message-ID: <877dukx6hk.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -3.3 (---) X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 42009-done@debbugs.gnu.org Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Spam-Score: 0.49 X-TUID: p7MfaXiM6Zcf Hi, Ludovic Court=C3=A8s skribis: > But it=E2=80=99s not quite right because the order in which variables are > traversed is still non-deterministic, so between two runs of > =E2=80=98generate-package-cache=E2=80=99, caches differ like this: > > --- a 2020-06-29 14:27:32.291028456 +0200 > +++ b 2020-06-29 14:27:37.930993059 +0200 > @@ -8581,7 +8581,7 @@ > #("clang-runtime" > "9.0.1" > (gnu packages llvm) > - clang-runtime > + clang-runtime-9 > ("out") > #t > #f > @@ -26511,7 +26511,7 @@ > #("gcc-objc++" > "7.5.0" > (gnu packages gcc) > - gcc-objc++-7 > + gcc-objc++ > ("out" "lib" "debug") > #t > #f > @@ -26641,7 +26641,7 @@ > #("gcc-toolchain" > "7.5.0" > (gnu packages commencement) > - gcc-toolchain > + gcc-toolchain-7 > ("out" "debug" "static") > #t > #f > @@ -33311,7 +33311,7 @@ > #("ghc" > "8.6.5" > (gnu packages haskell) > - ghc-8.6 > + ghc-8 > ("out" "doc") > #t > #f > @@ -41876,7 +41876,7 @@ > #("icedtea" > "3.7.0" > (gnu packages java) > - icedtea-8 > + icedtea > ("out" "jdk" "doc") > #t > #f > @@ -54376,7 +54376,7 @@ > #("linux-libre-headers" > "5.4.20" > (gnu packages linux) > - linux-libre-headers-5.4.20 > + linux-libre-headers > ("out") > #t > #f > @@ -54636,7 +54636,7 @@ > #("llvm" > "9.0.1" > (gnu packages llvm) > - llvm-9 > + llvm > ("out" "opt-viewer") > #t > #f > @@ -61826,7 +61826,7 @@ > #("ocaml" > "4.09.0" > (gnu packages ocaml) > - ocaml > + ocaml-4.09 > ("out") > #t > #f > @@ -62256,7 +62256,7 @@ > #("opencl-headers" > "2.2.0-0.e986688" > (gnu packages opencl) > - opencl-headers > + opencl-headers-2.2 > ("out") > #t > #f > @@ -92636,7 +92636,7 @@ > #("python2" > "2.7.17" > (gnu packages python) > - python-2 > + python-2.7 > ("out" "tk") > #t > #f > @@ -92646,7 +92646,7 @@ > #("python" > "3.8.2" > (gnu packages python) > - python-3 > + python > ("out" "tk") > #t > #f > @@ -123676,7 +123676,7 @@ > #("rust" > "1.39.0" > (gnu packages rust) > - rust-1.39 > + rust > ("out" "doc" "cargo") > #t > #f > > > The problem has to do with aliases: we don=E2=80=99t always see the same > variable first. So we have to sort before calling =E2=80=98expand-cache= =E2=80=99. Fixed in a127e52f601ee73f675d5d28eac2388bb1ad11b0! Ludo=E2=80=99.