Re: [PATCH] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override

From: Don Zickus
Date: Fri Jul 06 2018 - 13:54:39 EST


On Tue, Jun 26, 2018 at 01:16:11PM -0700, Joe Perches wrote:
> On Tue, 2018-06-26 at 14:25 -0400, Prarit Bhargava wrote:
> > OSes have additional maintainers that should be cc'd on patches or may
> > want to circulate internal patches.
> >
> > Parse the .get_maintainer.MAINTAINERS file. Entries in the file
> > can begin with a '+' to indicate the email and list entries should be
> > added to the exiting MAINTAINERS output, or a '-' to indicate that the
> > entries should override the existing MAINTAINERS file.
> >
> > Also add a help entry for the .get_maintainers.ignore file.
>
> I see no reason for this patch to be applied.
> Why should it?
> Why shouldn't this be in your private repository?

Hi Joe,

Would you be open to a '--mfile=<path>/MAINTAINERS' option that would
override the default ./MAINTAINERS file? Then we could just add that to our
.get_maintainers.conf file.

Just trying to find ways to minimize our collection of private patches.

Cheers,
Don

>
> > Signed-off-by: Prarit Bhargava <prarit@xxxxxxxxxx>
> > Cc: Joe Perches <joe@xxxxxxxxxxx>
> > Cc: dzickus@xxxxxxxxxx
> > Cc: jtoppins@xxxxxxxxxx
> > ---
> > scripts/get_maintainer.pl | 34 ++++++++++++++++++++++++++++++++++
> > 1 file changed, 34 insertions(+)
> >
> > diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> > index c87fa734e3e1..239f4d2ce972 100755
> > --- a/scripts/get_maintainer.pl
> > +++ b/scripts/get_maintainer.pl
> > @@ -384,6 +384,32 @@ sub find_ignore_git {
> > read_all_maintainer_files();
> >
> > sub read_all_maintainer_files {
> > + my $conf = which_conf(".get_maintainer.MAINTAINERS");
> > + if ( -f $conf) {
> > + my @conf_args;
> > + my $add = 0;
> > + open(my $conffile, '<', "$conf")
> > + or warn "$P: Can't find a readable .get_maintainer.MAINTAINERS file $!\n";
> > + while (<$conffile>) {
> > + my $line = $_;
> > + if ($line =~ m/^\+/ ) {
> > + $add = 1;
> > + }
> > + next if ($line =~ m/^\s*#/);
> > + $line =~ s/^\+//g;
> > + $line =~ s/^\-//g;
> > + $line =~ s/\s*\n?$//;
> > + push(@mfiles, $line);
> > + }
> > + close($conffile);
> > + if ($add eq 0) {
> > + foreach my $file (@mfiles) {
> > + read_maintainer_file("$file");
> > + }
> > + return;
> > + }
> > + }
> > +
> > if (-d "${lk_path}MAINTAINERS") {
> > opendir(DIR, "${lk_path}MAINTAINERS") or die $!;
> > my @files = readdir(DIR);
> > @@ -1068,6 +1094,14 @@ Notes:
> > Entries in this file can be any command line argument.
> > This file is prepended to any additional command line arguments.
> > Multiple lines and # comments are allowed.
> > + File ".get_maintainer.ignore", if it exists in the linux kernel source root
> > + directory, can contain a list of email addresses to ignore. Multiple
> > + lines and # comments are allowed.
> > + File ".get_maintainer.MAINTAINERS", if it exists in the linux kernel source
> > + root directory, can change the location of the MAINTAINERS file.
> > + Entries beginning with a '+' are added to the default list, and
> > + entries beginning with a '-' override the existing MAINTAINERS list
> > + lookup. Multiple lines and # comments are allowed.
> > Most options have both positive and negative forms.
> > The negative forms for --<foo> are --no<foo> and --no-<foo>.
> >