From: Sam Ravnborg <sam@ravnborg.org>
To: Joe Perches <joe@perches.com>
Cc: Rob Herring <robh+dt@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Adrian Ratiu <adrian.ratiu@collabora.com>,
devicetree@vger.kernel.org,
dri-devel <dri-devel@lists.freedesktop.org>,
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>,
Neil Armstrong <narmstrong@baylibre.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Andrzej Hajda <a.hajda@samsung.com>,
Collabora Kernel ML <kernel@collabora.com>
Subject: Re: [PATCH] get_maintainer: Add email addresses from .yaml files
Date: Mon, 27 Apr 2020 07:57:55 +0200 [thread overview]
Message-ID: <20200427055755.GA21898@ravnborg.org> (raw)
In-Reply-To: <7beaedfd63017973b910dd21cac13ecb42dbe503.camel@perches.com>
Hi Joe.
On Sun, Apr 26, 2020 at 10:40:52PM -0700, Joe Perches wrote:
> .yaml files can contain maintainer/author addresses and it seems
> unlikely or unnecessary that individual MAINTAINER file section
> entries for each .yaml file will be created.
>
> So dd the email addresses found in .yaml files to the default
^
add
> get_maintainer output.
>
> The email addresses are marked with "(in file)" when using the
> "--roles" or "--rolestats" options.
>
> Miscellanea:
>
> o Change $file_emails to $email_file_emails to avoid visual
> naming conflicts with @file_emails
>
> Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Tested-by: Sam Ravnborg <sam@ravnborg.org>
The patch did not apply on top of -rc3, but it was trivial to fix.
Tested and works like a charm.
Thanks for doing this!
Sam
> ---
> scripts/get_maintainer.pl | 44 +++++++++++++++++++++++++++++---------------
> 1 file changed, 29 insertions(+), 15 deletions(-)
>
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index 6cbcd1..6d973f 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -57,7 +57,7 @@ my $status = 0;
> my $letters = "";
> my $keywords = 1;
> my $sections = 0;
> -my $file_emails = 0;
> +my $email_file_emails = 0;
> my $from_filename = 0;
> my $pattern_depth = 0;
> my $self_test = undef;
> @@ -69,6 +69,12 @@ my $vcs_used = 0;
>
> my $exit = 0;
>
> +my @files = ();
> +my @fixes = (); # If a patch description includes Fixes: lines
> +my @range = ();
> +my @keyword_tvi = ();
> +my @file_emails = ();
> +
> my %commit_author_hash;
> my %commit_signer_hash;
>
> @@ -266,7 +272,7 @@ if (!GetOptions(
> 'pattern-depth=i' => \$pattern_depth,
> 'k|keywords!' => \$keywords,
> 'sections!' => \$sections,
> - 'fe|file-emails!' => \$file_emails,
> + 'fe|file-emails!' => \$email_file_emails,
> 'f|file' => \$from_filename,
> 'find-maintainer-files' => \$find_maintainer_files,
> 'mpath|maintainer-path=s' => \$maintainer_path,
> @@ -424,6 +430,22 @@ sub read_all_maintainer_files {
> }
> }
>
> +sub maintainers_in_file {
> + my ($file) = @_;
> +
> + return if ($file =~ m@\bMAINTAINERS$@);
> +
> + if (-f $file && ($email_file_emails || $file =~ /\.yaml$/)) {
> + open(my $f, '<', $file)
> + or die "$P: Can't open $file: $!\n";
> + my $text = do { local($/) ; <$f> };
> + close($f);
> +
> + my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> + push(@file_emails, clean_file_emails(@poss_addr));
> + }
> +}
> +
> #
> # Read mail address map
> #
> @@ -504,12 +526,6 @@ sub read_mailmap {
>
> ## use the filenames on the command line or find the filenames in the patchfiles
>
> -my @files = ();
> -my @fixes = (); # If a patch description includes Fixes: lines
> -my @range = ();
> -my @keyword_tvi = ();
> -my @file_emails = ();
> -
> if (!@ARGV) {
> push(@ARGV, "&STDIN");
> }
> @@ -527,7 +543,7 @@ foreach my $file (@ARGV) {
> $file =~ s/^\Q${cur_path}\E//; #strip any absolute path
> $file =~ s/^\Q${lk_path}\E//; #or the path to the lk tree
> push(@files, $file);
> - if ($file ne "MAINTAINERS" && -f $file && ($keywords || $file_emails)) {
> + if ($file ne "MAINTAINERS" && -f $file && $keywords) {
> open(my $f, '<', $file)
> or die "$P: Can't open $file: $!\n";
> my $text = do { local($/) ; <$f> };
> @@ -539,10 +555,6 @@ foreach my $file (@ARGV) {
> }
> }
> }
> - if ($file_emails) {
> - my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> - push(@file_emails, clean_file_emails(@poss_addr));
> - }
> }
> } else {
> my $file_cnt = @files;
> @@ -923,6 +935,8 @@ sub get_maintainers {
> print("\n");
> }
> }
> +
> + maintainers_in_file($file);
> }
>
> if ($keywords) {
> @@ -1835,7 +1849,7 @@ tm toggle maintainers
> tg toggle git entries
> tl toggle open list entries
> ts toggle subscriber list entries
> -f emails in file [$file_emails]
> +f emails in file [$email_file_emails]
> k keywords in file [$keywords]
> r remove duplicates [$email_remove_duplicates]
> p# pattern match depth [$pattern_depth]
> @@ -1960,7 +1974,7 @@ EOT
> bool_invert(\$email_git_all_signature_types);
> $rerun = 1;
> } elsif ($sel eq "f") {
> - bool_invert(\$file_emails);
> + bool_invert(\$email_file_emails);
> $rerun = 1;
> } elsif ($sel eq "r") {
> bool_invert(\$email_remove_duplicates);
>
WARNING: multiple messages have this Message-ID (diff)
From: Sam Ravnborg <sam@ravnborg.org>
To: Joe Perches <joe@perches.com>
Cc: devicetree@vger.kernel.org,
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>,
Neil Armstrong <narmstrong@baylibre.com>,
Adrian Ratiu <adrian.ratiu@collabora.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
dri-devel <dri-devel@lists.freedesktop.org>,
Andrzej Hajda <a.hajda@samsung.com>,
Rob Herring <robh+dt@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Collabora Kernel ML <kernel@collabora.com>
Subject: Re: [PATCH] get_maintainer: Add email addresses from .yaml files
Date: Mon, 27 Apr 2020 07:57:55 +0200 [thread overview]
Message-ID: <20200427055755.GA21898@ravnborg.org> (raw)
In-Reply-To: <7beaedfd63017973b910dd21cac13ecb42dbe503.camel@perches.com>
Hi Joe.
On Sun, Apr 26, 2020 at 10:40:52PM -0700, Joe Perches wrote:
> .yaml files can contain maintainer/author addresses and it seems
> unlikely or unnecessary that individual MAINTAINER file section
> entries for each .yaml file will be created.
>
> So dd the email addresses found in .yaml files to the default
^
add
> get_maintainer output.
>
> The email addresses are marked with "(in file)" when using the
> "--roles" or "--rolestats" options.
>
> Miscellanea:
>
> o Change $file_emails to $email_file_emails to avoid visual
> naming conflicts with @file_emails
>
> Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Tested-by: Sam Ravnborg <sam@ravnborg.org>
The patch did not apply on top of -rc3, but it was trivial to fix.
Tested and works like a charm.
Thanks for doing this!
Sam
> ---
> scripts/get_maintainer.pl | 44 +++++++++++++++++++++++++++++---------------
> 1 file changed, 29 insertions(+), 15 deletions(-)
>
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index 6cbcd1..6d973f 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -57,7 +57,7 @@ my $status = 0;
> my $letters = "";
> my $keywords = 1;
> my $sections = 0;
> -my $file_emails = 0;
> +my $email_file_emails = 0;
> my $from_filename = 0;
> my $pattern_depth = 0;
> my $self_test = undef;
> @@ -69,6 +69,12 @@ my $vcs_used = 0;
>
> my $exit = 0;
>
> +my @files = ();
> +my @fixes = (); # If a patch description includes Fixes: lines
> +my @range = ();
> +my @keyword_tvi = ();
> +my @file_emails = ();
> +
> my %commit_author_hash;
> my %commit_signer_hash;
>
> @@ -266,7 +272,7 @@ if (!GetOptions(
> 'pattern-depth=i' => \$pattern_depth,
> 'k|keywords!' => \$keywords,
> 'sections!' => \$sections,
> - 'fe|file-emails!' => \$file_emails,
> + 'fe|file-emails!' => \$email_file_emails,
> 'f|file' => \$from_filename,
> 'find-maintainer-files' => \$find_maintainer_files,
> 'mpath|maintainer-path=s' => \$maintainer_path,
> @@ -424,6 +430,22 @@ sub read_all_maintainer_files {
> }
> }
>
> +sub maintainers_in_file {
> + my ($file) = @_;
> +
> + return if ($file =~ m@\bMAINTAINERS$@);
> +
> + if (-f $file && ($email_file_emails || $file =~ /\.yaml$/)) {
> + open(my $f, '<', $file)
> + or die "$P: Can't open $file: $!\n";
> + my $text = do { local($/) ; <$f> };
> + close($f);
> +
> + my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> + push(@file_emails, clean_file_emails(@poss_addr));
> + }
> +}
> +
> #
> # Read mail address map
> #
> @@ -504,12 +526,6 @@ sub read_mailmap {
>
> ## use the filenames on the command line or find the filenames in the patchfiles
>
> -my @files = ();
> -my @fixes = (); # If a patch description includes Fixes: lines
> -my @range = ();
> -my @keyword_tvi = ();
> -my @file_emails = ();
> -
> if (!@ARGV) {
> push(@ARGV, "&STDIN");
> }
> @@ -527,7 +543,7 @@ foreach my $file (@ARGV) {
> $file =~ s/^\Q${cur_path}\E//; #strip any absolute path
> $file =~ s/^\Q${lk_path}\E//; #or the path to the lk tree
> push(@files, $file);
> - if ($file ne "MAINTAINERS" && -f $file && ($keywords || $file_emails)) {
> + if ($file ne "MAINTAINERS" && -f $file && $keywords) {
> open(my $f, '<', $file)
> or die "$P: Can't open $file: $!\n";
> my $text = do { local($/) ; <$f> };
> @@ -539,10 +555,6 @@ foreach my $file (@ARGV) {
> }
> }
> }
> - if ($file_emails) {
> - my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> - push(@file_emails, clean_file_emails(@poss_addr));
> - }
> }
> } else {
> my $file_cnt = @files;
> @@ -923,6 +935,8 @@ sub get_maintainers {
> print("\n");
> }
> }
> +
> + maintainers_in_file($file);
> }
>
> if ($keywords) {
> @@ -1835,7 +1849,7 @@ tm toggle maintainers
> tg toggle git entries
> tl toggle open list entries
> ts toggle subscriber list entries
> -f emails in file [$file_emails]
> +f emails in file [$email_file_emails]
> k keywords in file [$keywords]
> r remove duplicates [$email_remove_duplicates]
> p# pattern match depth [$pattern_depth]
> @@ -1960,7 +1974,7 @@ EOT
> bool_invert(\$email_git_all_signature_types);
> $rerun = 1;
> } elsif ($sel eq "f") {
> - bool_invert(\$file_emails);
> + bool_invert(\$email_file_emails);
> $rerun = 1;
> } elsif ($sel eq "r") {
> bool_invert(\$email_remove_duplicates);
>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2020-04-27 5:58 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-20 11:19 Rule for bridge yaml dt binding maintainers? Adrian Ratiu
2020-04-20 11:19 ` Adrian Ratiu
2020-04-20 17:59 ` Sam Ravnborg
2020-04-20 17:59 ` Sam Ravnborg
2020-04-22 20:02 ` Rob Herring
2020-04-22 20:02 ` Rob Herring
2020-04-22 23:43 ` Joe Perches
2020-04-22 23:43 ` Joe Perches
2020-04-23 5:22 ` Sam Ravnborg
2020-04-23 5:22 ` Sam Ravnborg
2020-04-27 5:40 ` [PATCH] get_maintainer: Add email addresses from .yaml files Joe Perches
2020-04-27 5:40 ` Joe Perches
2020-04-27 5:57 ` Sam Ravnborg [this message]
2020-04-27 5:57 ` Sam Ravnborg
2020-04-27 6:33 ` Joe Perches
2020-04-27 6:33 ` Joe Perches
2020-04-27 20:04 ` Andrew Morton
2020-04-27 20:04 ` Andrew Morton
2020-04-27 20:26 ` Joe Perches
2020-04-27 20:26 ` Joe Perches
2020-04-27 20:32 ` Sam Ravnborg
2020-04-27 20:32 ` Sam Ravnborg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200427055755.GA21898@ravnborg.org \
--to=sam@ravnborg.org \
--cc=a.hajda@samsung.com \
--cc=adrian.ratiu@collabora.com \
--cc=akpm@linux-foundation.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=joe@perches.com \
--cc=kernel@collabora.com \
--cc=laurent.pinchart+renesas@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=narmstrong@baylibre.com \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.