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

From: Don Zickus
Date: Fri Jul 06 2018 - 14:44:17 EST


On Fri, Jul 06, 2018 at 11:31:13AM -0700, Joe Perches wrote:
> On Fri, 2018-07-06 at 13:54 -0400, Don Zickus wrote:
> > 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.
>
> Hi Don.
>
> Sure.
>
> And that kinda already exists in mainline with
> --find-maintainer-files where any subdirectory
> that contains a MAINTAINER file is also read.

Hi Joe,

Yes, I saw and played with it. My only quirk with it was that option still
found and added ./MAINTAINERS to the list which I/we were trying to avoid
(we have our own private MAINTAINERS copy).

But yes, it easily found our private MAINTAINERS file.

>
> > Just trying to find ways to minimize our collection of private patches.
>
> Perhaps that could be extended for your purpose
> with some additional argument like a specific
> optional directory/path where every subdirectory
> would be found.

So something like --find-maintainer-files=<dir> ? I think that could work.

Cheers,
Don

>
> > Cheers,
> > Don
>
> cheers back, Joe
>
> > > > + $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>.
> > > >