From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id 2IxlDe2sMGEuSgEAgWs5BA (envelope-from ) for ; Thu, 02 Sep 2021 12:52:29 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id mEcwCe2sMGE3fgAA1q6Kng (envelope-from ) for ; Thu, 02 Sep 2021 10:52:29 +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 908FD25C61 for ; Thu, 2 Sep 2021 12:52:28 +0200 (CEST) Received: from localhost ([::1]:43364 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mLkKZ-0000hO-Kj for larch@yhetil.org; Thu, 02 Sep 2021 06:52:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:40598) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLkKJ-0000el-AD for guix-devel@gnu.org; Thu, 02 Sep 2021 06:52:11 -0400 Received: from mail-qt1-x82f.google.com ([2607:f8b0:4864:20::82f]:43701) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mLkIR-0001RP-5c; Thu, 02 Sep 2021 06:52:11 -0400 Received: by mail-qt1-x82f.google.com with SMTP id s15so1081497qta.10; Thu, 02 Sep 2021 03:50:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=+4t3LDPUAZMD05HdrypBof66/PSgRwg+xOrkIJPv524=; b=gpFrZRLVILwZzjnfE7ju5eZFe7HM9L/iPuuziX6tDRaJgkSTCJfxYZbCWBijJ11lDn N63pPqb3dyI9v5xurxf3kXdRuCaVDga1CHRI0PD5f47i2D8EraRh9FXZaUIJBMdts4/G XSEtdwH2mgYkpjyGPXFVRClYACa/7t+wacy14YVgownTWp+qMCuvULRDyE6QdVMGVmCD UezZ1onMVUY8LkkARGh/nHOmgyjhlxpyp8MjmaY3RnC6ImUuMQONSgUjpTehAOyY1/88 TJKveI3rdcnKrFuJ5U265bREpg3jWOePo0BLMnNPOLTxbZ1MBjSsi8oDURmtdQVKqrjJ uFqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=+4t3LDPUAZMD05HdrypBof66/PSgRwg+xOrkIJPv524=; b=Y76aS0xYT6pTHx1kmCj8SAM3WRLN+XbpCqba1X78YT9wB/y2aizzre73ONTOylZu4L 5to7nUogz1SBDACZWae8GA2Gx+Pa09aX/OrA7OLPJDCS5g/q/oOBxMGVcMdY10o49mtM 8zNdyxfRudfwtr5xtwUOEBz4kWJ0BY5r/xuvg931TNeL0HLyhnw8A0RTGmej80A7B+8e eJX5scs6XFWGBFdeIgbgGFTabdxqI5b1+c1/OdCNO+6ehX8obPqxyD6ezLbcDWPIfucu DXqhKi4q8fF1FcPqhG8jA4D9wpeeSC4p6lA5BPxpflADwNBgR0Bk2hnzcTL17w88ZGm8 xKTw== X-Gm-Message-State: AOAM531wDeTfMuk9vG2aRO0Gutn+SDKQjuD55VksrtYu0LBKDQb7bZxg mdhfQTGBydbi+ec+T7nERvqj3GI317yizm0zkXLPshHeyKk= X-Google-Smtp-Source: ABdhPJyDWJYSDtxBLsY0Yz4DsftfCBy+2a+5jtIRfFJtMLlfFoeUR20jUcppVf2VIzPljxfexrPvR4jKGEs/iq90KdY= X-Received: by 2002:aed:2163:: with SMTP id 90mr2322219qtc.186.1630579813239; Thu, 02 Sep 2021 03:50:13 -0700 (PDT) MIME-Version: 1.0 References: <86pmu1qz2f.fsf@gmail.com> <87a6kv5m1q.fsf@gnu.org> In-Reply-To: <87a6kv5m1q.fsf@gnu.org> From: zimoun Date: Thu, 2 Sep 2021 12:50:02 +0200 Message-ID: Subject: Re: Transform options should error on nonexistant targets To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: multipart/mixed; boundary="0000000000008bfdf805cb00f222" Received-SPF: pass client-ip=2607:f8b0:4864:20::82f; envelope-from=zimon.toutoune@gmail.com; helo=mail-qt1-x82f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "guix-devel@gnu.org" Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1630579948; 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:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=+4t3LDPUAZMD05HdrypBof66/PSgRwg+xOrkIJPv524=; b=oDIiVaLiC8fTWyrGZG+sSG6xDtsxjVygOuDfYg7A9EapgTEnMAb1+5yP+b7VOaG/ltM7pA J84pyrb7D3WAyBMm6jCG2/4JW2ZkVKRrCcdfwnBrws8G/hsKovkXzwS07iN+uN7Jykkjvw SefgHndjG5NiWjWEAGQ40NWg0s5nxsCNO+QdTkuvFjW9ESla1v2HReF1OPR7iNYshNEhlk 3jdNTAfPk2jAo5ErIsJwRjsaB8GYZnDoXtitLpdNwKGAGPmsvYzzc1jh5qrszIUpDpaKpS CmWezIdU0KCMXLDVT0mtaNtVMrEOQ4XsORp8i6rxqfuU/sJp/GaLoWMvPJXQ0w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1630579948; a=rsa-sha256; cv=none; b=Dn0NVvFpBOB7+bgFN2RFyHZYiOtw5LRi+7jY/9akOjkiBF0/diSUr7ELZ8na7gd3ldONhi t54WjGbl+GIPxVD/pl6I3t32NxJDW+KcUwtGuCve/wQJA/OVI4ZgDe5Mt0LY0SOYfgTV0e 5X8ltaKJADCQdUpKER+/9xcjWWhWB259kRzPoW40mLtwe5hJIaEDJzSxnn5b10Uf/MvUJq NRcZA+lf554xa8ruZs0t3sBIYvFqCMBPiVxIeAX8xfomeScOOfZhbcTxCWAGayIO92rosx KoJ7ouW0/hLkRvhqL5p+utmlcB1tYr1rq7xweEbwU+uj0eSaSzux/NkXJ5cUNA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=gpFrZRLV; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Spam-Score: -1.22 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=gpFrZRLV; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: 908FD25C61 X-Spam-Score: -1.22 X-Migadu-Scanner: scn1.migadu.com X-TUID: uk/cv2e78vfN --0000000000008bfdf805cb00f222 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Ludo, On Thu, 2 Sept 2021 at 12:06, Ludovic Court=C3=A8s wrote: > Unfortunately we cannot do that: rewriting happens lazily, when the > various inputs fields (which are thunked) are accessed. When PROC > returns P, we still need to recurse into its inputs, until CUT? says we > can stop. (I=E2=80=99m surprised this change triggers only one test fail= ure > actually.) Yeah. After sending the email, I tried to fix stuff and I get the point. := -) However, from my opinion, it is easy to check if the package-target is a package or not, i.e. $ guix build foo --=3Dpackage-target=3Dnew guix build: error: package-target: unknown package For instance by using 'specification->package'; see attached patch. But then, the test suite fails; I guess because 'dummy-package' and I have not found the time to investigate. From my point of view, this kind of patch will fix one part of the initial issue reported by Ryan. The other issue is to list if the transformation is applied or not. I think it is possible by traversing again the graph and check if a property appears at least once; well it should be better to warn if the 'mapping-property' is not found at least once. I had some headaches to implement it... and I moved to other "urgent" stuff. :-) Last, speaking about transformations, the graph is walked too much when several transformations is applied: guix build hello --with-latest=3Dfoo --with-input=3Dbar=3Dbaz --with-lat= est=3Dchouib then the graph is walked 3 times, IIUC. The options needs a rewrite to pass a list of specs to 'package-with-latest-upstream' and not twice a list with only one element. This would reduce to 2 walks. Then it could be nice to compose the transformation and then walk only once (apply 'package-mapping' only once). Well, maybe I miss something. Cheers, simon --0000000000008bfdf805cb00f222 Content-Type: text/x-patch; charset="UTF-8"; name="0001-transformations-Error-when-incorrect-specifications.patch" Content-Disposition: attachment; filename="0001-transformations-Error-when-incorrect-specifications.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kt2seqv70 RnJvbSBjMGZhODZkMzE2YzkxMDQ0NjMwYjg1YzllNzg5ZjlhNDU1ZmQyOWY0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6aW1vdW4gPHppbW9uLnRvdXRvdW5lQGdtYWlsLmNvbT4KRGF0 ZTogRnJpLCAyNyBBdWcgMjAyMSAxODoxNToxNiArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIHRyYW5z Zm9ybWF0aW9uczogRXJyb3Igd2hlbiBpbmNvcnJlY3Qgc3BlY2lmaWNhdGlvbnMuCgoqIGd1aXgv dHJhbnNmb3JtYXRpb25zLnNjbSAodHJhbnNmb3JtLXBhY2thZ2Utd2l0aC1kZWJ1Zy1pbmZvLAp0 cmFuc2Zvcm0tcGFja2FnZS1sYXRlc3QsIHRyYW5zZm9ybS1wYWNrYWdlLXRlc3RzKVtyZXdyaXRl XTogUmFpc2Ugd2hlbgppbmNvcnJlY3Qgc3BlY2lmaWNhdGlvbi4KKG9wdGlvbnMtPnRyYW5zZm9y bWF0aW9uKVtwYWNrYWdlLW5hbWU/XTogTmV3IHByb2NlZHVyZS4KW2FwcGxpY2FibGVdOiBVc2Ug aXQuCi0tLQogZ3VpeC90cmFuc2Zvcm1hdGlvbnMuc2NtIHwgNDEgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKystLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyks IDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ3VpeC90cmFuc2Zvcm1hdGlvbnMuc2NtIGIv Z3VpeC90cmFuc2Zvcm1hdGlvbnMuc2NtCmluZGV4IDUxMjJiYWE0MDMuLjI1NDYwMTdkMGQgMTAw NjQ0Ci0tLSBhL2d1aXgvdHJhbnNmb3JtYXRpb25zLnNjbQorKysgYi9ndWl4L3RyYW5zZm9ybWF0 aW9ucy5zY20KQEAgLTEsNSArMSw2IEBACiA7OzsgR05VIEd1aXggLS0tIEZ1bmN0aW9uYWwgcGFj a2FnZSBtYW5hZ2VtZW50IGZvciBHTlUKIDs7OyBDb3B5cmlnaHQgwqkgMjAxNiwgMjAxNywgMjAx OCwgMjAxOSwgMjAyMCwgMjAyMSBMdWRvdmljIENvdXJ0w6hzIDxsdWRvQGdudS5vcmc+Cis7Ozsg Q29weXJpZ2h0IMKpIDIwMjEgU2ltb24gVG91cm5pZXIgPHppbW9uLnRvdXRvdW5lQGdtYWlsLmNv bT4KIDs7OwogOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBHdWl4LgogOzs7CkBAIC00MzIs OSArNDMzLDE1IEBAIHRvIHRoZSBzYW1lIHBhY2thZ2UgYnV0IHdpdGggIzpzdHJpcC1iaW5hcmll cz8gI2YgaW4gaXRzICdhcmd1bWVudHMnIGZpZWxkLiIKICAgICAgICAgICAgICAgIChyZXBsYWNl bWVudCAobG9vcCBuZXh0KSkpKSkpKSkKIAogICAoZGVmaW5lIHJld3JpdGUKLSAgICAocGFja2Fn ZS1pbnB1dC1yZXdyaXRpbmcvc3BlYyAobWFwIChsYW1iZGEgKHNwZWMpCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zIHNwZWMgcGFja2FnZS13aXRoLWRlYnVn LWluZm8pKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlY3MpKSkK KyAgICAocGFja2FnZS1pbnB1dC1yZXdyaXRpbmcvc3BlYworICAgICAobWFwIChsYW1iZGEgKHNw ZWMpCisgICAgICAgICAgICAobWF0Y2ggKHN0cmluZy10b2tlbml6ZSBzcGVjICVub3QtZXF1YWwp CisgICAgICAgICAgICAgICgoc3BlYykKKyAgICAgICAgICAgICAgIChjb25zIHNwZWMgcGFja2Fn ZS13aXRoLWRlYnVnLWluZm8pKQorICAgICAgICAgICAgICAoXworICAgICAgICAgICAgICAgKHJh aXNlCisgICAgICAgICAgICAgICAgKGZvcm1hdHRlZC1tZXNzYWdlIChHXyAifmE6IGludmFsaWQg c3BlY2lmaWNhdGlvbiIpIHNwZWMpKSkpKQorICAgICAgICAgIHNwZWNzKSkpCiAKICAgKGxhbWJk YSAob2JqKQogICAgIChpZiAocGFja2FnZT8gb2JqKQpAQCAtNDUxLDkgKzQ1OCwxNSBAQCB0byB0 aGUgc2FtZSBwYWNrYWdlIGJ1dCB3aXRoICM6c3RyaXAtYmluYXJpZXM/ICNmIGluIGl0cyAnYXJn dW1lbnRzJyBmaWVsZC4iCiAgICAgICAgICAoKCM6dGVzdHM/IF8gI2YpICNmKSkpKSkKIAogICAo ZGVmaW5lIHJld3JpdGUKLSAgICAocGFja2FnZS1pbnB1dC1yZXdyaXRpbmcvc3BlYyAobWFwIChs YW1iZGEgKHNwZWMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChj b25zIHNwZWMgcGFja2FnZS13aXRob3V0LXRlc3RzKSkKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNwZWNzKSkpCisgICAgKHBhY2thZ2UtaW5wdXQtcmV3cml0aW5nL3Nw ZWMKKyAgICAgKG1hcCAobGFtYmRhIChzcGVjKQorICAgICAgICAgICAgKG1hdGNoIChzdHJpbmct dG9rZW5pemUgc3BlYyAlbm90LWVxdWFsKQorICAgICAgICAgICAgICAoKHNwZWMpCisgICAgICAg ICAgICAgICAoY29ucyBzcGVjIHBhY2thZ2Utd2l0aG91dC10ZXN0cykpCisgICAgICAgICAgICAg IChfCisgICAgICAgICAgICAgICAocmFpc2UKKyAgICAgICAgICAgICAgICAoZm9ybWF0dGVkLW1l c3NhZ2UgKEdfICJ+YTogaW52YWxpZCBzcGVjaWZpY2F0aW9uIikgc3BlYykpKSkpCisgICAgICAg ICAgc3BlY3MpKSkKIAogICAobGFtYmRhIChvYmopCiAgICAgKGlmIChwYWNrYWdlPyBvYmopCkBA IC01NjksNyArNTgyLDEyIEBAIGFyZSByZXBsYWNlZCBieSB0aGVpciBsYXRlc3QgdXBzdHJlYW0g dmVyc2lvbi4iCiAgIChkZWZpbmUgcmV3cml0ZQogICAgIChwYWNrYWdlLWlucHV0LXJld3JpdGlu Zy9zcGVjCiAgICAgIChtYXAgKGxhbWJkYSAoc3BlYykKLSAgICAgICAgICAgIChjb25zIHNwZWMg cGFja2FnZS13aXRoLWxhdGVzdC11cHN0cmVhbSkpCisgICAgICAgICAgICAobWF0Y2ggKHN0cmlu Zy10b2tlbml6ZSBzcGVjICVub3QtZXF1YWwpCisgICAgICAgICAgICAgICgoc3BlYykKKyAgICAg ICAgICAgICAgIChjb25zIHNwZWMgcGFja2FnZS13aXRoLWxhdGVzdC11cHN0cmVhbSkpCisgICAg ICAgICAgICAgIChfCisgICAgICAgICAgICAgICAocmFpc2UKKyAgICAgICAgICAgICAgICAoZm9y bWF0dGVkLW1lc3NhZ2UgKEdfICJ+YTogaW52YWxpZCBzcGVjaWZpY2F0aW9uIikgc3BlYykpKSkp CiAgICAgICAgICAgc3BlY3MpKSkKIAogICAobGFtYmRhIChvYmopCkBAIC02OTUsNiArNzEzLDEy IEBAIHRoZSByZXN1bHRpbmcgb2JqZWN0cy4gIE9QVFMgbXVzdCBiZSBhIGxpc3Qgb2Ygc3ltYm9s L3N0cmluZyBwYWlycyBzdWNoIGFzOgogCiBFYWNoIHN5bWJvbCBuYW1lcyBhIHRyYW5zZm9ybWF0 aW9uIGFuZCB0aGUgY29ycmVzcG9uZGluZyBzdHJpbmcgaXMgYW4gYXJndW1lbnQKIHRvIHRoYXQg dHJhbnNmb3JtYXRpb24uIgorICAoZGVmaW5lIChwYWNrYWdlLW5hbWU/IHZhbHVlKQorICAgIDs7 IFJldHVybiBhbiBlcnJvciBpZiB2YWx1ZSBkb2VzIG5vdCBjb3JyZXNwb25kIHRvIGEgcGFja2Fn ZS4KKyAgICAobWF0Y2ggKHN0cmluZy10b2tlbml6ZSB2YWx1ZSAlbm90LWVxdWFsKQorICAgICAg KChuYW1lIF8gLi4uKQorICAgICAgIChzcGVjaWZpY2F0aW9uLT5wYWNrYWdlIG5hbWUpKSkpCisK ICAgKGRlZmluZSBhcHBsaWNhYmxlCiAgICAgOzsgTGlzdCBvZiBhcHBsaWNhYmxlIHRyYW5zZm9y bWF0aW9ucyBhcyBzeW1ib2wvcHJvY2VkdXJlIHBhaXJzIGluIHRoZQogICAgIDs7IG9yZGVyIGlu IHdoaWNoIHRoZXkgYXBwZWFyIG9uIHRoZSBjb21tYW5kIGxpbmUuCkBAIC03MDcsNyArNzMxLDgg QEAgdG8gdGhhdCB0cmFuc2Zvcm1hdGlvbi4iCiAgICAgICAgICAgICAgICAgICAgICAgOzsgWFhY OiBXZSB1c2VkIHRvIHBhc3MgVFJBTlNGT1JNIGEgbGlzdCBvZiBzZXZlcmFsCiAgICAgICAgICAg ICAgICAgICAgICAgOzsgYXJndW1lbnRzLCBidXQgd2Ugbm93IHBhc3Mgb25seSBvbmUsIGFzc3Vt aW5nIHRoYXQKICAgICAgICAgICAgICAgICAgICAgICA7OyB0cmFuc2Zvcm0gY29tcG9zZXMgd2Vs bC4KLSAgICAgICAgICAgICAgICAgICAgICAobGlzdCBrZXkgdmFsdWUgKHRyYW5zZm9ybSAobGlz dCB2YWx1ZSkpKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAoYW5kIChwYWNrYWdlLW5hbWU/ IHZhbHVlKQorICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3Qga2V5IHZhbHVlICh0cmFuc2Zv cm0gKGxpc3QgdmFsdWUpKSkpKSkpKQogICAgICAgICAgICAgICAgIChyZXZlcnNlIG9wdHMpKSkK IAogICAoZGVmaW5lIChwYWNrYWdlLXdpdGgtdHJhbnNmb3JtYXRpb24tcHJvcGVydGllcyBwKQoK YmFzZS1jb21taXQ6IDcxMjViMGQ4YTFiZTU4ZTNmNWI2NmEwMGZjNTkxMmFlZDliMzMwZTQKLS0g CjIuMzIuMAoK --0000000000008bfdf805cb00f222--