From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id 0DJrKIdGDWSfbAEASxT56A (envelope-from ) for ; Sun, 12 Mar 2023 04:27:03 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id +GyCJ4dGDWSmAwAAG6o9tA (envelope-from ) for ; Sun, 12 Mar 2023 04:27:03 +0100 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 56B5E4A75 for ; Sun, 12 Mar 2023 04:27:03 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pbCLr-0000n2-Ff; Sat, 11 Mar 2023 22:26:27 -0500 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 1pbCLp-0000ma-Tr for guix-devel@gnu.org; Sat, 11 Mar 2023 22:26:25 -0500 Received: from mail-qt1-x82c.google.com ([2607:f8b0:4864:20::82c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pbCLn-0004lX-S2; Sat, 11 Mar 2023 22:26:25 -0500 Received: by mail-qt1-x82c.google.com with SMTP id c19so9980889qtn.13; Sat, 11 Mar 2023 19:26:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678591580; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=DAcPYX5CATUKt9V9jEalrE5VReRFI9rRd3Sxpis4RKM=; b=l3oRlD/X6QPA+cQB1/aa0MxSs6/+m7BLKMzQgMcoRkezGmjKsbD4kICMymYduB4Rni xEQGf+YD22RzDRcAoKmufEi5rOqo21A/R0lE/AacwHWv+/Jubh+suL7MFMGknq2+Oisc Dxc26ApKW/CwBaFyYYOPnNO4kUf9DwbGc00wo3uD/8l/rJWFROdDyG+LVeyaLztMbhWk HV7NHtbkLQBt+LBmnUKKncsCzRVU8WJXzGXY1Mwcvc9Sa9IicMtHv37fSi54ny75ow+Y dopCIKPUOZYspZ/2iprplT5YFt/lvP7+EQGwkG7Dty5Xoimd/ZgpxkweEJ3I4AcOn4N0 MSFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678591580; 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:subject:date:message-id:reply-to; bh=DAcPYX5CATUKt9V9jEalrE5VReRFI9rRd3Sxpis4RKM=; b=WlUNP4Is871U+bYRQzc219U7bf27yWnkADGYBa/xnYsMZ32h+47xjUZvAtGw807LdA RxRc7l5qHDCg3Ubqf/aLwIf/cZVwtgBpbMloMoo1ku84qmNcqYiY63LM1qxDWJfxLigF jrA4XefqKgMskg5iYNVm58RrOCJDyb4U7KgL5UaiSnRASbOsIpBdfIDxi7fCOKMFnC+1 RufUf5ibnLr6pLayiv4m/dHDoqLTWVG8wlsesLxQu8Rf7dtDYFJdxM4By0vzbnUYm0c0 /VvtZ6YwKmWdDDSEB4FXTTFwT4ky28caKDjZDhpj03Uioxp2xl9GY3ETo4jNh6tvlRpo MftA== X-Gm-Message-State: AO0yUKWKADwHleMV72YX9gSYeh15ahxCGcpS+ODawh34pb4iZS2ToOhM DZlyMxWPLuDt5UKtCiz5G/BEv1w0/H2YzQ== X-Google-Smtp-Source: AK7set8fYiUbBEq90BtzSoLCWD03G+XHLFI8IHP52S2uNKyRyALc0R5fqRfuqk1yb4eAWwilbfhNGg== X-Received: by 2002:ac8:7f16:0:b0:3bf:d0b1:433d with SMTP id f22-20020ac87f16000000b003bfd0b1433dmr55728678qtk.60.1678591580602; Sat, 11 Mar 2023 19:26:20 -0800 (PST) Received: from hurd ([2607:fad8:4:3::1000]) by smtp.gmail.com with ESMTPSA id l24-20020ac848d8000000b003b9b8ec742csm2929224qtr.14.2023.03.11.19.26.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 11 Mar 2023 19:26:20 -0800 (PST) From: Maxim Cournoyer To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: Simon Tournier , Andreas Enge , =?utf-8?B?5a6L5paH5q2m?= , Christopher Baines , guix-devel@gnu.org, 61894@debbugs.gnu.org, guix-maintainers@gnu.org Subject: Re: bug#61894: [PATCH RFC] Team approval for patches References: <878rgga1qv.fsf@inria.fr> <871qm8wf8e.fsf@cbaines.net> <87r0u86qgo.fsf_-_@gnu.org> <87y1o9mina.fsf_-_@envs.net> <861qm0da4y.fsf@gmail.com> <87sfegwh28.fsf@gmail.com> <878rg7uqb4.fsf@gmail.com> <86lek6ntpb.fsf@gmail.com> <874jqtte7c.fsf@gmail.com> <87bkl0frnk.fsf@gnu.org> Date: Sat, 11 Mar 2023 22:26:18 -0500 In-Reply-To: <87bkl0frnk.fsf@gnu.org> ("Ludovic =?utf-8?Q?Court=C3=A8s=22'?= =?utf-8?Q?s?= message of "Fri, 10 Mar 2023 18:22:07 +0100") Message-ID: <87356ar6p1.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2607:f8b0:4864:20::82c; envelope-from=maxim.cournoyer@gmail.com; helo=mail-qt1-x82c.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.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 ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="l3oRlD/X"; 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-Seal: i=1; s=key1; d=yhetil.org; t=1678591623; a=rsa-sha256; cv=none; b=rXl2IKoKdLT31k4sYA6r4+0/bMUuy5dLs4M2JldVjt340kiNpbQMhmhXn0pNQKUkjokoxi Wq9tBV7h8uIUQl2+BoWGV8dKRBUt85Fr5AmSyYrfpGV79s98SHosJKgMWeTro5gbQ/ui5M QAdDdxCV9qKvMixByaxoSs3/iqZjG1a8BpXf6Y8vLDl0WsrdeW/eHVgIb4BUXvC9/xzV7K BlzLxbeV0PvYAcia1/To59KlEVXsf3DbHtK1T9vZjt+dH4klZw7NpYIvshkIhcrwpM0E3d XZEYYRXt8ZUs42E+XUIXzzIR7W7050UnV2NOXQ8+RDtagQBQ1ztG5D8h7qb9Wg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1678591623; 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: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=DAcPYX5CATUKt9V9jEalrE5VReRFI9rRd3Sxpis4RKM=; b=scXBDe8sPwhpyGSOuT0ULzYUnALadoTHPd8AWdJcKNg5U6PLGpzSl8luVuTewkvk8vH5vG N6s+8L0SfWF+gG543Nou9mGXyEIhlVHZmUkcroApAFa+2TwFodKElgaln2xRGf/+Ma2oXJ jI5Yalvty09cAeC4XZdGPRxWdCy21dZGdYyAJEV40Sj2letRC22JquLPC5A6RnnjV2JwFX sNTKCtL9BrlR1bGIHL832JgOcd+kX4l8fA2bz8hhmW6JU1gvElrpPAdmG7tEwdRd/YUzk3 OS9Q5ssWjcH2IV35UGxfqX4ptGSQLsB4bLuLuC0LpuhAzgIHGp9hFfkV9+uNdw== X-Migadu-Spam-Score: -3.44 X-Spam-Score: -3.44 X-Migadu-Queue-Id: 56B5E4A75 X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="l3oRlD/X"; 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 X-TUID: enPabt+ezxUx Hi Ludovic, Ludovic Court=C3=A8s writes: > Hello Maxim and all! > > Maxim Cournoyer skribis: > >>> With the proposed policy, members of a team would also have to review >>> and approve each other=E2=80=99s work. Formal approval means getting an >>> explicit =E2=80=9CLGTM=E2=80=9D (or similar) from at least one other te= am member. >> >> In other words, to give teams the power to gate the changes touching >> their scope. That's reasonable, if we have functional teams. I'd argue >> we aren't there yet. > > I kinda agree; bootstrapping issue then? Bootstrapping, yes, but also tooling, and people not yet catching up. As I've pointed before, we've had the doc mentioning a command which doesn't work to notify teams since at least October of last year [0] and it seems few people even noticed (I think you only did recently :-)), which tells me it's not a very well-trodden path yet! [0] https://issues.guix.gnu.org/58813 > I hope the maintainer team can help make teams =E2=80=9Cmore functional= =E2=80=9D, > whatever that teams. It=E2=80=99s really what maintainership is about in= Guix; > it=E2=80=99s not about writing code. I'm happy to help with the effort, but I don't think it's particularly relevant to Guix co-maintainers more than anyone else interested in advancing/contributing to Guix, and I find it great that it's this way (not out of laziness, but because the talent pool of the whole Guix community is much larger that that of us 4 co-maintainers). Per what we co-maintainers signed up for in [1], the co-maintainers three primary duties are: Enforcing GNU and Guix policies, such as the project=E2=80=99s commitme= nt to be released under a copyleft free software license (GPLv3+) and to follow the Free System Distribution Guideline (FSDG). Enforcing our code of conduct: maintainers are the contact point for anyone who wants to report abuse. Making decisions, about code or anything, when consensus cannot be reached. We=E2=80=99ve probably never encountered such a situation befo= re, though! [1] https://guix.gnu.org/en/blog/2019/gnu-guix-maintainer-collective-expan= ds/ >> And also: >>> I think it avoids the unavoidable misunderstandings that can arise in >>> a growing group and help pacify day-to-day collaboration. >> >> Again, "pacify" irks me a bit in this sentence, given I consider >> collaboration has and continues to be cordial in our community, unless >> I've been living under a rock. > > =E2=80=9CPacify=E2=80=9D in the sense that, by being explicit, we avoid > misunderstandings that could turn into unpleasant experiences. > > Like you I=E2=80=99m glad collaboration is nice and friendly; yet, over t= he past > few months I=E2=80=99ve experienced misunderstandings that seemingly brok= e the > consensus-based process that has always prevailed. I'm sorry that you feel that way. I don't think consensus was willfully broken, and perhaps by studying some actual examples of these occurrences we can better understand what went wrong and how the new suggested policy would have helped or could be modified to help avoid such problems in the future. It's also worth noting that this consensus-based process has always been implicit; for example, it is not defined/mentioned anywhere in our documentation. Perhaps it should? > In a way, that=E2=80=99s probably bound to happen as the group grows, and= I > think that=E2=80=99s why we must be explicit about what the process is an= d about > whether one is expressing consent or dissent. > > With so many things happening in Guix (yay!), it=E2=80=99s also easy to o= verlook > a change and realize when it=E2=80=99s too late. By having a rule that a= t least > one other person on the team must approve (consent to) a change, we > reduce that risk. > > Being on a team, then, is a way to express interest on a topic and to be > =E2=80=9Cin the loop=E2=80=9D. That's already what teams can do! I'd argue giving them the extra powers that would be conferred to teams in this is not needed/desirable. Some committer not a regular member of X team may still be confident enough to push a patch sitting on the tracker, and I think they should be able to. > It is not about asserting power or building a hierarchy; > it=E2=80=99s about formalizing existing relations and processes. OK; I think in practice it would amount to that though (building a hierarchy which has some form power). > I hope this clarifies my position! Yes, it does. Thanks for taking the time to field some of the questions! --=20 Thanks, Maxim