public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] get_maintainer.pl: Add support to match arbitrary text
@ 2011-01-24 23:32 L. Alberto Giménez
  2011-01-24 23:53 ` Joe Perches
  2011-01-25 14:23 ` [PATCH] get_maintainer.pl: Add support to match arbitrary text Joe Perches
  0 siblings, 2 replies; 8+ messages in thread
From: L. Alberto Giménez @ 2011-01-24 23:32 UTC (permalink / raw)
  To: linux-kernel
  Cc: L. Alberto Giménez, Andrew Morton, Joe Perches,
	David S. Miller, Florian Mickler, Stephen Hemminger, Wolfram Sang

Extend the usage of the K section in the MAINTAINERS file to support matching
regular expressions with the content that precedes the patch (delimited by three
dashes "---").

The change enables the get_maintainer.pl script to get maintainers based on
arbitrary text that may precede the patch itself (for example, the commit
message or mail headers generated by git-format-patch)

Thanks to Jesper Juhl to point me that trivial patches should be CC'd to Jiri.
The idea is that the get_maintainer.pl can detect such situations and add the
additional email addresses and let the MAINTAINERS file handle who should get
copies of what.

Signed-off-by: L. Alberto Giménez <agimenez@sysvalve.es>
---
 MAINTAINERS               |    1 +
 scripts/get_maintainer.pl |   12 +++++++++++-
 2 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index cf0f3a5..c1e33ac 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6145,6 +6145,7 @@ TRIVIAL PATCHES
 M:	Jiri Kosina <trivial@kernel.org>
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial.git
 S:	Maintained
+K:	^Subject:.*\[(?i)trivial\].*
 
 TTY LAYER
 M:	Greg Kroah-Hartman <gregkh@suse.de>
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index 139e0ff..63d4d90 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -420,6 +420,11 @@ foreach my $file (@ARGV) {
 
 	open(my $patch, "< $file")
 	    or die "$P: Can't open $file: $!\n";
+
+	# We can add arbitrary information before the patch itself (commit message,
+	# mail headers,... This allows us to match arbitrary keywords agains any
+	# part of a git-format-patch generated file (subject tags, etc...)
+	my $in_patch = 0;
 	while (<$patch>) {
 	    my $patch_line = $_;
 	    if (m/^\+\+\+\s+(\S+)/) {
@@ -432,9 +437,14 @@ foreach my $file (@ARGV) {
 		if ($email_git_blame) {
 		    push(@range, "$lastfile:$1:$2");
 		}
+		} elsif (not $in_patch and m/^---/) {
+			# enter "patch area": keywords matched only on changed lines
+			$in_patch = 1;
 	    } elsif ($keywords) {
 		foreach my $line (keys %keyword_hash) {
-		    if ($patch_line =~ m/^[+-].*$keyword_hash{$line}/x) {
+			my $change_hook = $in_patch ? "^[+-].*" : "";
+
+			if ($patch_line =~ m/^${change_hook}$keyword_hash{$line}/x) {
 			push(@keyword_tvi, $line);
 		    }
 		}
-- 
1.7.4.rc0.5.gf2665


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-01-26 12:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-24 23:32 [PATCH] get_maintainer.pl: Add support to match arbitrary text L. Alberto Giménez
2011-01-24 23:53 ` Joe Perches
2011-01-25  0:25   ` L. Alberto Giménez
2011-01-25 14:08     ` [PATCH] get_maintainer.pl: Allow "K:" pattern tests to match non-patch text Joe Perches
2011-01-25 18:44       ` L. Alberto Giménez
2011-01-25 18:58         ` Joe Perches
2011-01-26 12:23           ` "L. Alberto Giménez"
2011-01-25 14:23 ` [PATCH] get_maintainer.pl: Add support to match arbitrary text Joe Perches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox