From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.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 mBeuH3KF9mQP1gAAG6o9tA:P1 (envelope-from ) for ; Tue, 05 Sep 2023 03:33:38 +0200 Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id mBeuH3KF9mQP1gAAG6o9tA (envelope-from ) for ; Tue, 05 Sep 2023 03:33:38 +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 38AAF56586 for ; Tue, 5 Sep 2023 03:33:38 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=A9HNvmwd; 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=1693877618; 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=g18cKPIdDXQBxxOQ0xwyOkitFEegAj1YCK8EnqsvOnU=; b=HfjOMWNYkvkyJJ/LiT9jFmORpulaiVqNbpN4VaIAj4AwM+45E3JCXptDx9i8GfhS7LbpNO iStuEz/6I3oQcqacgp57TlJI6IO0L9J+IR0YWBi0rPe9wQg9iU9+AEa3JRBqBW4FblP2j5 GaYzRsJJzb68VgTz4tYRhBlO/RVDY3DeGuuewYFYPOY/0C6CRByYV8kLzAd8X+vvXHpDWa REBlyxUoXRZoO3tdZdSx3RfuR1EhQoulA0LsNlWDVycGtLgXGTa0z/6l+DE2bHdARXvG10 K5mVEmEcuv6PkGuRVaJGBb/mQOCWXaIQxBBV6q0SUzWG7PHjKNIpqH4LzNou7Q== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1693877618; a=rsa-sha256; cv=none; b=ly1MiGpByigXdYKcsc85Zsa8ypNfejd3TzVrXlPwBv5d86fVFBU+ceZnK/R4sMRoKaBdo0 T16U/u9L956216/t2LtN+8W4ibEcnv6tC3RSFCfHlbyYzRLPRx0oqBrJr8r6IrmgrlaNkk KSipBAWVVxnOvqyuN4OAU0f/UtpwJdhIin6rmmJD2eotFIskILH+6GwrXp2bfgM7YGds5f VetFIHTd9hHBU0PCAWY+rmGVrb1sj5XbMQz1u8oIvZqROEo30Gp4WZ928mBUhgeHpTKdnR nwKXiI3oRCLE3tHBW2uL1BTQGaBZgHZgy3JvjktTIZPpZZLf2Xl30ifszRfJ1w== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=A9HNvmwd; 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 1qdKw9-0004LU-Nv; Mon, 04 Sep 2023 21:33:01 -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 1qdKw8-0004LK-4B for guix-devel@gnu.org; Mon, 04 Sep 2023 21:33:00 -0400 Received: from mail-qv1-xf2e.google.com ([2607:f8b0:4864:20::f2e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qdKw3-0006Ng-P2 for guix-devel@gnu.org; Mon, 04 Sep 2023 21:32:57 -0400 Received: by mail-qv1-xf2e.google.com with SMTP id 6a1803df08f44-64f383be0d4so12051036d6.3 for ; Mon, 04 Sep 2023 18:32:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693877574; x=1694482374; darn=gnu.org; 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=g18cKPIdDXQBxxOQ0xwyOkitFEegAj1YCK8EnqsvOnU=; b=A9HNvmwdiafE5xakEls3JgTuLMZUNQUIKgUD8R0is2naAD/rMx9GhLkKIPKIgPQICI I1/80bDrghwaG8Mryi5hPljb/zRjXhTRhERnxCjdsdws17XNXInCaPBmSmzNPqv4blIm zIx0Kzhz78X0ha0Jg+89cHONlD5+uYSruw2o4db+algt9yHmTUf600rDAIvc/06eip9X 9Zld7S9EiPlMLgYZip8tYSIQqlxKGtYbaigCIvxwFHYMfucVDdpBrGpjvnM65X66qDRz 3uQjm5O/y1ufjtiPhBJ9d2sqfckmi4NSMDCVXUhJ14jhv+F2ceKaEdtkUf/mAZEhJoVG dq3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693877574; x=1694482374; 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=g18cKPIdDXQBxxOQ0xwyOkitFEegAj1YCK8EnqsvOnU=; b=cHTOcS2Aj+32MrNri4oRXttRJZAntEaI1LnoJX2b0VlyU7W+bGDv5eA74Ixmj2VSpX x93swYgU5MkJ3dHmRKgvhdPkJfQbwCInbfgTb5LufMYVwk8n6JN+2/4S+FBnLCqqWL5+ tTOFIXruiusNJhQRh9+2od8NqKrS/Yw+pcHuFU5zYburphx6OoryaDDT8/JEtNgIqX1o sf7/o2uqRXS9G2BnspJRT2LdTfEc78h3ivTJw+qP6Gjbpw3dr4DeCudx3JSKjP2KEjGX wOJSSRbUS5gkBPMzCE2pFuyhOt9iNOKZM/tGs82E3LcxClL8EwKW8wDpVMQYC/RVInjJ 5GFA== X-Gm-Message-State: AOJu0YxLfWAwaWIRT3Tuaj8K3EGJoh0RnNNHz+W01QFmZepIjg8hZZBc DGTr8TFDXRo1VWsvlzGgUNSHIcpdiWo= X-Google-Smtp-Source: AGHT+IHvXCrVbGVHkEHlB7vlVF4nVEhlIM7deF+NSVMPbvowu8hqBKwuJgCG3EbaZgbW3DhlvUfdlw== X-Received: by 2002:a0c:aa19:0:b0:63c:dde2:5a20 with SMTP id d25-20020a0caa19000000b0063cdde25a20mr10079313qvb.0.1693877574405; Mon, 04 Sep 2023 18:32:54 -0700 (PDT) Received: from hurd (dsl-10-135-141.b2b2c.ca. [72.10.135.141]) by smtp.gmail.com with ESMTPSA id k16-20020a0cb250000000b006490a9946b6sm4061225qve.119.2023.09.04.18.32.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Sep 2023 18:32:53 -0700 (PDT) From: Maxim Cournoyer To: Katherine Cox-Buday Cc: Simon Tournier , guix-devel Subject: Re: How can we decrease the cognitive overhead for contributors? References: <871qfsuvad.fsf@gmail.com> <8e74c4ac-a6f3-9127-7e13-593a2eb70432@gmail.com> <87a5ubqxm6.fsf@gmail.com> Date: Mon, 04 Sep 2023 21:32:52 -0400 In-Reply-To: (Katherine Cox-Buday's message of "Wed, 30 Aug 2023 10:11:02 -0600") Message-ID: <87a5u1s8u3.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::f2e; envelope-from=maxim.cournoyer@gmail.com; helo=mail-qv1-xf2e.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 X-Migadu-Scanner: mx2.migadu.com X-Spam-Score: -8.59 X-Migadu-Queue-Id: 38AAF56586 X-Migadu-Spam-Score: -8.59 X-TUID: aMjdnVMS3IB8 Hi, Katherine Cox-Buday writes: [...] > Here's my understanding of the process to contribute a patch: > > =C2=A0 1. Check out main, and run `./bootstrap`, then `./configure > --localstatedir=3D/var --sysconfdir=3D/etc` > =C2=A0 2. Run `make` > =C2=A0 3. You need to determine whether the change can be targeted against > main or > =C2=A0=C2=A0=C2=A0=C2=A0 needs to target a feature branch, so you go read= about that. > > [I'm usually starting here] > > =C2=A0 4. Run `./pre-inst-env guix refresh --list-dependent ` > =C2=A0 5. Create a git worktree for your patch > =C2=A0 6. Run `./bootstrap`, then `./configure --localstatedir=3D/var > --sysconfdir=3D/etc` > =C2=A0 7. Run `make` > =C2=A0 8. Make your changes > =C2=A0 9. Build to ensure your changes are workable. > =C2=A0 10. Try and determine how your changes should be factored into ind= ividual > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 commits (sometimes it's not always so clea= r when changing two > things might > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 need to be done atomically). > =C2=A0 11. Try and get each commit message close to correct and commit. > =C2=A0 12. Run `guix lint` > =C2=A0 13. Run `guix style` (this is still in the manual although I have = since > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 learned this is not actually advisable). The intent is for it to be advisable -- when it's not, a bug should be/have been reported against it to track its resolution. [...] > =C2=A0 19. Run `guix pull --url=3D/path/to/your/checkout > --profile=3D/tmp/guix.master` to > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ensure you didn't break Guix in a differen= t way. 'make as-derivation' is probably more efficient to test for that > =C2=A0 20. Run `git format-patch -1 --cover-letter [--reroll-count]` > =C2=A0 21. Run `./pre-inst-env ./etc/teams.scm cc-members ` to get > the CC flags for Git > =C2=A0 22. Remember that if you're sending multiple patches, an email fir= st > has to be > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sent to `guix-patches@gnu.org` to get an I= D, and then... > =C2=A0 23. Run `git send-email --to guix-patches ` You don't need to manually do 21 (and add the cc flags in 23), as advances to git and our teams.scm script automates that for you (the patches are checked for which files they touched; and the team, if any, that has such files in their scope is CC'd via a X-Debbugs-CC header). -- Thanks, Maxim