From patchwork Wed Jan 22 17:45:06 2020
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: "Richard Earnshaw \(lists\)"
X-Patchwork-Id: 182922
Delivered-To: patch@linaro.org
Received: by 2002:a92:1f12:0:0:0:0:0 with SMTP id i18csp5359136ile;
Wed, 22 Jan 2020 09:46:37 -0800 (PST)
X-Google-Smtp-Source: APXvYqwpPSRIU4rkGFnCYJ0jNukDSY0UbImMy+Lc34tnWK/K76Sr3Bhjzd2b4mr6twAu92lcSzHF
X-Received: by 2002:a05:6830:1481:: with SMTP id
s1mr8145190otq.66.1579715196895;
Wed, 22 Jan 2020 09:46:36 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1579715196; cv=none;
d=google.com; s=arc-20160816;
b=DC24BSqRru98Lo8IecfNPcUoOzr7Cc3Wg9GdnWz+vwyPCT1jpkGpYQ2KH3bG/6NUfR
8L73hVUBoXOGj7en18b3dERNH+uU/1REZ1/u8bVVFoUvgWO3wZlhH8OejWe8iaOrkeUU
NGe0KaSLakhGUQmHyY3fWPdFvHCI724m4SebBBsyIfAXYifaXDIc2cZH9P/Sge3YlEFI
0shVsRBUWYSCCu8xHqRt3xWAHmELHBli6AyRAi0l6Cn/0q1dbnXtieQEh2NDvO8V6w+0
ast21o79sTBJ6niVe9eEIlNfmiG5aup4geXAjb6OpRMLHGpZPazXgtUYgKTB5DdMtyHi
XNWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
s=arc-20160816;
h=in-reply-to:mime-version:user-agent:date:message-id:references:cc
:to:from:subject:delivered-to:sender:list-help:list-post
:list-archive:list-unsubscribe:list-id:precedence:mailing-list
:dkim-signature:domainkey-signature;
bh=aExV1WdggWErnWUyweymPRr+R2v/mwYxAfkv3tsARvQ=;
b=RM/JCBEpxQEyeCgtsp/cFHhq6prhT/JfR4gG5Hx/+E6rIaDkvsExZI8uo87TbVV9GI
w7o29gOFRO1JLaH0YWfym6bdU/N3gdWcpEwfp/HINbnmtOFrp15dSQAb8ENqzpeqnl5/
BMbtHfEepe2Vm6sfysuue0QFvVOk3+TdOkRmReQbOXT5wHwQCN/vgenjuBW3NFgUnlk3
Qpbx6dQiy0VtO1FfXM25yYBQZs/bnWwfZtzMRfYQhoOC/dgfATI9GbLd29kqbsAqfBxk
8qS9TWg1nkaVADzJadEGwN2vkUlQNXOmn87ltA9kdmFSaClcxrr44kxvHK8FWUg+9shH
PhLg==
ARC-Authentication-Results: i=1; mx.google.com;
dkim=pass header.i=@gcc.gnu.org header.s=default header.b=UDZU1B03;
spf=pass (google.com: domain of
gcc-patches-return-518051-patch=linaro.org@gcc.gnu.org
designates 209.132.180.131 as permitted sender)
smtp.mailfrom="gcc-patches-return-518051-patch=linaro.org@gcc.gnu.org"
Return-Path:
Received: from sourceware.org (server1.sourceware.org. [209.132.180.131])
by mx.google.com with ESMTPS id
h138si21308993oib.6.2020.01.22.09.46.36 for
(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Wed, 22 Jan 2020 09:46:36 -0800 (PST)
Received-SPF: pass (google.com: domain of
gcc-patches-return-518051-patch=linaro.org@gcc.gnu.org
designates 209.132.180.131 as permitted sender)
client-ip=209.132.180.131;
Authentication-Results: mx.google.com;
dkim=pass header.i=@gcc.gnu.org header.s=default header.b=UDZU1B03;
spf=pass (google.com: domain of
gcc-patches-return-518051-patch=linaro.org@gcc.gnu.org
designates 209.132.180.131 as permitted sender)
smtp.mailfrom="gcc-patches-return-518051-patch=linaro.org@gcc.gnu.org"
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id
:list-unsubscribe:list-archive:list-post:list-help:sender
:subject:from:to:cc:references:message-id:date:mime-version
:in-reply-to:content-type; q=dns; s=default; b=JxCxCscDOnaxibaA0
xAdK/AboD+kkfJiCWM80rs8ypgP0AGwROwJtcseCfah069TiW7BLmxORta9AuSyj
mnwmL8+XqFyZSqkL7GN5UCA/4Qd/5viZjyFUzYcVYwmQ4nnEAxBu6G5AvOiamchy
/Swat+JYTTO5FJJ7RJV3qDKM6Q=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id
:list-unsubscribe:list-archive:list-post:list-help:sender
:subject:from:to:cc:references:message-id:date:mime-version
:in-reply-to:content-type; s=default; bh=qL/t40CCudzTZQ1ZJo5t2dP
39MA=; b=UDZU1B03HaZjEig57D7dQCX21eoah6JF2R9FUrmSEv71tEWo7kp+tdt
kMv2Zh/1TZpurU6ChAqAB73F7S+oeqTGzjWBfuNewC3S4KVs6QsCAjm37M9NuSLB
a2wPWGb0MDV4f6iQt9QoE+XOriOnyIXWL9mLdCtpMxDHJ62y7FTg=
Received: (qmail 101974 invoked by alias); 22 Jan 2020 17:45:56 -0000
Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id:
List-Unsubscribe:
List-Archive:
List-Post:
List-Help:
Sender: gcc-patches-owner@gcc.gnu.org
Delivered-To: mailing list gcc-patches@gcc.gnu.org
Received: (qmail 101859 invoked by uid 89); 22 Jan 2020 17:45:41 -0000
Authentication-Results: sourceware.org; auth=none
X-Spam-SWARE-Status: No, score=-18.8 required=5.0 tests=AWL, BAYES_00,
GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3,
RCVD_IN_DNSWL_LOW,
SPF_PASS autolearn=ham version=3.3.1 spammy=becoming
X-HELO: foss.arm.com
Received: from foss.arm.com (HELO foss.arm.com) (217.140.110.172) by
sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP;
Wed, 22 Jan 2020 17:45:21 +0000
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by
usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id
61B4B1FB; Wed, 22 Jan 2020 09:45:08 -0800 (PST)
Received: from e120077-lin.cambridge.arm.com (e120077-lin.cambridge.arm.com
[10.2.78.81]) by usa-sjc-imap-foss1.foss.arm.com (Postfix)
with ESMTPSA id CA4713F6C4; Wed, 22 Jan 2020 09:45:07 -0800 (PST)
Subject: [PATCH, v3] wwwdocs: e-mail subject lines for contributions
From: "Richard Earnshaw (lists)"
To: Gerald Pfeifer
Cc: gcc-patches@gcc.gnu.org, GCC Development
References:
<353faf3e-bf43-eb4d-542d-45a53dce77b2@arm.com>
Message-ID: <91e48c52-4548-089b-707a-afd400001dac@arm.com>
Date: Wed, 22 Jan 2020 17:45:06 +0000
User-Agent: Mozilla/5.0 (X11; Linux x86_64;
rv:60.0) Gecko/20100101 Thunderbird/60.9.0
MIME-Version: 1.0
In-Reply-To:
[updated based on v2 discussions]
This patch proposes some new (additional) rules for email subject lines
when contributing to GCC. The goal is to make sure that, as far as
possible, the subject for a patch will form a good summary when the
message is committed to the repository if applied with 'git am'. Where
possible, I've tried to align these rules with those already in
use for glibc, so that the differences are minimal and only where
necessary.
Some things that differ from existing practice (at least by some people)
are:
- Use ':' rather than '[]'
- This is more git friendly and works with 'git am'.
- Put bug numbers at the end of the line rather than the beginning.
- The bug number is useful, but not as useful as the brief summary.
Also, use the shortened form, as the topic part is more usefully
conveyed in the proper topic field (see above).
diff --git a/htdocs/contribute.html b/htdocs/contribute.html
index 042ff069..558bae29 100644
--- a/htdocs/contribute.html
+++ b/htdocs/contribute.html
@@ -249,13 +249,143 @@ that ChangeLog entries may be included as part of the patch and diffs
representing new files may be omitted, especially if large, since they
can be accessed directly from the repository.)
+E-mail subject lines
+
+Your contribution e-mail subject line will become the first line of
+the commit message for your patch.
+
+A high-quality e-mail subject line for a contribution contains the
+following elements:
+
+
+ - A classifier
+ - Component tags
+ - An optional series identifier
+ - A brief summary
+ - An optional bug number
+
+
+The entire line (excluding the classifier) should not exceed 75
+characters.
+
+Classifier
+
+The classifier identifies the type of contribution, for example a
+patch, an RFC (request for comments) or a committed patch (where
+approval is not necessary. The classifier should be written in upper
+case and surrounded with square brackets. This is the only component
+of the e-mail subject line that will not appear in the commit itself.
+The classifier may optionally contain a version number (vN) and
+a series marker (N/M). Examples are:
+
+
+ [PATCH]
- a single patch
+ [PATCH v2]
- the second version of a single patch
+ [PATCH 3/7]
- the third patch in a series of seven
+ patches
+ [RFC]
- a point of discussion, may contain a patch
+ [COMMITTED]
- a patch that has already been committed.
+
+
+Component tags
+
+A component tag is a short identifier that identifies the part of
+the compiler being modified. This highlights to the relevant
+maintainers that the patch may need their attention. Multiple
+components may be listed if necessary. Each component tag should be
+followed by a colon. For example,
+
+
+ libstdc++:
+ combine:
+ vax: testsuite:
+
+
+Some large components may be subdivided into sub-components. If
+the subcomponent name is not disctinct in its own right, you can use the
+form component/sub-component:.
+
+Series identifier
+
+The series identifier is optional and is only relevant if a number of
+patches are needed in order to effect an overall change. It should be
+a short string that identifies the series (it is common to all
+patches) and should be followed by a single dash surrounded by white
+space.
+
+A Very Brief summary
+
+The brief summary encapsulates in a few words the intent of the
+change. For example: cleanup check_field_decls
.
+Although, very short, the summary should be distinct so that it will
+not be confused with other patches.
+
+Bug number
+
+If your patch relates a bug in the compiler for which there is an
+existing PR number the bug number should be stated. Use the
+short-form variant [PRnnnnn]
without the bugzilla
+component identifier and with no space between 'PR' and the number.
+The body of the commit message should still contain the full form
+(PR <component>/nnnnn
) within the body of
+the commit message so that Bugzilla will correctly notice the
+commit. If your patch relates to two bugs, then write
+[PRnnnnn, PRmmmmm]
. For multiple
+bugs, just cite the most relevant one in the summary and use an
+elipsis instead of the second, or subsequent PR numbers; list all the
+related PRs in the body of the commit message in the normal way.
+
+It is not necessary to cite bugs that are closed as duplicates of
+another unless there is something specific to that report that
+is not covered by the parent bug.
+
+Other messages
+
+Some large patch sets benefit from an introductory e-mail that
+provides more context for the patch series and describes how the
+patches have been broken up to provide for review. The convention is
+that such messages should follow the same format as described above,
+but the patch number should be set to zero, for example: [PATCH
+0/7]
. Remember that the introductory message will not be
+committed with the patches themselves, so it should not contain any
+important information that is not also covered in the individual
+patches. If you send a summary e-mail with a series it is a good idea
+to send the patches as follow-ups (essentially replies) to your
+initial message so that mail software can group the messages
+together.
+
+If you submit a new version of a patch series, then you should
+start a new email thread (don't reply to the original patch series).
+This avoids email threads becoming confused between discussions of the
+first and subsequent revisions of the patch set. Your cover leter
+(0/nnn) should explain clearly what has been changed between
+the two patch series. Also state if some of the patches are unchanged
+between revisions; this saves maintainers having to re-review the
+patches they might have already reviewed in an earlier version. The
+individual patch messages should be as you expect them to be
+committed. It is a good idea to send a final follow-up message to the
+original thread indicating that a new version has been submitted.
+
+Examples
+
+Here are some complete examples, based on real commits to GCC.
+
+
+ [COMMITTED] libstdc++: Fix freestanding build [PR92376]
+ [PATCH 1/6] analyzer: Fix tests for UNKNOWN_LOCATION
+ [RFC] doc: Note that some warnings depend on optimizations [PR92757]
+ [COMMITTED] c++: coroutines - Initial implementation
+ [PATCH v2] wwwdocs: E-mail subject lines for contributions
+
+
Pinging patches, Getting patches applied
If you do not receive a response to a patch that you have submitted
within two weeks or so, it may be a good idea to chase it by sending a
-follow-up email to the same list(s). Patches can occasionally fall through
-the cracks. Please be sure to include a brief summary of the patch and the
-URL of the entry in the mailing list archive of the original submission.
+follow-up e-mail to the same list(s). Patches can occasionally fall
+through the cracks. Please be sure to include a brief summary of the
+patch and the URL of the entry in the mailing list archive of the
+original submission.
If you do not have write access and a patch of yours has been approved,
but not committed, please advise the approver of that fact. You may want