Ludovic Courtès <ludo@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 53127) by debbugs.gnu.org; 11 Jan 2022 10:11:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 11 05:11:28 2022 Received: from localhost ([127.0.0.1]:54215 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1n7E7k-0004Nx-9O for submit <at> debbugs.gnu.org; Tue, 11 Jan 2022 05:11:28 -0500 Received: from hera.aquilenet.fr ([185.233.100.1]:44366) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ludo@HIDDEN>) id 1n7E7i-0004Ni-Uj for 53127 <at> debbugs.gnu.org; Tue, 11 Jan 2022 05:11:27 -0500 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 783705FE; Tue, 11 Jan 2022 11:11:21 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nbb2P6HK5P6H; Tue, 11 Jan 2022 11:11:20 +0100 (CET) Received: from ribbon (unknown [193.50.110.156]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 89CC2F2; Tue, 11 Jan 2022 11:11:20 +0100 (CET) From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN> To: Liliana Marie Prikler <liliana.prikler@HIDDEN> Subject: Re: bug#53127: [PATCH RFC] Turning Rust/Cargo inputs into =?utf-8?B?4oCccmVndWxhcuKAnQ==?= inputs? References: <87sfty3yb5.fsf@HIDDEN> <f31aa42f47fef21dd459771402601ddbe16998a9.camel@HIDDEN> <87zgo4ynk4.fsf@HIDDEN> <5d8fcfd860d68aa3f1173744031ff2a55a0adf28.camel@HIDDEN> Date: Tue, 11 Jan 2022 11:11:19 +0100 In-Reply-To: <5d8fcfd860d68aa3f1173744031ff2a55a0adf28.camel@HIDDEN> (Liliana Marie Prikler's message of "Mon, 10 Jan 2022 21:24:10 +0100") Message-ID: <875yqqy43c.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: / Authentication-Results: hera.aquilenet.fr; none X-Rspamd-Server: hera X-Rspamd-Queue-Id: 783705FE X-Spamd-Result: default: False [0.90 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.10)[text/plain]; RCPT_COUNT_TWO(0.00)[2]; FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; SUBJECT_ENDS_QUESTION(1.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[] X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 53127 Cc: 53127 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) Liliana Marie Prikler <liliana.prikler@HIDDEN> skribis: > Am Montag, dem 10.01.2022 um 09:58 +0100 schrieb Ludovic Court=C3=A8s: >> Hi! >>=20 >> Liliana Marie Prikler <liliana.prikler@HIDDEN> skribis: >>=20 >> > I suppose adding (package-source rust-cargo) to inputs to preserve >> > the >> > old meaning would not make much sense? >>=20 >> No because you need transitivity (that is, you need sources of the >> dependencies, too). >>=20 >> > If so, what about having a source output and using (list `(,rust- >> > cargo >> > "source") ...)? >>=20 >> AFAICS it wouldn=E2=80=99t help solve the problems I mentioned. > Even if it held the transitive sources? Ah yes, that could work. > The only other idea I have is somehow adapting maven-build-system's > parent-poms, but I don't know how that'd look like implementation-wise. I=E2=80=99m not familiar with this. [...] >> Yeah, we could change things incrementally if that helps. >>=20 >> However, given that =E2=80=98guix style=E2=80=99 can automate all the ch= anges, I >> think we could just as well change everything at once.=C2=A0 The good >> thing is that it allows us that the strategy we choose actually works >> at scale, in every case. > Ahh, but what if we told =E2=80=98guix style=E2=80=99 to automate all the= changes > incrementally? In other words, we'd tell it to detect cycles in inputs > and only commit those changes that it can make without creating one.=20 > That'd be similar to the new-style inputs change, which also aborts if > even a single input can't be handled. Hmm yes, maybe. As a first step I=E2=80=99d like to see if we can get rid = of those cycles altogether (that seems to be the case at first sight) or if it=E2=80=99s just not an option. Thanks, Ludo=E2=80=99.
bug-guix@HIDDEN
:bug#53127
; Package guix
.
Full text available.Received: (at 53127) by debbugs.gnu.org; 10 Jan 2022 20:24:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 10 15:24:21 2022 Received: from localhost ([127.0.0.1]:53387 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1n71DJ-0000PI-L7 for submit <at> debbugs.gnu.org; Mon, 10 Jan 2022 15:24:21 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:42965) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <liliana.prikler@HIDDEN>) id 1n71DG-0000P1-KN for 53127 <at> debbugs.gnu.org; Mon, 10 Jan 2022 15:24:20 -0500 Received: by mail-wm1-f65.google.com with SMTP id a83-20020a1c9856000000b00344731e044bso594767wme.1 for <53127 <at> debbugs.gnu.org>; Mon, 10 Jan 2022 12:24:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:subject:from:to:cc:date:in-reply-to:references :user-agent:mime-version:content-transfer-encoding; bh=3kZ5CN4F34N1VidVUPx8BywVew3q/YA/uh6/2QAfdpw=; b=YVitBknIGVFnsYGvbMi/yJa9zquy6PivqmfaqfPADmx+pp7YpMWdct2gt/2Xitsmld BncP2+Mw3qVuHR5b6qI63pjeY0/1xZBN9AKNLPRiBF2bBoqJfHNQMCjw2vyJUhgJ+j8p wgWQvGZbOkwSpfXKbuXEFvR6dOvP+GPlb7Fbxe4fm/kw4vbfvMdpRyzEDaPiIbBmjzwb Xm8HAd/i/dVAxTPr4Ywtj7jcg/u0oW1/udfsaTJ4A5mJqU6OfYVsmEuXLFv4OPvJWI7L U+mwEPZfFk0t591673VYC6/CVyEV3IBJQufryTG5zezgNklB1lmZ1fsIV5LKVzpZoSih HdtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=3kZ5CN4F34N1VidVUPx8BywVew3q/YA/uh6/2QAfdpw=; b=uIG5gnNon6SGFFGPdsVV2KgPZk9K/Qee3tELWTZ3d8k0n7iJhTIJi2n+dgHCwJMkwt hLF0xSNXjwra+YSyttHNK8cf17e2qLk1ZSgf1wJ1dBUiWoA0Q3THxXsNdFCCXoyKEJ9C W1xCjPRz1nanCWFQY8S4lCJiGZwGQe5Kf6KIyiVPSo+Yg7TiGo2pZrtrIxgmUK0el5b3 K6KYMGJzT7dN4q403NYTQgMd7DqkdOOWLf5RGbDaMO2LxIJ2Jh82/kEpWva+dCMnXh2U INlcKgLYze7cA/OZHasiBQWHv61EJD7iuNL8abzvrw16QQL9jABTakaCsrjawBeDK9R7 7jow== X-Gm-Message-State: AOAM531dRb8gEE/7LfzQa8Z8Cw83/J5tv5PQQsje8SEn3/myKz0QJfrv fe8VSBiIpUSPtZb99fw617M= X-Google-Smtp-Source: ABdhPJxoOYWEfo7LTLI0lFSvUhJmxyq8Zruzn4eRheYR7d8/iRT5/UsqTzTKsYKF/+l5qaHa6LJIAA== X-Received: by 2002:a05:600c:21c6:: with SMTP id x6mr4433778wmj.135.1641846252734; Mon, 10 Jan 2022 12:24:12 -0800 (PST) Received: from nijino.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id t7sm4533070wrx.48.2022.01.10.12.24.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Jan 2022 12:24:12 -0800 (PST) Message-ID: <5d8fcfd860d68aa3f1173744031ff2a55a0adf28.camel@HIDDEN> Subject: Re: [PATCH RFC] Turning Rust/Cargo inputs into =?UTF-8?Q?=E2=80=9Cregular=E2=80=9D?= inputs? From: Liliana Marie Prikler <liliana.prikler@HIDDEN> To: Ludovic =?ISO-8859-1?Q?Court=E8s?= <ludo@HIDDEN> Date: Mon, 10 Jan 2022 21:24:10 +0100 In-Reply-To: <87zgo4ynk4.fsf@HIDDEN> References: <87sfty3yb5.fsf@HIDDEN> <f31aa42f47fef21dd459771402601ddbe16998a9.camel@HIDDEN> <87zgo4ynk4.fsf@HIDDEN> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.42.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53127 Cc: 53127 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Am Montag, dem 10.01.2022 um 09:58 +0100 schrieb Ludovic Courtès: > Hi! > > Liliana Marie Prikler <liliana.prikler@HIDDEN> skribis: > > > I suppose adding (package-source rust-cargo) to inputs to preserve > > the > > old meaning would not make much sense? > > No because you need transitivity (that is, you need sources of the > dependencies, too). > > > If so, what about having a source output and using (list `(,rust- > > cargo > > "source") ...)? > > AFAICS it wouldn’t help solve the problems I mentioned. Even if it held the transitive sources? The only other idea I have is somehow adapting maven-build-system's parent-poms, but I don't know how that'd look like implementation-wise. Also, with most of our Rust packages not even being built, it'd all be parent poms. > > > > > Last, the change to ‘inputs’ would introduce a few cycles at the > > > <package> level. Those cycles vanish when we lower to bags and > > > derivations. However, because of these cycles, things like ‘guix > > > refresh -l’ may not work; there might be other unexpected and > > > undesired side effects. > > What about making the change incrementally, so that outer layers > > can start adopting the new style while inner layers are being > > rebootstrapped. I also think it'd make sense to see how we could > > detect cycles through static analysis. > > Yeah, we could change things incrementally if that helps. > > However, given that ‘guix style’ can automate all the changes, I > think we could just as well change everything at once. The good > thing is that it allows us that the strategy we choose actually works > at scale, in every case. Ahh, but what if we told ‘guix style’ to automate all the changes incrementally? In other words, we'd tell it to detect cycles in inputs and only commit those changes that it can make without creating one. That'd be similar to the new-style inputs change, which also aborts if even a single input can't be handled. > > Cheers
bug-guix@HIDDEN
:bug#53127
; Package guix
.
Full text available.Received: (at 53127) by debbugs.gnu.org; 10 Jan 2022 08:58:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 10 03:58:49 2022 Received: from localhost ([127.0.0.1]:51805 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1n6qVt-0007mg-77 for submit <at> debbugs.gnu.org; Mon, 10 Jan 2022 03:58:49 -0500 Received: from hera.aquilenet.fr ([185.233.100.1]:34042) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ludo@HIDDEN>) id 1n6qVp-0007mK-31 for 53127 <at> debbugs.gnu.org; Mon, 10 Jan 2022 03:58:48 -0500 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 637E3F2; Mon, 10 Jan 2022 09:58:38 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fQRNBHLQ7TpZ; Mon, 10 Jan 2022 09:58:37 +0100 (CET) Received: from ribbon (91-160-117-201.subs.proxad.net [91.160.117.201]) by hera.aquilenet.fr (Postfix) with ESMTPSA id B1F02AD; Mon, 10 Jan 2022 09:58:36 +0100 (CET) From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN> To: Liliana Marie Prikler <liliana.prikler@HIDDEN> Subject: Re: [PATCH RFC] Turning Rust/Cargo inputs into =?utf-8?B?4oCccmVn?= =?utf-8?B?dWxhcuKAnQ==?= inputs? References: <87sfty3yb5.fsf@HIDDEN> <f31aa42f47fef21dd459771402601ddbe16998a9.camel@HIDDEN> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 21 =?utf-8?Q?Niv=C3=B4se?= an 230 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= 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, 10 Jan 2022 09:58:35 +0100 In-Reply-To: <f31aa42f47fef21dd459771402601ddbe16998a9.camel@HIDDEN> (Liliana Marie Prikler's message of "Sat, 08 Jan 2022 20:47:46 +0100") Message-ID: <87zgo4ynk4.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: / Authentication-Results: hera.aquilenet.fr; none X-Rspamd-Server: hera X-Rspamd-Queue-Id: 637E3F2 X-Spamd-Result: default: False [0.90 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.10)[text/plain]; RCPT_COUNT_TWO(0.00)[2]; FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; SUBJECT_ENDS_QUESTION(1.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 53127 Cc: 53127 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) Hi! Liliana Marie Prikler <liliana.prikler@HIDDEN> skribis: > I suppose adding (package-source rust-cargo) to inputs to preserve the > old meaning would not make much sense? No because you need transitivity (that is, you need sources of the dependencies, too). > If so, what about having a source output and using (list `(,rust-cargo > "source") ...)? AFAICS it wouldn=E2=80=99t help solve the problems I mentioned. >> Last, the change to =E2=80=98inputs=E2=80=99 would introduce a few cycle= s at the >> <package> level.=C2=A0 Those cycles vanish when we lower to bags and >> derivations.=C2=A0 However, because of these cycles, things like =E2=80= =98guix >> refresh -l=E2=80=99 may not work; there might be other unexpected and >> undesired side effects. > What about making the change incrementally, so that outer layers can > start adopting the new style while inner layers are being > rebootstrapped. I also think it'd make sense to see how we could > detect cycles through static analysis. Yeah, we could change things incrementally if that helps. However, given that =E2=80=98guix style=E2=80=99 can automate all the chang= es, I think we could just as well change everything at once. The good thing is that it allows us that the strategy we choose actually works at scale, in every case. >> Some of these cycles could in theory be removed.=C2=A0 For instance, >> =E2=80=98rust-cfg-if=E2=80=99 has an optional dependency on =E2=80=98rus= t-compiler-builtins=E2=80=99, >> which leads to a cycle, but Cargo won=E2=80=99t let us actually remove t= hat >> dependency, even though it=E2=80=99s optional. > Could we rewrite the toml file to tell Cargo it has no power over us?=20 > Could we define bootstrap mockups? Maybe, I don=E2=80=99t know! Thanks, Ludo=E2=80=99.
bug-guix@HIDDEN
:bug#53127
; Package guix
.
Full text available.Received: (at 53127) by debbugs.gnu.org; 8 Jan 2022 19:47:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 08 14:47:57 2022 Received: from localhost ([127.0.0.1]:48751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1n6Hgz-0003mf-LA for submit <at> debbugs.gnu.org; Sat, 08 Jan 2022 14:47:57 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:37511) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <liliana.prikler@HIDDEN>) id 1n6Hgv-0003le-Rx for 53127 <at> debbugs.gnu.org; Sat, 08 Jan 2022 14:47:56 -0500 Received: by mail-wr1-f67.google.com with SMTP id t28so11477724wrb.4 for <53127 <at> debbugs.gnu.org>; Sat, 08 Jan 2022 11:47:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:subject:from:to:date:in-reply-to:references:user-agent :mime-version:content-transfer-encoding; bh=0Gh+R7NG2o6vAe58tYrtEUpc0Rk0mWPfxl6aYZJ4qKM=; b=orFHjQuv//Ynaw8jAScI6DbL9MTpQC7JIS3UT/OFSAE6PvQ0rhh21bEfKS1bjuIALU zBjGBN3FDlYZU7egjmFDc3qHG9jP1AicmW5T/MFzRxl2B9+9Vukf71BlmE9zFD1IjQiX 2Y0v/0DQNUM1eyBGL9Kn+/YY3DjAnD8tB3C/W5tfpS1NGVOpsmpbSvJ+EALEDnjlTiXf oMstA3s9dl/NauzYDTuEBGvnkWBImogly1Ks0M9Z5bruHij0S+6zb97ZOXqmMAlw8Hwm IHSdTzB5+LboBpGBnrl7qt+1fYoklvNl9NgS04E5OjdGCTAcZuwKforYaKvZtQajIHK/ B3Tg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=0Gh+R7NG2o6vAe58tYrtEUpc0Rk0mWPfxl6aYZJ4qKM=; b=oLsH8yt9ceD5XW2nZKVFLsI15aIMdOug5Ey97rj/6oknOwd4t3YtbXf7BGID5SbGOn yhsFKwnY2McHmUu0e83COlov7czpVFBk8KjW0mZv/mIItPbskYiks2XrmtfFmUrsqlB1 T3sxu6yCSEOTIa6QhChuQHhQYqVfnDKo8ClGHvI83O09+MVa7dzmGsN6jdy73maNIwda HachPOs2fVUqZ7oYuwuv1ftF65LRlUkfFpWt5BfCeTud9oJdTpqW7iff+gj6HycvKV6Z dstg/x9Ub2lT9yanfE0AKBiY6RWKM1hAv1id7oGAB1Qa0/UhiqAsHSsGYSWRLCf+ByPm 0aiQ== X-Gm-Message-State: AOAM530Iisr+jg5jCK206Uh2S/MljWu8XJuZzsQyr1EnNU+MsMCtvctB gky3c346jYZuhXnQhKdbDuU= X-Google-Smtp-Source: ABdhPJxNDbCcQl74xRKFqzPaKRILHbVrG40yldkP++f6z4f5Pa5x7fLgYD2mpUmdcRTukdmTkRQMVg== X-Received: by 2002:adf:fc0f:: with SMTP id i15mr369924wrr.467.1641671268163; Sat, 08 Jan 2022 11:47:48 -0800 (PST) Received: from nijino.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id o16sm2442559wms.4.2022.01.08.11.47.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Jan 2022 11:47:47 -0800 (PST) Message-ID: <f31aa42f47fef21dd459771402601ddbe16998a9.camel@HIDDEN> Subject: Re: [PATCH RFC] Turning Rust/Cargo inputs into =?UTF-8?Q?=E2=80=9Cregular=E2=80=9D?= inputs? From: Liliana Marie Prikler <liliana.prikler@HIDDEN> To: Ludovic =?ISO-8859-1?Q?Court=E8s?= <ludovic.courtes@HIDDEN>, 53127 <at> debbugs.gnu.org Date: Sat, 08 Jan 2022 20:47:46 +0100 In-Reply-To: <87sfty3yb5.fsf@HIDDEN> References: <87sfty3yb5.fsf@HIDDEN> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.42.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53127 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.0 (-) Am Samstag, dem 08.01.2022 um 18:57 +0100 schrieb Ludovic Courtès: > Hello! > > I’m opening this issue to discuss the possibility of changing > #:cargo-inputs and #:cargo-development-inputs to regular inputs, as a > followup to: > > https://issues.guix.gnu.org/51845#10 > > I have a preliminary patch for ‘guix style’ and (guix build-system > cargo), but there’s a couple of stumbling blocks. > > First, after the hacky patch in the discussion above, I attempted to > turn #:cargo-inputs into ‘propagated-inputs’ (instead of ‘inputs’), > because that seemed to be somewhat more logical. That cannot work > though, because then those packages would propagate to non-Rust > packages; for example, librsvg would depend on the “build output” of > rust-* instead of just depending on its source. Anyway, I’m back to > ‘inputs’. > > Second, until now, these two things would have a different meaning: > > #:cargo-inputs (list rust-cargo) > > vs. > > (inputs (list rust-cargo)) > > In the latter case, the package depends on the build result of > ‘rust-cargo’; in the former case, the package depends on the source > of ‘rust-cargo’. (See ‘rav1e’ for an example where this happens.) I suppose adding (package-source rust-cargo) to inputs to preserve the old meaning would not make much sense? If so, what about having a source output and using (list `(,rust-cargo "source") ...)? > Last, the change to ‘inputs’ would introduce a few cycles at the > <package> level. Those cycles vanish when we lower to bags and > derivations. However, because of these cycles, things like ‘guix > refresh -l’ may not work; there might be other unexpected and > undesired side effects. What about making the change incrementally, so that outer layers can start adopting the new style while inner layers are being rebootstrapped. I also think it'd make sense to see how we could detect cycles through static analysis. > Some of these cycles could in theory be removed. For instance, > ‘rust-cfg-if’ has an optional dependency on ‘rust-compiler-builtins’, > which leads to a cycle, but Cargo won’t let us actually remove that > dependency, even though it’s optional. Could we rewrite the toml file to tell Cargo it has no power over us? Could we define bootstrap mockups? > PS: I guess you already knew all this Efraim but I’m kinda > (re)discovering it and now experiencing frustration firsthand. > :-) Let's hope at least someone in our team has overcome Rust fatigue by the time the GCC frontend for it lands. Rust is an incredibly good language, all it needs is a reasonable compiler and build system. Cheers
bug-guix@HIDDEN
:bug#53127
; Package guix
.
Full text available.Received: (at submit) by debbugs.gnu.org; 8 Jan 2022 17:57:45 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 08 12:57:45 2022 Received: from localhost ([127.0.0.1]:48683 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1n6FyK-0000fu-Kt for submit <at> debbugs.gnu.org; Sat, 08 Jan 2022 12:57:44 -0500 Received: from lists.gnu.org ([209.51.188.17]:41132) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ludovic.courtes@HIDDEN>) id 1n6FyH-0000fl-TQ for submit <at> debbugs.gnu.org; Sat, 08 Jan 2022 12:57:42 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49014) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <ludovic.courtes@HIDDEN>) id 1n6FyG-0002xb-M5 for bug-guix@HIDDEN; Sat, 08 Jan 2022 12:57:41 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:26387) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <ludovic.courtes@HIDDEN>) id 1n6FyE-00010u-LN for bug-guix@HIDDEN; Sat, 08 Jan 2022 12:57:40 -0500 IronPort-Data: =?us-ascii?q?A9a23=3AZut24KsHew7eX+QK7dH5zgvzz+fnVHFcMUV32f8?= =?us-ascii?q?akzHdYEJGY0x3zmcXDGDXO/qCYTH0e4gkbY/i/UgGusDSmtM1SQVppS5gHilAw?= =?us-ascii?q?SbnLYTAfx2oZ0t+DeWaERk5t51GAjX4wXFdokb0/n9BCZC86yksvU20buCkUrS?= =?us-ascii?q?cY3ghHVUMpBoJ0nqPpcZo2+aEvvDpW2thifuqyyHuEAfNNwxcagr42IrfwP9bh?= =?us-ascii?q?8kejRtD1rAIiV+ni3eF/5UdJMp3yahctBIUSKEMdgKxb76rIL1UYgrkExkR5tO?= =?us-ascii?q?Nyt4Xc2UQQ7TYOg7mZnh+CvHk20Ya4HVrjeBhbKN0hUR/0l1lm/h11dlKq527D?= =?us-ascii?q?wwuI7fQlf81Uh9CEig4M7cuFLrveCTk4ZHNnhKun3zEhq8G4FsNFYcF9aN4HGB?= =?us-ascii?q?e3fMeNXYKdB/rug4c6NpXUcE934F6cpGuZdpA/ys4lHfCEPw9B4jZRLXD6Zle0?= =?us-ascii?q?StYuyyHJt6GD+JxVNalRE2oj8VzB2oq?= IronPort-HdrOrdr: =?us-ascii?q?A9a23=3AYcqdWKpzOVwH0OKL8tD9r4kaV5o2eYIsimQD?= =?us-ascii?q?101hICG9E/bo9PxG885rsCMc5Ax+ZJhCo7C90de7MBHhHPdOiOF7V4tKOjOGhI?= =?us-ascii?q?LCFu1fBOXZrgEIYxeQytJg?= X-IronPort-AV: E=Sophos;i="5.88,273,1635199200"; d="scan'208";a="14385697" Received: from 91-160-117-201.subs.proxad.net (HELO ribbon) ([91.160.117.201]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jan 2022 18:57:35 +0100 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludovic.courtes@HIDDEN> To: bug-guix@HIDDEN Subject: [PATCH RFC] Turning Rust/Cargo inputs into =?utf-8?B?4oCccmVndWxh?= =?utf-8?B?cuKAnQ==?= inputs? X-Debbugs-Cc: Efraim Flashner <efraim@HIDDEN> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 19 =?utf-8?Q?Niv=C3=B4se?= an 230 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= 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: Sat, 08 Jan 2022 18:57:34 +0100 Message-ID: <87sfty3yb5.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=192.134.164.83; envelope-from=ludovic.courtes@HIDDEN; helo=mail2-relais-roc.national.inria.fr X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) Hello! I=E2=80=99m opening this issue to discuss the possibility of changing #:cargo-inputs and #:cargo-development-inputs to regular inputs, as a followup to: https://issues.guix.gnu.org/51845#10 I have a preliminary patch for =E2=80=98guix style=E2=80=99 and (guix build= -system cargo), but there=E2=80=99s a couple of stumbling blocks. First, after the hacky patch in the discussion above, I attempted to turn #:cargo-inputs into =E2=80=98propagated-inputs=E2=80=99 (instead of = =E2=80=98inputs=E2=80=99), because that seemed to be somewhat more logical. That cannot work though, because then those packages would propagate to non-Rust packages; for example, librsvg would depend on the =E2=80=9Cbuild output=E2= =80=9D of rust-* instead of just depending on its source. Anyway, I=E2=80=99m back to =E2=80=98inputs=E2=80=99. Second, until now, these two things would have a different meaning: #:cargo-inputs (list rust-cargo) vs. (inputs (list rust-cargo)) In the latter case, the package depends on the build result of =E2=80=98rust-cargo=E2=80=99; in the former case, the package depends on th= e source of =E2=80=98rust-cargo=E2=80=99. (See =E2=80=98rav1e=E2=80=99 for an example = where this happens.) If we turn all #:cargo-inputs into =E2=80=98inputs=E2=80=99, how can we dis= tinguish these two cases? A package like =E2=80=98rust-cargo=E2=80=99 is sometimes = depended on for its source, sometimes for its build result; thus, we cannot just annotate the =E2=80=98rust-cargo=E2=80=99 package itself. Last, the change to =E2=80=98inputs=E2=80=99 would introduce a few cycles a= t the <package> level. Those cycles vanish when we lower to bags and derivations. However, because of these cycles, things like =E2=80=98guix refresh -l=E2=80=99 may not work; there might be other unexpected and undes= ired side effects. Some of these cycles could in theory be removed. For instance, =E2=80=98rust-cfg-if=E2=80=99 has an optional dependency on =E2=80=98rust-c= ompiler-builtins=E2=80=99, which leads to a cycle, but Cargo won=E2=80=99t let us actually remove that dependency, even though it=E2=80=99s optional. In short: it=E2=80=99s complicated! Thoughts? Is status quo a lesser evil, after all?=E2=80=A6 Ludo=E2=80=99. PS: I guess you already knew all this Efraim but I=E2=80=99m kinda (re)discovering it and now experiencing frustration firsthand. :-)
Ludovic Courtès <ludovic.courtes@HIDDEN>
:efraim@HIDDEN, bug-guix@HIDDEN
.
Full text available.efraim@HIDDEN, bug-guix@HIDDEN
:bug#53127
; Package guix
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.