diff mbox

[1/2] get_maintainer: create filename-only regex match type

Message ID 1362613005-31439-1-git-send-email-swarren@wwwdotorg.org (mailing list archive)
State New, archived
Headers show

Commit Message

Stephen Warren March 6, 2013, 11:36 p.m. UTC
From: Stephen Warren <swarren@nvidia.com>

Create a new N: entry type in MAINTAINERS which performs a regex match
against filenames; either those extracted from patch +++ or --- lines,
or those specified on the command-line using the -f option.

This provides the same benefits as using a K: regex option to match a
set of filenames (see commit eb90d08 "get_maintainer: allow keywords to
match filenames"), but without the disadvantage that "random" file
content, such as comments,  will ever match the regex.

Suggested-by: Joe Perches <joe@perches.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
 MAINTAINERS               |    3 +++
 scripts/get_maintainer.pl |    2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

Comments

Joe Perches March 7, 2013, 12:06 a.m. UTC | #1
On Wed, 2013-03-06 at 16:36 -0700, Stephen Warren wrote:
> From: Stephen Warren <swarren@nvidia.com>
> 
> Create a new N: entry type in MAINTAINERS which performs a regex match
> against filenames; either those extracted from patch +++ or --- lines,
> or those specified on the command-line using the -f option.

NAK

At least get the prefix right and remove the
now incorrect filename matches in K:

> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9561658..1671842 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -90,6 +90,9 @@ Descriptions of section entries:
>  	   F:	drivers/net/*	all files in drivers/net, but not below
>  	   F:	*/net/*		all files in "any top level directory"/net
>  	   One pattern per line.  Multiple F: lines acceptable.
> +	N: Files and directories with regex patterns.
> +	   K:	[^a-z]tegra	all files whose patch contains the word tegra

N: not K:

> +	   One pattern per line.  Multiple N: lines acceptable.
>  	X: Files and directories that are NOT maintained, same rules as F:
>  	   Files exclusions are tested before file matches.
>  	   Can be useful for excluding a specific subdirectory, for instance:

and remove the K: descriptions that show filename too.

> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index ce4cc83..27dc5cb 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -611,7 +611,7 @@ sub get_maintainers {
>  				    $hash{$tvi} = $value_pd;
>  				}
>  			    }
> -			} elsif ($type eq 'K') {
> +			} elsif ($type eq 'K' || $type eq 'N') {
>  			    if ($file =~ m/$value/x) {
>  				$hash{$tvi} = 0;
>  			    }

Remove K:  It has no value here.
diff mbox

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index 9561658..1671842 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -90,6 +90,9 @@  Descriptions of section entries:
 	   F:	drivers/net/*	all files in drivers/net, but not below
 	   F:	*/net/*		all files in "any top level directory"/net
 	   One pattern per line.  Multiple F: lines acceptable.
+	N: Files and directories with regex patterns.
+	   K:	[^a-z]tegra	all files whose patch contains the word tegra
+	   One pattern per line.  Multiple N: lines acceptable.
 	X: Files and directories that are NOT maintained, same rules as F:
 	   Files exclusions are tested before file matches.
 	   Can be useful for excluding a specific subdirectory, for instance:
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index ce4cc83..27dc5cb 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -611,7 +611,7 @@  sub get_maintainers {
 				    $hash{$tvi} = $value_pd;
 				}
 			    }
-			} elsif ($type eq 'K') {
+			} elsif ($type eq 'K' || $type eq 'N') {
 			    if ($file =~ m/$value/x) {
 				$hash{$tvi} = 0;
 			    }