From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.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 KLO4B8T9bGStAgEASxT56A (envelope-from ) for ; Tue, 23 May 2023 19:54:12 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id YG67B8T9bGTbAQAAauVa8A (envelope-from ) for ; Tue, 23 May 2023 19:54:12 +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 B5AD8DF56 for ; Tue, 23 May 2023 19:54:11 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q1WCy-0006N8-KS; Tue, 23 May 2023 13:54:04 -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 1q1WCw-0006My-IO for guix-patches@gnu.org; Tue, 23 May 2023 13:54:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q1WCw-0004J0-BA for guix-patches@gnu.org; Tue, 23 May 2023 13:54:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q1WCv-0005fo-JF for guix-patches@gnu.org; Tue, 23 May 2023 13:54:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63459] [PATCH] doc: Rewrite the branching strategy. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 23 May 2023 17:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63459 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 63459@debbugs.gnu.org Received: via spool by 63459-submit@debbugs.gnu.org id=B63459.168486443821799 (code B ref 63459); Tue, 23 May 2023 17:54:01 +0000 Received: (at 63459) by debbugs.gnu.org; 23 May 2023 17:53:58 +0000 Received: from localhost ([127.0.0.1]:40388 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1WCs-0005fW-8q for submit@debbugs.gnu.org; Tue, 23 May 2023 13:53:58 -0400 Received: from mira.cbaines.net ([212.71.252.8]:42562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1WCp-0005fM-Lx for 63459@debbugs.gnu.org; Tue, 23 May 2023 13:53:56 -0400 Received: from localhost (unknown [IPv6:2a02:8010:68c1:0:3a91:a0a4:ecee:f157]) by mira.cbaines.net (Postfix) with ESMTPSA id 1223227BBE2; Tue, 23 May 2023 18:53:54 +0100 (BST) Received: from felis (localhost [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id 125d860e; Tue, 23 May 2023 17:53:53 +0000 (UTC) References: <87y1lkzc98.fsf@gnu.org> User-agent: mu4e 1.10.2; emacs 28.2 From: Christopher Baines Date: Tue, 23 May 2023 18:28:18 +0100 In-reply-to: <87y1lkzc98.fsf@gnu.org> Message-ID: <87pm6rlys0.fsf@cbaines.net> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1684864452; a=rsa-sha256; cv=none; b=f93fn77cPstqIPv15ypxq1sMad1MWRoTNQapFtNSrg3cmpVHW/vuDgHDVPPOZXOug9AkHi 6yP5UWjquiENKgFLSQ+gYOSoP3zbVNO0k4AYtoDQSmiCViLpIjI6yNWnRNS0PjFiFmzl+a Nst5PPKTqwJwEzKXXTJE24Cmw3/Sp7ypiIlYFM1tUqxEAejxwcMaSTQv6BadsL4NE1whT+ Y9oH5H9PRtAvRMbJn4SIR32C/EdQk1yOr3oRdYtFxcnoZOm/k0W2bAgya1r4A51hQr1YSH t15fzKV+pCDIzaVCHEW2fv2elZy6ULtoOtFu7/hz3XJpKiKRI5pibPlI5NzzPw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1684864452; 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:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post; bh=ojvAN9/KHaaWSFiKbrHeBV0gFpTGjWoJn3SZvkk0klo=; b=TDd5GAhdn3A24OQPmx3lvkSUzlS6gsW90WkAHveBaxwk9iQRghwUKZZ9Gc1dwtRXv3EKj6 I7+6Cu0KqGS0jmIqIaOKTtmUlTITSgj4ScZ869AOr+gynaIRhTdszwXFfmx60yDMECErU2 8Ga2TYGLkq3lkGXkone6vmwN09mzwDWwTwXoa3HEVZ8/nI22QtrLbRYy0bKWYG3DxW/dv0 eR8/AfkdGkQmyNKR1mZm923tPgh35aSLzIRL7kuQyssTqWjMN50lNaoqxDGcPi+fs1FrMf mUtRrNjEf4OBSuTpwmJpcE3QhuHIbbuofs4+j4gBDm6maKPc2t+qjUjPxn4wsA== X-Migadu-Spam-Score: -4.57 X-Spam-Score: -4.57 X-Migadu-Queue-Id: B5AD8DF56 X-Migadu-Scanner: scn0.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-TUID: ZjvqbXw7iHZC --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > Hello, > > Thanks for this initiative! > > Christopher Baines skribis: > >> Move away from using staging and core-updates, and make the strategy >> independant of branch names. >> >> Keep the 300 dependent threshold for changes to master, as I don't have = any >> specific reason to change this. >> >> Most importantly, require using guix-patches issues to coordinate mergin= g of >> the branches, as I think that'll address the key issues that have shown = up >> recently where it's been unclear which branch should be merged next. >> >> * doc/contributing.texi (Submitting Patches): Rewrite branching strategy. > > [...] > >> +Changes to packages with 300 dependent packages or less can be pushed to >> +the @code{master} branch. >> + >> +Larger changes should be first pushed to a branch other than >> +@code{master}. This allows for testing and for the build farms to >> +process the changes prior to being pushed to the @code{master} branch. > > I=E2=80=99d be more specific: > > Larger changes should first be pushed to a topic branch other than > @code{master}; the set of changes should be consistent---e.g., ``GNOME > update'', ``NumPy update'', etc. This allows for testing: the branch > will automatically show up at > @indicateurl{https://qa.guix.gnu.org/branch/@var{branch}}, with an > indication of its build status on various platforms. > > =E2=80=9CAutomatic=E2=80=9D is a bit of an overstatement; that sentence p= robably needs > to be tweaked. :-) But I think it=E2=80=99s good to link to the QA plat= form to > make things more concrete. That sounds fine to me. Everything apart from starting the builds is already automatic, and I want to automate that through the issues described here. >> +To help coordinate the merging of branches, you must create a new >> +guix-patches issue each time you wish to merge a branch. These issues > ^ > + (@pxref{Tracking Bugs and Patches}) > >> +indicate the order in which the branches should be merged, so take a >> +look at the open issues for merging branches and mark the issue you >> +create as blocked by the issue previously at the back of the queue. > > s/blocked/@dfn{blocked}/ > > Perhaps add a footnote or paren stating how to =E2=80=9Cblock=E2=80=9D an= issue in > Debbugs? Yeah, I'll try and write something. >> +Normally branches will be merged in a ``first come, first merged'' >> +manor, tracked through the guix-patches issues. If you agree a different > > s/manor/manner/ > s/agree a/agree on a/ > >> +order with those involved, you can track this by updating which issues >> +block which other issues. Therefore, to know which branch is at the >> +front of the queue, look for the issue which isn't blocked by any other >> +branch merges. >> + >> +Once a branch is at the front of the queue, wait until sufficient time >> +has passed for the build farms to have processed the changes, and for >> +the necessary testing to have happened. > > This is a bit technical. How can I know =E2=80=9Cwhich branch is at the = front > of the queue=E2=80=9D? Even as a seasoned Debbugs users, I=E2=80=99m not= sure what I=E2=80=99m > supposed to do here. Do you think we could provide ready to use > commands (debbugs.el or =E2=80=98mumi=E2=80=99) or at least a sequence of= steps to > follow? So, I think there's two technical hurdles to overcome here. The first is identifying the issues for merging branches, maybe for that we can set out a format for the title of the bug, but I'm very open to suggestions. Any way of identifying the open issues should be usable through debbugs.el and mumi. The second hurdle is the queuing behaviour, which I think the blocking behaviour is a natural fit for. Maybe the tooling is lacking but I think that can be addressed. I want the qa-frontpage to display the queue of branches (and issues) in a clear way, as well as providing links to make changes (as it does for marking issues as moreinfo). > Last but not least: two spaces after end-of-sentence period please. :-) > > This is mostly about tweaking words; I think this is a great step > forward, very much in line with what was discussed in February at the > Guix Days. Thank you! Great, thanks for taking a look! Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmRs/a9fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh aW5lcy5uZXQACgkQXiijOwuE9XeBSw/+IM3UMPClj0tdekh2kCo4rrbaBeCzB+hB IUPuXieF+P0BaDgE0YJdtmV3jL5tpUF36MBQ5CafVnP440YP4b0WOZtNSpYteHaZ z0FhU3Fe1U+YDiVWea3n8+pFawKR7Vqw2n03c32LZ5Z+j9NBchwgALBB8G96vxvc +yY6yZmMElNtvNiL4DoWtx6HNxi4EnmBLnDgorciAHXStCpyX3dvm3no7kPvNbLm acq88Q0mzOD5VaoPSBNWxsuN6fC9r+mhfisIVFeyH4fwE7yAYLKkXijZy5wcgGfd XfOznMOLOposZCRerCSPJbpoiYsZgN13dama1eAA8pnFaQqJkAbncGEkfWmz95mn R/LXh6rNSNnLBR7+E0IwHalun6D1FMcpqrgMJukakba9AgdOmPy4wKGgpUKJS84M cb21nM7hJRu0CuYuBi6AOfCY0+eSo9ttXBYVLCqkIOspgC2oCzuXFm56/BezeiHJ 3hecyZY/p0bCqfUrD6RiGS9igcmD9wUDbHazpN6+YDPNRfbnY+5YybktP+qDG/pT c1sRGvM6jmW+VqV6eqJzw/FkM1dS0z1nxjY2tOF54piC67quCXMFhe/8fm6dndfV QDuMvDTfkxhnPby3WRnf74QMx7SV4f/TznKTLzMJS4LKtE1D9fBwKXbwGIjNC1j+ THRVaxL6vK4= =uXXz -----END PGP SIGNATURE----- --=-=-=--