From: Wang YanQing <udknight@gmail.com>
To: joe@perches.com
Cc: linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org,
Alexei Starovoitov <alexei.starovoitov@gmail.com>,
Andy Whitcroft <apw@canonical.com>,
Markus.Elfring@web.de
Subject: [PATCH v2] checkpatch: add dedicated checker for 'Fixes:' tag
Date: Mon, 27 Apr 2020 14:53:32 +0000 [thread overview]
Message-ID: <20200427145332.GA18830@udknight> (raw)
According to submitting-patches.rst, 'Fixes:' tag has a little
stricter condition about the one line summary:
"
Do not split the tag across multiple
lines, tags are exempt from the "wrap at 75 columns" rule in order to simplify
parsing scripts
"
And the current 'Fixes:' checker in "# Check for git id commit length and
improperly formed commit descriptions" doesn't check for invalid commit id
length, so this patch adds dedicated checker to fix these issues.
Signed-off-by: Wang YanQing <udknight@gmail.com>
---
scripts/checkpatch.pl | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
v1-v2:
1: Reword commit log (Markus Elfring).
2: Allow more than 12 characters of SHA-1 id (Markus Elfring).
3: Update the error message according to reflect the second update.
4: Add missing (?:...).
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 23a001a..d74683a 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2820,7 +2820,7 @@ sub process {
($line =~ /\bcommit\s+[0-9a-f]{5,}\b/i ||
($line =~ /(?:\s|^)[0-9a-f]{12,40}(?:[\s"'\(\[]|$)/i &&
$line !~ /[\<\[][0-9a-f]{12,40}[\>\]]/i &&
- $line !~ /\bfixes:\s*[0-9a-f]{12,40}/i))) {
+ $line !~ /^\s*fixes:\s*(?:[0-9a-f]{6,40})\s*(?:.*)/i))) {
my $init_char = "c";
my $orig_commit = "";
my $short = 1;
@@ -2979,6 +2979,13 @@ sub process {
}
}
+ if ($in_commit_log && $line =~ /^\s*fixes:\s*([0-9a-f]{6,40})\s*(.*)/i) {
+ if (length($1) < 12 || $2 !~ /^\(\"(?:.*)\"\)$/i) {
+ ERROR("FIXES_TAG",
+ "please use the 'Fixes:' tag with at least the first 12 characters of the SHA-1 ID, and the one line summary(no across multiple lines)\n" . $herecurr);
+ }
+ }
+
# ignore non-hunk lines and lines being removed
next if (!$hunk_line || $line =~ /^-/);
--
1.8.5.6.2.g3d8a54e.dirty
WARNING: multiple messages have this Message-ID (diff)
From: Wang YanQing <udknight@gmail.com>
To: joe@perches.com
Cc: linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org,
Alexei Starovoitov <alexei.starovoitov@gmail.com>,
Andy Whitcroft <apw@canonical.com>,
Markus.Elfring@web.de
Subject: [PATCH v2] checkpatch: add dedicated checker for 'Fixes:' tag
Date: Mon, 27 Apr 2020 22:53:32 +0800 [thread overview]
Message-ID: <20200427145332.GA18830@udknight> (raw)
According to submitting-patches.rst, 'Fixes:' tag has a little
stricter condition about the one line summary:
"
Do not split the tag across multiple
lines, tags are exempt from the "wrap at 75 columns" rule in order to simplify
parsing scripts
"
And the current 'Fixes:' checker in "# Check for git id commit length and
improperly formed commit descriptions" doesn't check for invalid commit id
length, so this patch adds dedicated checker to fix these issues.
Signed-off-by: Wang YanQing <udknight@gmail.com>
---
scripts/checkpatch.pl | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
v1-v2:
1: Reword commit log (Markus Elfring).
2: Allow more than 12 characters of SHA-1 id (Markus Elfring).
3: Update the error message according to reflect the second update.
4: Add missing (?:...).
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 23a001a..d74683a 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2820,7 +2820,7 @@ sub process {
($line =~ /\bcommit\s+[0-9a-f]{5,}\b/i ||
($line =~ /(?:\s|^)[0-9a-f]{12,40}(?:[\s"'\(\[]|$)/i &&
$line !~ /[\<\[][0-9a-f]{12,40}[\>\]]/i &&
- $line !~ /\bfixes:\s*[0-9a-f]{12,40}/i))) {
+ $line !~ /^\s*fixes:\s*(?:[0-9a-f]{6,40})\s*(?:.*)/i))) {
my $init_char = "c";
my $orig_commit = "";
my $short = 1;
@@ -2979,6 +2979,13 @@ sub process {
}
}
+ if ($in_commit_log && $line =~ /^\s*fixes:\s*([0-9a-f]{6,40})\s*(.*)/i) {
+ if (length($1) < 12 || $2 !~ /^\(\"(?:.*)\"\)$/i) {
+ ERROR("FIXES_TAG",
+ "please use the 'Fixes:' tag with at least the first 12 characters of the SHA-1 ID, and the one line summary(no across multiple lines)\n" . $herecurr);
+ }
+ }
+
# ignore non-hunk lines and lines being removed
next if (!$hunk_line || $line =~ /^-/);
--
1.8.5.6.2.g3d8a54e.dirty
next reply other threads:[~2020-04-27 14:53 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-27 14:53 Wang YanQing [this message]
2020-04-27 14:53 ` [PATCH v2] checkpatch: add dedicated checker for 'Fixes:' tag Wang YanQing
2020-04-27 16:50 ` Markus Elfring
2020-04-27 16:50 ` Markus Elfring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200427145332.GA18830@udknight \
--to=udknight@gmail.com \
--cc=Markus.Elfring@web.de \
--cc=alexei.starovoitov@gmail.com \
--cc=apw@canonical.com \
--cc=joe@perches.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.