From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11olkn2095.outbound.protection.outlook.com [40.92.20.95]) by sourceware.org (Postfix) with ESMTPS id 3D2BE385E836; Thu, 2 May 2024 23:11:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3D2BE385E836 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=maskray.me Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=maskray.me ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 3D2BE385E836 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.92.20.95 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714691477; cv=pass; b=wbrj/koPDYz5C7ai+T6spoS73vQBy1XuB6K3rC+FTqyA3iIh34d3sGkg12gDzAjtyxBU3NqChr7F7vH3BhlX/eBLz6HHc16MSjU31pJ7UrhULd+dMZgXjug50tPb/JEBHqXjAvQPoISlxb795oC7HOKN1dcj4fUhjxrO5Mi6gVg= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714691477; c=relaxed/simple; bh=dwPw/2qE4tc8+9axlpZAVKBuPfM852ZZh/uWpZqajp0=; h=From:Date:Message-ID:Subject:To:MIME-Version; b=fisoOm/DzwQq6Lpl9ruR+9te9nmx1grsQRy/0YsCtDHJy4NMhTGabzIOofP3a09/rjXfaOT2XuoYESZVKxjcTjoYbgjFyuKDZ0iP7IgTo0Aq4VjyxX/p87FTizvY5JeiaX7MIVs4i0KMHPvNHXz++uba4rYC2gEFWlSKk4lovOI= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N1pHNf2qWUeMNXpHv8cC90M+DK4NwcMq1n96tSNuhRyuTRmXWZSnCIsTDC/H0X1FscaHlBW7L+XtwOTu0zyWUPaoVqbShP7w0Kg8OJLZ3NByrMK1lOW9wPpYVF3IjVZsxmKtNoNNpPpdGP5x29yKPSB6Gs1PWvrczSSBbWPOU31TTL3Wm0/GdERizFWatEJLn6l0hh2cmBxaVi0LZ783Eu0VH5hRGGGKkbe94OZC/Dbv0ExdhO6CWIvdnTkjOFZNjaFyWMsz3F5ToLbUXCuE8fjYlzmoTIANXicXyBBXlTA5sH6TXxyCS1vIm+8OFwMmN39cRiMYqa87jdf3i8cmJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=mRQpNMrTBFI0YZ8Et/4+EisAYQfy5WC7Ae1Kbd5gemE=; b=W/n5rpY15RsNoJgMi7KbQt9iFHyNykxIgRkQWNJJdGqiaabwD54Asqxa6GiDknGO+d9GrSAbTnqwsYlS+CdbH7Q1Tk6836x9BuRQNi2U/uQdzZ/0hkbrusL1It2F0gb5YoA6NjPkpTLRvbK4auSr2b+4KYwk6JknNgN9/uYymj4tL62Cj0Kpqo20M3DO8wFwhv1dEK7NDLTDCUakuUlVQeZ7IiIMYMnu1gb/8sApX9sHOjPBdjKcCstiE2vcNSIXRCH2HywhB6SXfFqt5t2Dp5AmHXBiP2hxgfbxTRxjIeFHSd7ZFoad6k6IK6ZXvxUFtKy7/GcvBAPrYaS13g8pQA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) by MW4PR12MB6976.namprd12.prod.outlook.com (2603:10b6:303:20a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.24; Thu, 2 May 2024 23:11:12 +0000 Received: from DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::3f49:9f92:3fcd:e374]) by DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::3f49:9f92:3fcd:e374%3]) with mapi id 15.20.7544.029; Thu, 2 May 2024 23:11:12 +0000 X-Forwarded-Encrypted: i=1; AJvYcCXnMlSWt+lst9sCodT/SJdfgPjY2USilbX2SZ63DEyZHRA3xzMl29SqZbB49qQUKZrDKwDFFjuEcDi7NSTzHRieXA1pcQD6Ec2EIXFUG+Q/LiKHbyNMEVcwayHDmX60IoEWoZMFMaykgYBmcr2ulSCZqkdSEqo6oT24ugvy+80k8v+irYGy2r+yWCpSlk4tzJs= X-Gm-Message-State: AOJu0YxQvyxRhyko043xVpYDzuIIRtxdK0XydYRp5qVacYD/p8S1mUam BiGhcS6o5eUNfzNGghysRDQ69Yy0qy4jqBrrlu8lXpdkhITGair86664cAKTfC3AqUVVAtiAtJR m2TC6qr3IHyh7SY9pmzfKDNsAsc8= X-Google-Smtp-Source: AGHT+IFWHP2KgbNnpHfnlKUElrwt/qs3XV34GOzQaxe6WBpdFELiaqCeiRYMEiXCL7HCeJQjU3RZt8tv2pdpsE9KQFM= X-Received: by 2002:a25:204:0:b0:de6:4ff:3155 with SMTP id 4-20020a250204000000b00de604ff3155mr1407323ybc.16.1714691133203; Thu, 02 May 2024 16:05:33 -0700 (PDT) References: <20240417232725.GC25080@gnu.wildebeest.org> <20240418173726.GD9069@redhat.com> <87v849qudy.fsf@tromey.com> <87wmooep76.fsf@tromey.com> <0347e05a-94c6-4ecc-aa8f-cc90358a813d@gmail.com> <20240501202008.GA6469@gnu.wildebeest.org> <874jbh45l8.fsf@tromey.com> <64d0e314-f4e9-4c63-90dd-67a05749e12e@simark.ca> <9a7111c2-d570-4d26-8fe9-f34834ae1eab@palves.net> In-Reply-To: <9a7111c2-d570-4d26-8fe9-f34834ae1eab@palves.net> From: Fangrui Song Date: Thu, 2 May 2024 16:05:21 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Updated Sourceware infrastructure plans To: Pedro Alves Cc: Simon Marchi , Overseers mailing list , Mark Wielaard , Tom Tromey , Jeff Law , Joseph Myers , Jonathan Wakely , libc-alpha@sourceware.org, Jason Merrill , gcc@gcc.gnu.org, gdb@sourceware.org, binutils@sourceware.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-TMN: [jvL9alg4FM/21ejpayPqsDCe6y+FLprf] X-ClientProxiedBy: BN0PR03CA0045.namprd03.prod.outlook.com (2603:10b6:408:e7::20) To DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB5765:EE_|MW4PR12MB6976:EE_ X-MS-Office365-Filtering-Correlation-Id: db5a8cfd-7fdf-451a-da8b-08dc6afd2865 X-Microsoft-Antispam: BCL:0;ARA:14566002|461199019|440099019|3412199016|1602099003|56899024; X-Microsoft-Antispam-Message-Info: Qar817j50o/2tRDwGvRzRQ32xr7DpztBguz4gsTRKILRXBorLfxR5XohCGop5vT5e/MWS6g9dUtVCNtJTA14Z3j2csnI6XV4ZZrKmwHRZHpByPn/PRKY8fVkrn6Nrd5ute8i9bEPxXR/njh4tYm7zcqRPA7HxAvlub0btbiPimWEtWazy8meHBsKg4sezbUMKtcexzlMs5e5moayr9zjd9WOb7M4gmUQsyrRLbl6629rKTfDgKDDykqJWQJ4uPZy53wdXK+9KOuHmT5uXmV9rnfeaLxPFhehD1HuudwyC9buVqxX8cIXQHYL6HjMJj9COOG6lOyJOd4Njq1KttjzveQ/C+6nhvAf7oBQr/Y7XSN11TDGcBLXR+GYOpuZXk1ihDMpImYScD6yqBqhdQjJX8Sz29MC88XfpAaxzhNN3BEZHYcq80y2Kyswhzq1EZdGUjdBKwex1XeULiI8kHo3HPdcATutxp2RJwe7+EUa6l5e/VMpcZF2turZeCsl/A5iFacGqSOkJ5d718W+NkeHWP6zAYXklsKf+KfY0KNJ+efQTWTtz0Oopfx+iU8mvNm1P3oKDTMFSKPFsh89Dh8WxWR1LYkae/RpJIAsPQw5TqSPgDSxwUZQxCtcBsAlF2G9LeMxh4pXApfcnzfKR2mT/HJJut7T4RA0/Q4OzDHRRGI= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TGFkM0VQV0xHa1lreGlwZ3NWVkhnZ3BsRjlOOE9VK0dlTjFuTGlGYThRZFB6?= =?utf-8?B?YVRxejlVNEFYbTVORFRTSkxjeEN0K2FUZGM2VDZPbkhXN1JpRWlBdStQTzZo?= =?utf-8?B?NXQydmlsYnRzOWxyZktsMkVyVW5IWXcvendDMk0wNGFra0ZRU1o0RXArZytK?= =?utf-8?B?QzdyeGl6NjNOU3JxQVk2ZE9BcVpUUEI0Y2dJVmlPaEdJczhvNW02bjg3RUxj?= =?utf-8?B?UThBc1RMR1B0RG9DcWV1Z0FZNWd6bWk5OTZ2dFRXNndpalR3U01vdXBBeEIr?= =?utf-8?B?d0ZzUWFHS1gvdWh1YVBmQ250bUFJYWhiRVNJNmU5ejE3dG53cEI5cFZVL3Zk?= =?utf-8?B?R3R3YllRQ21qOGkzbm1ja3pFcC9BWU1tMGJnWWFmUmQ1ejZ0ZjFDQnF0cFBu?= =?utf-8?B?czExTkt6bmJBL0NFdDVCc3dOeVM2NnZTeVVreHZrMnVPOHJQa1Z3aFJCbzRM?= =?utf-8?B?QlVLTlhWTVNTaXl6aldRdEc0SWlZeld4bXZQSCthYTJkZksvOHRyajdDUDI1?= =?utf-8?B?c1A2UkZkMkVEcXBsRWg3c2FUMHYxQ05aRWhFVkIyaGNqTm9xaENxalc1cUJN?= =?utf-8?B?RGpVcmtXK2hLMmR6dGt4dERkckhjeVBhUWNaZS9hNnIzOXYzbDhGMUZ0VDNa?= =?utf-8?B?c3JFbnRzWm5kV0V0K3dhWG9XQ3VmMDJtVk1Mb2RkZTg1b1k5U2JHQk5salNy?= =?utf-8?B?bjRlMEJVV0R4b01LSThZR2NwQjFYWUMzRllsYjBxRzBvRU94dmdCZlRnWjlU?= =?utf-8?B?Z2ZPNWJnZDBSTDJzR3I2dFNVUXY3TUVIY2NMSFRWMWQ0Q05oUS90dTJhZVRi?= =?utf-8?B?N3UvZWpONkI0N0tFK1pQR05hcThhMmtCdEhyTlBhSXBTN21idFQzcmtvd2Nl?= =?utf-8?B?TU44cWdTWjExQ2twUGFDV1BUMGxveVZLNW53NTFSNzVLYjdkeE1McC9Oa3FL?= =?utf-8?B?UzBOWkJOb09TRmtBdEQwTmtHeUtnZ3VBQlNtSUdhZ0lZeTZzQlZyTzUwWnpC?= =?utf-8?B?RU9VSHZ1aXM2TFo5S2Y4NFhsZlJPNG5TR1ZubjU4WVAxWWs2MUxhR2h6MzVM?= =?utf-8?B?SE14RE9NSkZoSEdvWWZMZUxLUUF3dkpXYnVmYlFrOWoxNHRxSlRZTEVZWWgy?= =?utf-8?B?Z0p1VmgxdEg1SjIxNDQ5WGlrUDMvaDMrcUhzVzJkd2JuSXREa3hCVGxzbitU?= =?utf-8?B?QmovMzNTSTBSTFZiSitDOEViYVIwV0pEM3YrTXA2eTB5WHZlcVRjeEVYKzdo?= =?utf-8?B?d1JXUnFuaEVWNVJwZXZIWTNsRHdFMkd5Y3Mram5CWHI5YTFRU2d0NmsvT1Iw?= =?utf-8?B?aVNWOWp6QUZQOUNNWllndWpTbFE1M3h6UVpaQnRDVnFrOFRYYXQ0SHd3d1ds?= =?utf-8?B?MG5idWFucitxaXNxWDRvTEQ2cVdGK012VGdaUzAwdlByMXZGUlVyU3ZjU2dO?= =?utf-8?B?WEhGU25KOGthUVgzZDNxOEdrUzFxVGl4MmJTaHQ0WXJyaDFwZkNSRi9iWUg5?= =?utf-8?B?WmNIdE05bkc0Zm5DSHdjRXB6dy9wTm41ZHpXMEhKaHhLQW5FZnpzMTI4NVJp?= =?utf-8?B?MDF6S2xEQkU2emN0bHJrSU1pZWs1NWNsb08yODBsN3Nic2JnbzZZcGp6ZUc1?= =?utf-8?B?OHBLZ1NCL3ZpOWkzNkpVTEdlRlozWGc9PQ==?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-5183d.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: db5a8cfd-7fdf-451a-da8b-08dc6afd2865 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB5765.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 May 2024 23:11:11.9988 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6976 X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_INFOUSMEBIZ,KAM_SHORT,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Thu, May 2, 2024 at 8:35=E2=80=AFAM Pedro Alves wrote= : > > On 2024-05-01 22:04, Simon Marchi wrote: > > The Change-Id trailer works very well for Gerrit: once you have the hoo= k > > installed you basically never have to think about it again, and Gerrit > > is able to track patch versions perfectly accurately. A while ago, I > > asked patchwork developers if they would be open to support something > > like that to track patches, and they said they wouldn't be against it > > (provided it's not mandatory) [1]. But somebody would have to implemen= t > > it. > > > > Simon > > > > [1] https://github.com/getpatchwork/patchwork/issues/327 > > +1000. It's mind boggling to me that people would accept Gerrit, which > means that they'd accept Change-Id:, but then they wouldn't accept > Change-Id: with a different system... :-) > Gerrit uses "Change-Id:" as stable identifiers to track patches. https://gregoryszorc.com/blog/2020/01/07/problems-with-pull-requests-and-ho= w-to-fix-them/ has some analysis how they are much better than the alternative smart way. Perhaps URLs as stable identifiers will work better. If a reader wants to find relevant discussions, they can just click the link in many browsers, terminals, and editors. Currently, searching for discussions about a specific commit requires searching its title on https://inbox.sourceware.org/gcc-patches/ . For older patches, I might even need to dig through https://gcc.gnu.org/pipermail/gcc-patches/YYYY-MMMM/ archives. I agree with Jeff that principal reviewers will drive improvement to the code review process. I am sharing two code review services LLVM has used. --- Between 2012 and Sep 2023, LLVM had relied on its self-hosted Phabricator instance for code review. Fetching a patch to your local branch was as simple as `arc patch D12345`. Similarly, creating or updating a patch involved `arc diff`. I believe other code review services provide similar command line functiona= lity, --- In September 2023, LLVM transitioned to GitHub for code review. I really dislike its code review service (however, this is a large step forward than email based code review). From https://maskray.me/blog/2023-09-09-reflections-on-llvm-switch-to-github-pul= l-requests > On the other hand, GitHub structures the concept of pull requests around = branches and enforces a branch-centric workflow. A pull request centers on = the difference (commits) between the base branch and the feature branch. Gi= tHub does not employ a stable identifier for commit tracking. If commits ar= e rebased, reordered, or combined, GitHub can easily become confused. > > When you force-push a branch after a rebase, the user interface displays = a line such as "force-pushed the BB branch from X to Y". Clicking the "comp= are" button in GitHub presents something like git diff X..Y, which includes= unrelated commits. Ideally, GitHub would show the difference between the t= wo patch files, as Phabricator does, but it only displays the difference be= tween the two head commits. These unrelated in-between commits might be acc= eptable for projects with lower commit frequency but can be challenging for= a project with a code frequency of 100+ commits every day. > > The fidelity of preserving inline comments after a force push has always = been a weakness. The comments may be presented as "outdated". In the past, = there was a notorious "lost inline comment" problem. Nowadays, the situatio= n has improved, but some users still report that inline comments may occasi= onally become misplaced. Thankfully, getcord/spr comes to a rescue. User branches allow me to create/update a patch using `spr diff` like `arc diff` for Phabricator.