Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 407fdcbd authored by David Keitel's avatar David Keitel Committed by Bryan Huntsman
Browse files

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.

Change-Id: I37b13dc870cb797980ffdd978ebf3e15bb624afa
Signed-off-by: default avatarDavid Keitel <dkeitel@codeaurora.org>
Signed-off-by: default avatarRishabh Bhatnagar <rishabhb@codeaurora.org>
parent 5accaae3
Loading
Loading
Loading
Loading
+41 −1
Original line number Diff line number Diff line
@@ -12,6 +12,11 @@ use File::Basename;
use Cwd 'abs_path';
use Term::ANSIColor qw(:constants);

use constant BEFORE_SHORTTEXT => 0;
use constant IN_SHORTTEXT => 1;
use constant AFTER_SHORTTEXT => 2;
use constant SHORTTEXT_LIMIT => 75;

my $P = $0;
my $D = dirname(abs_path($P));

@@ -2280,6 +2285,8 @@ sub process {
	my $setup_docs = 0;

	my $camelcase_file_seeded = 0;
	my $shorttext = BEFORE_SHORTTEXT;
	my $shorttext_exspc = 0;

	my $checklicenseline = 1;

@@ -2477,13 +2484,46 @@ sub process {
			$checklicenseline = 1;
			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 if the commit log has what seems like a diff which can confuse patch