scripts/get_maintainers.pl: Don't blindly drop "THE REST" maintainers

"THE REST" maintainers should always be CCed for any modification that
don't fall under the responsability of a specific component maintainer.

However, the script get_maintainers.pl will remove "THE REST"
maintainers as soon as one maintainer of a specific component will be
present.

Fix the script once for all.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
This commit is contained in:
Julien Grall authored and Wei Liu committed 2017-07-28 17:45:37 +01:00
1 parent bd59ee9fdf
commit 49b1ea9e0e
1 file changed
+17 -1
+17 -1
View File
@@ -571,11 +571,15 @@ sub get_maintainers {
# Find responsible parties
my %exact_pattern_match_hash = ();
# By default "THE REST" will be suppressed.
my $suppress_the_rest = 1;
foreach my $file (@files) {
my %hash;
my $tvi = find_first_section();
# Unless stated otherwise, a file is maintained by "THE REST"
my $file_maintained_by_the_rest = 1;
while ($tvi < @typevalue) {
my $start = find_starting_index($tvi);
my $end = find_ending_index($tvi);
@@ -633,6 +637,14 @@ sub get_maintainers {
foreach my $line (sort {$hash{$b} <=> $hash{$a}} keys %hash) {
add_categories($line);
my $role = get_maintainer_role($line);
# Check the role, if it is not "THE REST" then the file is not
# only maintained by "THE REST".
if ( get_maintainer_role($line) ne "supporter:THE REST" ) {
$file_maintained_by_the_rest = 0;
}
if ($sections) {
my $i;
my $start = find_starting_index($line);
@@ -657,6 +669,9 @@ sub get_maintainers {
print("\n");
}
}
# If the file is only maintained by "THE REST", then CC all of them on
# the patch.
$suppress_the_rest = 0 if $file_maintained_by_the_rest;
}
if ($keywords) {
@@ -666,7 +681,8 @@ sub get_maintainers {
}
}
if ($email_drop_the_rest_supporter_if_supporter_found && $#email_to > 0) {
if ($email_drop_the_rest_supporter_if_supporter_found &&
$suppress_the_rest && $#email_to > 0) {
my @email_new;
my $do_replace = 0;
foreach my $email (@email_to) {
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.