qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] get_maintainer.pl: Default to --no-git-fallback


From: Don Slutz
Subject: Re: [Qemu-devel] [PATCH] get_maintainer.pl: Default to --no-git-fallback
Date: Mon, 20 Oct 2014 16:10:27 -0400
User-agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0

On 10/20/14 15:03, Michael S. Tsirkin wrote:
On Mon, Oct 20, 2014 at 03:19:52PM +0100, Peter Maydell wrote:
On 20 October 2014 15:15, Michael S. Tsirkin <address@hidden> wrote:
On Mon, Oct 20, 2014 at 03:04:44PM +0100, Peter Maydell wrote:
On 20 October 2014 10:19, Markus Armbruster <address@hidden> wrote:
Contributors rely on this script to find maintainers to copy.  The
script falls back to git when no exact MAINTAINERS pattern matches.
When that happens, recent contributors get copied, which tends not be
particularly useful.  Some contributors find it even annoying.

Flip the default to "don't fall back to git".  Use --git-fallback to
ask it to fall back to git.
Good idea.
What do you want to happen in this case?
It should mail the people who are actually maintainers,
not anybody who happened to touch the code in the last
year.
Right but as often as not there's no data about that
in MAINTAINERS.


I'm yet to see contributors who are annoyed but we
can always blacklist specific people.
At the moment I just don't use get_maintainers.pl at
all because I tried it a few times and it just cc'd
a bunch of irrelevant people...

I suspect anybody using it at the moment is either
using the --no-git-fallback flag or trimming the
cc list a lot.

thanks
-- PMM
I'm using it: sometimes with --no-git-fallback, sometimes without.

IIUC the default is to have up to 5 people on the Cc list
(--git-max-maintainers).
It's not like it adds 200 random people, is it?

Anyway experienced contributors can figure it out IMHO.


Question in my mind is what do we want a casual contributor
to do if there's no one listed in MAINTAINERS.
"Look in MAINTAINERS, if not there, look in git log"
sounds very reasonable to me, better than "CC no one".


Here is a possible patch (based on a xen change).  It adds the special
supporter:THE REST

Which is listed at the end of MAINTAINERS.  I included a quick guess...

   -Don Slutz

From 82bd0d1dcfc5d17d1b72e12b2da3c9bb51e09a48 Mon Sep 17 00:00:00 2001
From: Don Slutz <address@hidden>
Date: Mon, 20 Oct 2014 16:06:35 -0400
Subject: [PATCH] get_maintainer.pl: Add 'THE REST'

Signed-off-by: Don Slutz <address@hidden>
---
 MAINTAINERS               |  8 ++++++++
 scripts/get_maintainer.pl | 15 +++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index 206bf7e..527227a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1018,3 +1018,11 @@ M: Chrysostomos Nanakos <address@hidden>
 M: Chrysostomos Nanakos <address@hidden>
 S: Maintained
 F: block/archipelago.c
+
+THE REST
+M: Michael S. Tsirkin <address@hidden>
+M: Peter Maydell <address@hidden>
+L: address@hidden
+S: Supported
+F: *
+F: */
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index 38334de..eef16ee 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -37,6 +37,7 @@ my $email_hg_since = "-365";
 my $interactive = 0;
 my $email_remove_duplicates = 1;
 my $email_use_mailmap = 1;
+my $email_drop_the_rest_supporter_if_supporter_found = 1;
 my $output_multiline = 1;
 my $output_separator = ", ";
 my $output_roles = 0;
@@ -196,6 +197,7 @@ if (!GetOptions(
                'i|interactive!' => \$interactive,
                'remove-duplicates!' => \$email_remove_duplicates,
                'mailmap!' => \$email_use_mailmap,
+ 'drop_the_rest_supporter!' => \$email_drop_the_rest_supporter_if_supporter_found,
                'm!' => \$email_maintainer,
                'n!' => \$email_usename,
                'l!' => \$email_list,
@@ -647,6 +649,19 @@ sub get_maintainers {
        }
     }

+ if ($email_drop_the_rest_supporter_if_supporter_found && $#email_to > 0) {
+        my @email_new;
+        my $do_replace = 0;
+        foreach my $email (@email_to) {
+            if ($email->[1] ne 'supporter:THE REST') {
+                $do_replace = 1;
+                push @email_new, $email;
+            }
+        }
+        @email_to = @email_new
+            if $do_replace;
+    }
+
     foreach my $email (@email_to, @list_to) {
        $email->[0] = deduplicate_email($email->[0]);
     }
--
1.8.4




Attachment: 0001-get_maintainer.pl-Add-THE-REST.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]