checkpatch: warn on long summary, commit text lines

Warn on summary or commit text lines greater than 75 characters.
The summary and commit text are indented and may wrap on a terminal
if they are longer than 75 characters.

Signed-off-by: Steve Muckle <smuckle@quicinc.com>
(cherry picked from commit e2638df6005402597085a58e01b6dd1cf2bdb8a4)
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
This commit is contained in:
Steve Muckle 2009-03-13 15:46:36 -07:00 committed by Stepan Moskovchenko
parent bac9c2ceb3
commit 7596d57aa8
1 changed files with 41 additions and 1 deletions

View File

@ -8,6 +8,11 @@
use strict;
use POSIX;
use constant BEFORE_SHORTTEXT => 0;
use constant IN_SHORTTEXT => 1;
use constant AFTER_SHORTTEXT => 2;
use constant SHORTTEXT_LIMIT => 75;
my $P = $0;
$P =~ s@(.*)/@@g;
my $D = $1;
@ -1877,6 +1882,8 @@ sub process {
my $setup_docs = 0;
my $camelcase_file_seeded = 0;
my $shorttext = BEFORE_SHORTTEXT;
my $shorttext_exspc = 0;
sanitise_line_reset();
my $line;
@ -2053,13 +2060,46 @@ sub process {
}
next;
}
$here .= "FILE: $realfile:$realline:" if ($realcnt != 0);
my $hereline = "$here\n$rawline\n";
my $herecurr = "$here\n$rawline\n";
my $hereprev = "$here\n$prevrawline\n$rawline\n";
if ($shorttext != AFTER_SHORTTEXT) {
if ($shorttext == IN_SHORTTEXT) {
if ($line=~/^---/ || $line=~/^diff.*/) {
$shorttext = AFTER_SHORTTEXT;
} elsif (length($line) > (SHORTTEXT_LIMIT +
$shorttext_exspc)
&& $line !~ /^:([0-7]{6}\s){2}
([[:xdigit:]]+\.*
\s){2}\w+\s\w+/xms) {
WARN("LONG_COMMIT_TEXT",
"commit text line over " .
SHORTTEXT_LIMIT .
" characters\n" . $herecurr);
}
} elsif ($line=~/^Subject: \[[^\]]*\] (.*)/) {
$shorttext = IN_SHORTTEXT;
if (length($1) > SHORTTEXT_LIMIT) {
WARN("LONG_SUMMARY_LINE",
"summary line over " .
SHORTTEXT_LIMIT .
" characters\n" . $herecurr);
}
} elsif ($line=~/^ (.*)/) {
$shorttext = IN_SHORTTEXT;
$shorttext_exspc = 4;
if (length($1) > SHORTTEXT_LIMIT) {
WARN("LONG_SUMMARY_LINE",
"summary line over " .
SHORTTEXT_LIMIT .
" characters\n" . $herecurr);
}
}
}
$cnt_lines++ if ($realcnt != 0);
# Check for incorrect file permissions