Commit dc282c7d authored by Oswald Buddenhagen's avatar Oswald Buddenhagen
Browse files

complain about multiple [ChangeLog] misuses


Change-Id: I223eaf32782b2c0d2de3a815e0968706bfff1bdb
Reviewed-by: default avatarSergio Ahumada <sahumada@blackberry.com>
Reviewed-by: default avatarThiago Macieira <thiago.macieira@intel.com>
Reviewed-by: default avatarOswald Buddenhagen <oswald.buddenhagen@digia.com>
parent e76b413d
No related merge requests found
Showing with 16 additions and 0 deletions
...@@ -100,6 +100,7 @@ my $badurl = defined($cfg{url}); ...@@ -100,6 +100,7 @@ my $badurl = defined($cfg{url});
my $badlog = defined($cfg{log}); my $badlog = defined($cfg{log});
my $spell_check = !defined($cfg{spell}); my $spell_check = !defined($cfg{spell});
my $parents = 0; my $parents = 0;
my ($inchangelog, $changelog) = (0, "");
my ($footer, $cherry) = (0, 0); my ($footer, $cherry) = (0, 0);
my ($badauthor, $badcommitter) = (0, 0); my ($badauthor, $badcommitter) = (0, 0);
my ($revert1, $revert2, $nonrevert) = (0, 0, 0); my ($revert1, $revert2, $nonrevert) = (0, 0, 0);
...@@ -204,6 +205,7 @@ while (<MSG>) { ...@@ -204,6 +205,7 @@ while (<MSG>) {
} }
} elsif ($_ eq "") { } elsif ($_ eq "") {
$cherry = 0; $cherry = 0;
$inchangelog = 0;
# Empty line following footer(s). # Empty line following footer(s).
$footer = 2 if ($footer == 1); $footer = 2 if ($footer == 1);
} elsif ($cherry) { } elsif ($cherry) {
...@@ -233,6 +235,14 @@ while (<MSG>) { ...@@ -233,6 +235,14 @@ while (<MSG>) {
$ftr = 1; $ftr = 1;
} elsif (/^[A-Z][a-z]+(-[A-Za-z][a-z]+)+: /) { } elsif (/^[A-Z][a-z]+(-[A-Za-z][a-z]+)+: /) {
$ftr = 1; $ftr = 1;
} elsif (/^\[change-?log\]/i) {
$inchangelog = 1;
}
if ($inchangelog) {
if (($ftr || $footer == 1) && !defined($cfg{changelog})) {
&complain("No empty line between ChangeLog and footers", "changelog");
}
$changelog .= "\n".$_;
} }
if ($ftr) { if ($ftr) {
if ($footer == 0) { if ($footer == 0) {
...@@ -276,6 +286,12 @@ if ($badsign) { ...@@ -276,6 +286,12 @@ if ($badsign) {
if ($footer == 3 && !defined($cfg{footer})) { if ($footer == 3 && !defined($cfg{footer})) {
&complain("Empty lines between footers", "footer"); &complain("Empty lines between footers", "footer");
} }
if (length($changelog) && !defined($cfg{changelog})) {
&complain("Bad form of [ChangeLog] tag", "changelog") if ($changelog !~ /^\n\[ChangeLog\]/s);
&complain("Missing space between ChangeLog tags and text", "changelog") if ($changelog !~ /\]\s[^\[]/s);
&complain("JIRA task referenced from ChangeLog", "changelog") if ($changelog =~ /\[QT[A-Z]+-\d+\]/s);
&complain("Current repository referenced from ChangeLog", "changelog") if ($changelog =~ /\[$repo\]/si);
}
{ {
local $file = 'log message'; local $file = 'log message';
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment