From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id QF4aLpQ+CmNHGwEAbAwnHQ (envelope-from ) for ; Sat, 27 Aug 2022 17:56:04 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id WEkILpQ+CmNt4AAA9RJhRA (envelope-from ) for ; Sat, 27 Aug 2022 17:56:04 +0200 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 4A11E2528 for ; Sat, 27 Aug 2022 17:56:04 +0200 (CEST) Received: from localhost ([::1]:45682 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oRyAF-0001UG-88 for larch@yhetil.org; Sat, 27 Aug 2022 11:56:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42996) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRy9H-0001EW-19 for bug-guix@gnu.org; Sat, 27 Aug 2022 11:55:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:38880) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oRy9G-0000ng-OB for bug-guix@gnu.org; Sat, 27 Aug 2022 11:55:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oRy9G-0003gN-Ix for bug-guix@gnu.org; Sat, 27 Aug 2022 11:55:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#57121: clojure-build-system fails to compile -- backtrace from language/tree-il/peval.scm Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sat, 27 Aug 2022 15:55:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 57121 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Maxime Devos Cc: 57121@debbugs.gnu.org Received: via spool by 57121-submit@debbugs.gnu.org id=B57121.166161564314067 (code B ref 57121); Sat, 27 Aug 2022 15:55:02 +0000 Received: (at 57121) by debbugs.gnu.org; 27 Aug 2022 15:54:03 +0000 Received: from localhost ([127.0.0.1]:56857 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRy8J-0003ep-Bb for submit@debbugs.gnu.org; Sat, 27 Aug 2022 11:54:03 -0400 Received: from mail-qv1-f43.google.com ([209.85.219.43]:38727) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRy8H-0003eL-1J for 57121@debbugs.gnu.org; Sat, 27 Aug 2022 11:54:01 -0400 Received: by mail-qv1-f43.google.com with SMTP id u6so3302824qvp.5 for <57121@debbugs.gnu.org>; Sat, 27 Aug 2022 08:54:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc; bh=5jVPOnOymzVcgC3nuyEeaKCCOY/oldYi11gbydWGeBE=; b=hU9IDNSIvpJNVP5G1mXiFAOMbB24FjU6PhgCqTZGZpWktuOl0QTnlvWm8I+6jV8xrf for123lMgPzVuVJFiLZjOQheE8qQlcx7VJA2P8j+e4zmDOWEkK1Sjpk0e+PL3PyNHncn 9+QOTO0i5O3A+TEa4I07GvtcK+SLGoyI6P3+lFR8ZFz2fiHtqZGWfGQb3xBwx+/nvXbJ uG4pPM96qstfiH+oYaWulxqNTkIrDJoNejr2rs+WkEC1ASB7ZIP4oDHhbEOGb71n8LfL 3zl823ynqYQOAGtbGt0RUUDiwc1rXrcAmeSIrxVyhRdxIFWfWoHGgd6hAf5cDcEMCuU8 styg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state :from:to:cc; bh=5jVPOnOymzVcgC3nuyEeaKCCOY/oldYi11gbydWGeBE=; b=mx7NKahbnazCielbPcLxm1z3AonW7c8RSr9Be3/3Bc4tPvrPzzjuznXQDfDVy7dbmQ YO+I46RJJx+aFVaGo7cZGNQ4krb382DFgR/Yn8I87e9zyjAepL8t1AxZNr//ih0Prses +ccDRNpgubLZGAsLvx5+rGKYjmxwJL6AIM+cW6tbtlc235iipDNes8DQBm8JPncRMmei SRCKZEPOlNKPo0gyCmBaKNUkViGH+5DkOZexguzHNMmpbeXJjOZrFdSxK8VqFWe6mVLh p8h4QZJeAFJ83ootZa+tHc25jkEvChDezPY4lXcNc3Z62i//vGrerXFxkYAPOubXIVzZ O6qQ== X-Gm-Message-State: ACgBeo0aykiCrmLJm/2saCTLm+lMMo6uHWvtbY/oyrwRkvFOktyUVXnT JpyyaYJ69quMdgf+y/PKocOYdy6G83Q= X-Google-Smtp-Source: AA6agR7D6qXac6wEwQx8hklQDVo+1BjvhC73TIrtAXBTjI/zVqXn5+lH98IrNB5vsouqqbSiTAG0cQ== X-Received: by 2002:ad4:5cc6:0:b0:496:da16:45e4 with SMTP id iu6-20020ad45cc6000000b00496da1645e4mr3923404qvb.42.1661615635329; Sat, 27 Aug 2022 08:53:55 -0700 (PDT) Received: from hurd (dsl-149-141.b2b2c.ca. [66.158.149.141]) by smtp.gmail.com with ESMTPSA id bk18-20020a05620a1a1200b006b9122642f5sm2277235qkb.75.2022.08.27.08.53.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 27 Aug 2022 08:53:54 -0700 (PDT) From: Maxim Cournoyer References: <8cd4199a-7db2-ee39-1939-3783e020dc9c@telenet.be> <34b46a55-793b-fd50-a1e6-68794071a3c4@telenet.be> <87ilmohswc.fsf@gmail.com> <878rngi99p.fsf@gmail.com> <87y1vffvsv.fsf@gmail.com> Date: Sat, 27 Aug 2022 11:53:53 -0400 In-Reply-To: (Maxime Devos's message of "Tue, 23 Aug 2022 11:07:39 +0200") Message-ID: <87tu5xbs32.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1661615764; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=5jVPOnOymzVcgC3nuyEeaKCCOY/oldYi11gbydWGeBE=; b=C7ksgVqocJzu7iLxI5oRefCdQCZnGpj5QSdCGHYp4CALVZFP4Qe9qEHVn42bQZ66wxY7rg wV+0Sfd5mgmPYbptCFApjyuznrnxCQP9pfP3dkRyYKIfItN5T5JhWHUOtIkioZYXXBPBaQ 57TgYvgtsFCQC4/zkRBLrZ91WltCqs3X1XljagqktZPk9cbDWZMC37cM/m3ojxNV0rUOZ/ ly9DwqJ0FdoHqb07sTCM1TIMPDs8/3NRTSQDt47MoWDye/2qWhChxxMCZ2+PrKplz6R9eR HfAQbPQ62ftxTgrKp9EQC7/GUKEivmBnHjvA4zUR6vnZHIrnawUys0Hg27y3gw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1661615764; a=rsa-sha256; cv=none; b=W/AJyq1GfJs+Ka86LZZZS4v+7pir76N6u5o4fIItk+WBDuqq8R0I9fTs23wVka1RG9c3zV JUho38yCDMRIJ60kPG2/nOSjsiN/eJbBVy71fbFWUd9ouQ28RQ2qgfka2WNSJa4xEjF3qx J/5dk7Cw8bSbvl49vBEoQHugCnLQrdzjYd4qNlp/51tyt+iwlhb2PuE7cQqvWQLtmy0Weo XcNEUqU/C7wuvKUhXPmx0jr144jzowVFvwWbyiDLfUOJ/48KSrJoImjKv4JLNe64fiVNeJ 9yu5PiYfOx07Zm40ZYtUVt8DxP9S44ae6MgoUJntDhJajurO6bDDi7QyY5N5OQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=hU9IDNSI; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 6.80 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=hU9IDNSI; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 4A11E2528 X-Spam-Score: 6.80 X-Migadu-Scanner: scn0.migadu.com X-TUID: kKPafNf7Xw+5 Hi Maxime, Maxime Devos writes: > On 23-08-2022 06:06, Maxim Cournoyer wrote: >> Hi Maxime, >> >> Maxime Devos writes: >> >>> On 22-08-2022 17:32, Maxim Cournoyer wrote: >>>>> These patches are for Guix' build system.=C2=A0 I don't see anything = that >>>>> could be done on the Guile side, except for eventually migrating some >>>>> dependency tracking stuff over to Guile >>>> If a module imports a different module, and that module changes, even = if >>>> it's macro, Guile should not blindly reuse the stale .go like it >>>> currently does. It should complain and evaluate from source instead. >>>> >>>> That would cover the base and avoid breakage. After, if it known how = to >>>> do that, yes, it seems it'd be useful to have something similar to 'gcc >>>> -M' to provide the needed intelligence to the build system. >>>> >>>> Does that make sense? >>> Sounds reasonable, though we could go for something less general in >>> Guix first. >> I'd rather avoiding adding more complexity in Guix if it can be fixed >> upstream; where it'd benefit everyone most. > > It cannot be solved upstream, this is not a pure Guile matter but also > a build system matter. Even if this the 'if that module changes, it > ... should evaluate from source' was implemented, the build system > still needs to know to compile the module. OK. I'd welcome fixing as much of it as possible in Guile, then adding the Guix-specific bits on top of it. We already carry a bit too many things in Guix that could be in Guile proper, in my opinion. > More concretely, build-aux/compile-all.scm uses the following to > determine what needs to be recompiled: > >> (define (file-needs-compilation? file) >> =C2=A0 (let ((go (scm->go file))) >> =C2=A0=C2=A0=C2=A0 (or (not (file-exists? go)) >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (file-mtime --- just interpreting imported modules that have changed doesn't cause > the importing module to be recompiled. > [...] OK, I see that since we already implement such mechanism in Guix, it's on our shoulders to fix it there. I'm changing my mind but with what I said above (as much of the fix to go in Guile, the rest on top in Guix). Thank you, Maxim