From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id CMfXDRjq+WTESgAA9RJhRA:P1 (envelope-from ) for ; Thu, 07 Sep 2023 17:19:52 +0200 Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id CMfXDRjq+WTESgAA9RJhRA (envelope-from ) for ; Thu, 07 Sep 2023 17:19:52 +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 08B175668F for ; Thu, 7 Sep 2023 17:19:52 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=sUcQsHHb; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1694099992; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=EcZMt1J4qaBhQH3ffm33O1+FUoWjiOFfsL1q3FIL7dk=; b=E8VxKFmCK5E3jsi8RErWPzCz+GuFcnfLbORAAic6HFrBcgEDQlld/sWv24G0A9MhmZmZt0 UBQFd4iQ/qcKw9Hy0WoK+lYjqQH4Qggn4f6cyzs7tiLD5z+Z7QqUgJsKm5Xrkf4/5pOF+u ygq2QyevxHqdhiHWRl8JXl3rjQ15g0TJ9lUT00O/HwTd9zaw8zG+OnuxaPsZAEovruKfSO 6OTL1uxX7y5UW4/j6nsHGbVZAqOJX9ZkMB0uJ61kDgeIc8g4o4fNQhRFvvg2yX/gRDE2T5 PzGUfebdymlrC7es+DscLk6Sg2WGRxeBv/kEESNI9TIJsPP3iqz8s7pEm0LLZw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1694099992; a=rsa-sha256; cv=none; b=m11M2E37vl1vQiJcrP485fCbMZtAkwFNWnkXpfuxdQ8/b7G+nXN+cRGPRv9NQdcZxsH48+ AjELcpHnRx5xD7KYfFlaPaW/sIPJ8kMilCG2DNAglFsCZZUBWrRuGs4dIRUmMWY2dFvOVb Wcal1X+7vwqStVuxw75V7KBMUJ7MGHHZCG6UeN6iBcpTIF22vCY9JAEFxQjpLAAqt9cs0Y IeIn9wSU2NeQ14npe9jf940Mok0E6dY1OHtNfI16cULvUXmHuEIr71V24aExrfEEv3Q8wy HBaEkDBH/KYVSUE+Jt5Yec8fS0Cr2IbBDY2tYDeEZKgaxooWVrcfWNOhMHikag== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=sUcQsHHb; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gmail.com Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qeGmj-0007Ht-6w; Thu, 07 Sep 2023 11:19:09 -0400 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 ) id 1qeGmh-0007H2-4U for guix-devel@gnu.org; Thu, 07 Sep 2023 11:19:07 -0400 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qeGmV-0000Gt-1C for guix-devel@gnu.org; Thu, 07 Sep 2023 11:19:05 -0400 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-401314e7838so2780835e9.1 for ; Thu, 07 Sep 2023 08:18:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1694099933; x=1694704733; darn=gnu.org; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=EcZMt1J4qaBhQH3ffm33O1+FUoWjiOFfsL1q3FIL7dk=; b=sUcQsHHbJd+Kwfc8e/vd7IOgEoYKh6LMdvPoNzb2y6aprRbY2A4+xVvXbAd5vWvhku Y+F7UG6OLSkDydoC8u1ymm0HbTOy1IWYpR6wEweYeI57P5VZrPsSjv5vniCXlyuS2Ewn edRNv+Nus93G8uDXnYutHKyLXqoXKSndxn093+DTQrzWgI6V7PC+lBLdDFjcNRBKWGIc CalvZ/UfqBEAitxhWGuJFqrZ7TLW+GqOwSb3hRifTzd1xfOMyhs4lfBCxZA0Hox6JCY8 3uRE6a77uN+nCtIWI733LtGTTin7FzSg0XBwAc72Fq7aVMuvpkDUvKC0JRoXvs2Kl3VQ dC5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1694099933; x=1694704733; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=EcZMt1J4qaBhQH3ffm33O1+FUoWjiOFfsL1q3FIL7dk=; b=eM0VVBoUX+dOHUOLqnRFMrv1UbVRUTaLUXCijJ9nmkfGdPGpg2v61lIUWVtof6+o3b hlFE0bLXPIgEdbdx2y1ceHGU4GDaqa9/wPLiJhAGeHiKgxJdLAFkaUrOXRgw2nJJp8Yd diFftBUeQkhKJmpQfJiq0+5WaTwWngTqLcXjeBRkmWTCJzE3y0+tb4SHcnNEtKqBOmpS itcBkthNBlTQ92Q4N/HiAKcrSdSLniRS3Dsk+S18r+AKcTl+inHo/y6jVAem2+waUmU6 PGDquAHRRBE6Ep1/5N3lck17lu42ovUAvD3ssLghFmmu3Hf4ZQLM1jKMUCYYdr7qFN1k MmMA== X-Gm-Message-State: AOJu0YwM9akjq/NZClOT1m6sgIjLjPNHy7Zkpy+mg+ienodo/896XDLN X09fkDeK+zFXsZVgPBmcH5R4h+E9+Jk= X-Google-Smtp-Source: AGHT+IFZdLDJh2mcmxaql1SQ6KpvUmNutWPhIwV0KrloIiHMluP1/vOW1dHjlg2ByJ3M4mNjMPzyrQ== X-Received: by 2002:a5d:5049:0:b0:317:5f08:329f with SMTP id h9-20020a5d5049000000b003175f08329fmr14964763wrt.1.1694099933342; Thu, 07 Sep 2023 08:18:53 -0700 (PDT) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id b11-20020adfee8b000000b0031aeca90e1fsm23665148wro.70.2023.09.07.08.18.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Sep 2023 08:18:53 -0700 (PDT) From: Simon Tournier To: Distopico , guix-devel@gnu.org Subject: Re: Pinned versions should be a requirement. In-Reply-To: <87h6o9pbbv.fsf@riseup.net> References: <87h6o9pbbv.fsf@riseup.net> Date: Thu, 07 Sep 2023 14:39:57 +0200 Message-ID: <87h6o6kvhe.fsf@gmail.com> 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::333; envelope-from=zimon.toutoune@gmail.com; helo=mail-wm1-x333.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Scanner: mx2.migadu.com X-Spam-Score: -9.58 X-Migadu-Queue-Id: 08B175668F X-Migadu-Spam-Score: -9.58 X-TUID: a6Y1aseScgFp Hi, On Mon, 04 Sep 2023 at 21:59, Distopico wrote: > In my experience using Guix and attempting to make contributions, I've > noticed that the vast majority of times when a library breaks, it's > because one of its dependencies changed version. That=E2=80=99s because contributor and/or reviewer are not running guix refresh -l foobar for checking that all the dependants of foobar still build. Well, there is no easy solution, although QA is helping. Note that this points is not listed in the long list of Katherine, Re: How can we decrease the cognitive overhead for contributors? Katherine Cox-Buday Wed, 30 Aug 2023 10:11:02 -0600 id:e47299e8-43f8-aac8-61ba-420daeb88bdd@gmail.com https://yhetil.org/guix/e47299e8-43f8-aac8-61ba-420daeb88bdd@gmail.= com https://lists.gnu.org/archive/html/guix-devel/2023-08 > For instance, > referencing something like `rust-my-lib-1`, where "1" refers to the > semver "1.x" of the package, e.g., "1.0.32", and `rust-foo` depends on > `rust-my-lib =3D=3D 1.0.32`. However, in some other package got updated to > "1.0.34" so `rust-foo` will break. I've seen this happen a lot with > Haskell and Rust libraries. Well, from my point of view, the issue depends on the upstream package ecosystem. Considering Haskell, we follow LTS, currently ;; Latest LTS version compatible with current GHC. (define %default-lts-version "20.5") from the module (guix import stackage). And note the lint checker, =E2=80=9Cguix lint -l=E2=80=9D: - haskell-stackage: Ensure Haskell packages use Stackage LTS versions > For these reasons, I believe that pinned versions should be a > requirement in libraries, always specifying the exact dependency, for > example, `rust-serde-json-1.0.98`. In the Subject: of the message, it reads pinned/fixed. The difference is: + 'pinned': version that rarely changes + 'fixed': mainly the ones with security fixes used as grafts as discussed in [1]. Maybe you already know, it is just in case or for other potential readers. :-) > This brings the following benefits: This issue that you are describing is not new and it often comes up. The current consensus in order to detect such breaks is to apply patches to the dedicated branch of the team. In the case you are reporting, it seems that the changes should go first to the rust-team branch and that branch should be merges once all builds. The workflow is not clearly established and still discussed. We collectively came up with a rough first draft at the last Guix Days back on February. Here some pointers, Discussion notes on releases and branches Andreas Enge Thu, 09 Feb 2023 13:19:28 +0100 id:Y+Tk0OKTyKKDqqlm@jurong https://yhetil.org/guix/Y+Tk0OKTyKKDqqlm@jurong https://lists.gnu.org/archive/html/guix-devel/2023-02 Feature branches (was: 04/09: gnu: mesa: Update to 23.0.3) Andreas Enge Mon, 08 May 2023 18:33:53 +0200 id:ZFkkcQ2MOpku9YaF@jurong https://yhetil.org/guix/ZFkkcQ2MOpku9YaF@jurong https://lists.gnu.org/archive/html/guix-devel/2023-05 and the hope is that such workflow should act as your proposal but without maintaining many variants (regular, /pinned and potential /fixed for security fixes). > Additionally, I believe that a command to list the dependency tree of a > package would be ideal for easier debugging. Do you mean =E2=80=9Cguix refresh -l=E2=80=9D? --8<---------------cut here---------------start------------->8--- $ guix refresh -l gmsh Building the following 3 packages would ensure 4 dependent packages are reb= uilt: openfoam-com@2212 python-pygmsh@7.1.17 openfoam-org@10.20230119 $ guix build $(guix refresh -l gmsh | cut -d':' -f2) =E2=80=A6 build all packages impacted by a change in the package gmsh = =E2=80=A6 --8<---------------cut here---------------end--------------->8--- Cheers, simon 1: [bug#61078] [PATCH 0/4] Rename '/fixed' by '/pinned' Simon Tournier Thu, 26 Jan 2023 17:42:38 +0100 id:20230126164238.2462377-1-zimon.toutoune@gmail.com https://yhetil.org/guix/20230126164238.2462377-1-zimon.toutoune@gmail.com https://issues.guix.gnu.org/msgid/20230126164238.2462377-1-zimon.toutoune@g= mail.com