linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Rule for bridge yaml dt binding maintainers?
@ 2020-04-20 11:19 Adrian Ratiu
  2020-04-20 17:59 ` Sam Ravnborg
  0 siblings, 1 reply; 11+ messages in thread
From: Adrian Ratiu @ 2020-04-20 11:19 UTC (permalink / raw)
  To: devicetree, dri-devel
  Cc: Rob Herring, Laurent Pinchart, Neil Armstrong, Andrzej Hajda,
	linux-kernel, kernel

Hello,

I got confused while doing the txt -> yaml conversion at [1] and 
it's still not clear to me who should be added in the 
"maintainers" field.  Clearly not the maintainers as returned by 
get_maintainer.pl. :)

Rob mentioned that "owners" should be manintainers but I also have 
trouble picking the persons who should be owners / yaml 
maintainers.

Looking at the completed bridge conversions in the latest 
linux-next, I couldn't find a rule and the majority of bindings 
are still txt: 

$ find ./devicetree/bindings/display/bridge/ -name *txt | wc -l
23
$ find ./devicetree/bindings/display/bridge/ -name *yaml | wc -l
5

So my questions are:
1. Is there a general rule for assigning yaml file 
owners/maintainers?

2. Is this vagueness specific to the bridge dt bindings only?

3. Who should step up and maintain these bindings? Original/new 
authors, SoC, bridge, DRM maintainers etc.?

It would be useful to have a rule to make it easier to do these 
conversions. We (Collabora) are considering doing the conversion 
work.

Thank you,
Adrian

[1] https://patchwork.kernel.org/patch/11493009/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Rule for bridge yaml dt binding maintainers?
  2020-04-20 11:19 Rule for bridge yaml dt binding maintainers? Adrian Ratiu
@ 2020-04-20 17:59 ` Sam Ravnborg
  2020-04-22 20:02   ` Rob Herring
  0 siblings, 1 reply; 11+ messages in thread
From: Sam Ravnborg @ 2020-04-20 17:59 UTC (permalink / raw)
  To: Adrian Ratiu
  Cc: devicetree, dri-devel, Laurent Pinchart, Neil Armstrong,
	linux-kernel, Andrzej Hajda, Rob Herring, kernel

Hi Adrian

On Mon, Apr 20, 2020 at 02:19:24PM +0300, Adrian Ratiu wrote:
> Hello,
> 
> I got confused while doing the txt -> yaml conversion at [1] and it's still
> not clear to me who should be added in the "maintainers" field.  Clearly not
> the maintainers as returned by get_maintainer.pl. :)
> 
> Rob mentioned that "owners" should be manintainers but I also have trouble
> picking the persons who should be owners / yaml maintainers.
> 
> Looking at the completed bridge conversions in the latest linux-next, I
> couldn't find a rule and the majority of bindings are still txt:
> 
> $ find ./devicetree/bindings/display/bridge/ -name *txt | wc -l
> 23
> $ find ./devicetree/bindings/display/bridge/ -name *yaml | wc -l
> 5
> 
> So my questions are:
> 1. Is there a general rule for assigning yaml file owners/maintainers?
> 
> 2. Is this vagueness specific to the bridge dt bindings only?
> 
> 3. Who should step up and maintain these bindings? Original/new authors,
> SoC, bridge, DRM maintainers etc.?
> 
> It would be useful to have a rule to make it easier to do these conversions.
> We (Collabora) are considering doing the conversion work.

For the panel conversion I did recently it was simple:
1) If listed in MAINTAINERS - use this info
2) Otherwise use the person(s) that authored the original .txt file.
   Using git log --follow foo.txt
3) In a few cases I may have decided otherwise, but the above covers the
   majority.

I would also be great if you or someone else could:
- teach get_maintainers about .yaml file listed maintainers
- teach checkpatch that it is OK to convert .txt to .yaml
- teach checkpatch about some simple yaml validation (maybe)

I am looking forward to the day we have more .yaml files
than .txt files in Documentation/devicetree/binding/*

	Sam

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Rule for bridge yaml dt binding maintainers?
  2020-04-20 17:59 ` Sam Ravnborg
@ 2020-04-22 20:02   ` Rob Herring
  2020-04-22 23:43     ` Joe Perches
  0 siblings, 1 reply; 11+ messages in thread
From: Rob Herring @ 2020-04-22 20:02 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Adrian Ratiu, devicetree, dri-devel, Laurent Pinchart,
	Neil Armstrong, linux-kernel, Andrzej Hajda, Collabora Kernel ML

On Mon, Apr 20, 2020 at 12:59 PM Sam Ravnborg <sam@ravnborg.org> wrote:
>
> Hi Adrian
>
> On Mon, Apr 20, 2020 at 02:19:24PM +0300, Adrian Ratiu wrote:
> > Hello,
> >
> > I got confused while doing the txt -> yaml conversion at [1] and it's still
> > not clear to me who should be added in the "maintainers" field.  Clearly not
> > the maintainers as returned by get_maintainer.pl. :)
> >
> > Rob mentioned that "owners" should be manintainers but I also have trouble
> > picking the persons who should be owners / yaml maintainers.
> >
> > Looking at the completed bridge conversions in the latest linux-next, I
> > couldn't find a rule and the majority of bindings are still txt:
> >
> > $ find ./devicetree/bindings/display/bridge/ -name *txt | wc -l
> > 23
> > $ find ./devicetree/bindings/display/bridge/ -name *yaml | wc -l
> > 5
> >
> > So my questions are:
> > 1. Is there a general rule for assigning yaml file owners/maintainers?
> >
> > 2. Is this vagueness specific to the bridge dt bindings only?
> >
> > 3. Who should step up and maintain these bindings? Original/new authors,
> > SoC, bridge, DRM maintainers etc.?
> >
> > It would be useful to have a rule to make it easier to do these conversions.
> > We (Collabora) are considering doing the conversion work.
>
> For the panel conversion I did recently it was simple:
> 1) If listed in MAINTAINERS - use this info
> 2) Otherwise use the person(s) that authored the original .txt file.
>    Using git log --follow foo.txt
> 3) In a few cases I may have decided otherwise, but the above covers the
>    majority.

Yes.

> I would also be great if you or someone else could:
> - teach get_maintainers about .yaml file listed maintainers

It already does to some extent. IIRC, there's a mode to extract email
addresses from files.

I was hoping that the MAINTAINERS file split happens sometime and we
can just generate a MAINTAINERS file for bindings.

> - teach checkpatch that it is OK to convert .txt to .yaml

Yeah, I should fix my bug.

> - teach checkpatch about some simple yaml validation (maybe)

I don't see checkpatch being able to check much of what comes up in
review. Maybe indentation.

> I am looking forward to the day we have more .yaml files
> than .txt files in Documentation/devicetree/binding/*

700 vs. 3000 currently. It's about 60-70 new bindings and ~100
conversions per cycle. At this point we're review limited I think and
at the current rate, we should be done in 7 years. Yay! :( We need a
faster way.

Rob

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Rule for bridge yaml dt binding maintainers?
  2020-04-22 20:02   ` Rob Herring
@ 2020-04-22 23:43     ` Joe Perches
  2020-04-23  5:22       ` Sam Ravnborg
  2020-04-27  5:40       ` [PATCH] get_maintainer: Add email addresses from .yaml files Joe Perches
  0 siblings, 2 replies; 11+ messages in thread
From: Joe Perches @ 2020-04-22 23:43 UTC (permalink / raw)
  To: Rob Herring, Sam Ravnborg
  Cc: Adrian Ratiu, devicetree, dri-devel, Laurent Pinchart,
	Neil Armstrong, linux-kernel, Andrzej Hajda, Collabora Kernel ML

On Wed, 2020-04-22 at 15:02 -0500, Rob Herring wrote:
> On Mon, Apr 20, 2020 at 12:59 PM Sam Ravnborg <sam@ravnborg.org> wrote:
> > Hi Adrian
> > 
> > On Mon, Apr 20, 2020 at 02:19:24PM +0300, Adrian Ratiu wrote:
> > > Hello,
> > > 
> > > I got confused while doing the txt -> yaml conversion at [1] and it's still
> > > not clear to me who should be added in the "maintainers" field.  Clearly not
> > > the maintainers as returned by get_maintainer.pl. :)
> > > 
> > > Rob mentioned that "owners" should be manintainers but I also have trouble
> > > picking the persons who should be owners / yaml maintainers.
> > > 
> > > Looking at the completed bridge conversions in the latest linux-next, I
> > > couldn't find a rule and the majority of bindings are still txt:
> > > 
> > > $ find ./devicetree/bindings/display/bridge/ -name *txt | wc -l
> > > 23
> > > $ find ./devicetree/bindings/display/bridge/ -name *yaml | wc -l
> > > 5
> > > 
> > > So my questions are:
> > > 1. Is there a general rule for assigning yaml file owners/maintainers?
> > > 
> > > 2. Is this vagueness specific to the bridge dt bindings only?
> > > 
> > > 3. Who should step up and maintain these bindings? Original/new authors,
> > > SoC, bridge, DRM maintainers etc.?
> > > 
> > > It would be useful to have a rule to make it easier to do these conversions.
> > > We (Collabora) are considering doing the conversion work.
> > 
> > For the panel conversion I did recently it was simple:
> > 1) If listed in MAINTAINERS - use this info
> > 2) Otherwise use the person(s) that authored the original .txt file.
> >    Using git log --follow foo.txt
> > 3) In a few cases I may have decided otherwise, but the above covers the
> >    majority.
> 
> Yes.
> 
> > I would also be great if you or someone else could:
> > - teach get_maintainers about .yaml file listed maintainers
> 
> It already does to some extent. IIRC, there's a mode to extract email
> addresses from files.

--file-emails

> I was hoping that the MAINTAINERS file split happens sometime and we
> can just generate a MAINTAINERS file for bindings.

I don't see the value really.

> > - teach checkpatch that it is OK to convert .txt to .yaml

I suppose that get_maintainer _could_ enable --file-emails
for .yaml files.

something like this (more comments below too)
---
 scripts/get_maintainer.pl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index 6cbcd1..9d947a0 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -527,7 +527,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 || $file_emails || $file =~ /\.yaml$/)) {
 	    open(my $f, '<', $file)
 		or die "$P: Can't open $file: $!\n";
 	    my $text = do { local($/) ; <$f> };
@@ -539,7 +539,7 @@ foreach my $file (@ARGV) {
 		    }
 		}
 	    }
-	    if ($file_emails) {
+	    if ($file_emails || $file =~ /\.yaml$/) {
 		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));
 	    }

---

> Yeah, I should fix my bug.
> 
> > - teach checkpatch about some simple yaml validation (maybe)
> 
> I don't see checkpatch being able to check much of what comes up in
> review. Maybe indentation.

Likely better done with another external tool.

Could be added to checkpatch as an external
call like spdxcheck.py




^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Rule for bridge yaml dt binding maintainers?
  2020-04-22 23:43     ` Joe Perches
@ 2020-04-23  5:22       ` Sam Ravnborg
  2020-04-27  5:40       ` [PATCH] get_maintainer: Add email addresses from .yaml files Joe Perches
  1 sibling, 0 replies; 11+ messages in thread
From: Sam Ravnborg @ 2020-04-23  5:22 UTC (permalink / raw)
  To: Joe Perches
  Cc: Rob Herring, devicetree, Laurent Pinchart, Neil Armstrong,
	Adrian Ratiu, linux-kernel, dri-devel, Andrzej Hajda,
	Collabora Kernel ML

Hi Joe.

> > 
> > > I would also be great if you or someone else could:
> > > - teach get_maintainers about .yaml file listed maintainers
> > 
> > It already does to some extent. IIRC, there's a mode to extract email
> > addresses from files.
> 
> --file-emails
> 
> > I was hoping that the MAINTAINERS file split happens sometime and we
> > can just generate a MAINTAINERS file for bindings.
> 
> I don't see the value really.
> 
> > > - teach checkpatch that it is OK to convert .txt to .yaml
> 
> I suppose that get_maintainer _could_ enable --file-emails
> for .yaml files.
> 
> something like this (more comments below too)
> ---
>  scripts/get_maintainer.pl | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index 6cbcd1..9d947a0 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -527,7 +527,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 || $file_emails || $file =~ /\.yaml$/)) {
>  	    open(my $f, '<', $file)
>  		or die "$P: Can't open $file: $!\n";
>  	    my $text = do { local($/) ; <$f> };
> @@ -539,7 +539,7 @@ foreach my $file (@ARGV) {
>  		    }
>  		}
>  	    }
> -	    if ($file_emails) {
> +	    if ($file_emails || $file =~ /\.yaml$/) {
>  		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));
>  	    }
>
That would be a good step forward. So people editing yaml file
will actually copy the maintainers and not just Rob as it is today.
There is a growing tendency to rely on tools only for the
list of people on cc, which is fine, but we should make those tools
then do a good job.

Thanks for looking into this.

Patch is:
Acked-by: Sam Ravnborg <sam@ravnborg.org>


> > I don't see checkpatch being able to check much of what comes up in
> > review. Maybe indentation.
> 
> Likely better done with another external tool.
> 
> Could be added to checkpatch as an external
> call like spdxcheck.py

If we grow anything more than:
"Indent shall always be an even number of spaces and no tabs" kind of
rules then yes, an external tool would be fine.

	Sam

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-22 23:43     ` Joe Perches
  2020-04-23  5:22       ` Sam Ravnborg
@ 2020-04-27  5:40       ` Joe Perches
  2020-04-27  5:57         ` Sam Ravnborg
  1 sibling, 1 reply; 11+ messages in thread
From: Joe Perches @ 2020-04-27  5:40 UTC (permalink / raw)
  To: Rob Herring, Sam Ravnborg, Andrew Morton
  Cc: Adrian Ratiu, devicetree, dri-devel, Laurent Pinchart,
	Neil Armstrong, linux-kernel, Andrzej Hajda, Collabora Kernel ML

.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
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>
---
 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);



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-27  5:40       ` [PATCH] get_maintainer: Add email addresses from .yaml files Joe Perches
@ 2020-04-27  5:57         ` Sam Ravnborg
  2020-04-27  6:33           ` Joe Perches
  0 siblings, 1 reply; 11+ messages in thread
From: Sam Ravnborg @ 2020-04-27  5:57 UTC (permalink / raw)
  To: Joe Perches
  Cc: Rob Herring, Andrew Morton, Adrian Ratiu, devicetree, dri-devel,
	Laurent Pinchart, Neil Armstrong, linux-kernel, Andrzej Hajda,
	Collabora Kernel ML

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);
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-27  5:57         ` Sam Ravnborg
@ 2020-04-27  6:33           ` Joe Perches
  2020-04-27 20:04             ` Andrew Morton
  0 siblings, 1 reply; 11+ messages in thread
From: Joe Perches @ 2020-04-27  6:33 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Rob Herring, Andrew Morton, Adrian Ratiu, devicetree, dri-devel,
	Laurent Pinchart, Neil Armstrong, linux-kernel, Andrzej Hajda,
	Collabora Kernel ML

On Mon, 2020-04-27 at 07:57 +0200, Sam Ravnborg wrote:
> Hi Joe.

Hi Sam.

> 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

Andrew, can you add the a to this please?

> 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!

As most of my patches, it was done using -next

cheers, Joe


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-27  6:33           ` Joe Perches
@ 2020-04-27 20:04             ` Andrew Morton
  2020-04-27 20:26               ` Joe Perches
  2020-04-27 20:32               ` Sam Ravnborg
  0 siblings, 2 replies; 11+ messages in thread
From: Andrew Morton @ 2020-04-27 20:04 UTC (permalink / raw)
  To: Joe Perches
  Cc: Sam Ravnborg, Rob Herring, Adrian Ratiu, devicetree, dri-devel,
	Laurent Pinchart, Neil Armstrong, linux-kernel, Andrzej Hajda,
	Collabora Kernel ML

On Sun, 26 Apr 2020 23:33:02 -0700 Joe Perches <joe@perches.com> wrote:

> On Mon, 2020-04-27 at 07:57 +0200, Sam Ravnborg wrote:
> > Hi Joe.
> 
> Hi Sam.
> 
> > 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
> 
> Andrew, can you add the a to this please?
> 
> > 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!
> 
> As most of my patches, it was done using -next
> 

The patch assumes that we have

-	    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));
-	    }

but today's next has

	    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));
	    }

so what do do here?

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-27 20:04             ` Andrew Morton
@ 2020-04-27 20:26               ` Joe Perches
  2020-04-27 20:32               ` Sam Ravnborg
  1 sibling, 0 replies; 11+ messages in thread
From: Joe Perches @ 2020-04-27 20:26 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Sam Ravnborg, Rob Herring, Adrian Ratiu, devicetree, dri-devel,
	Laurent Pinchart, Neil Armstrong, linux-kernel, Andrzej Hajda,
	Collabora Kernel ML

On Mon, 2020-04-27 at 13:04 -0700, Andrew Morton wrote:
> On Sun, 26 Apr 2020 23:33:02 -0700 Joe Perches <joe@perches.com> wrote:
> 
> > On Mon, 2020-04-27 at 07:57 +0200, Sam Ravnborg wrote:
> > > Hi Joe.
> > 
> > Hi Sam.
> > 
> > > 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
> > 
> > Andrew, can you add the a to this please?
> > 
> > > 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!
> > 
> > As most of my patches, it was done using -next
> > 
> 
> The patch assumes that we have
> 
> -	    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));
> -	    }
> 
> but today's next has
> 
> 	    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));
> 	    }
> 
> so what do do here?

It's not "do do" nor "doo doo", but it is odd.
Must be some weirdness with the evolution email composer again.

I'll resubmit with Sam's sign-offs using a proper git-send-email
(and I'll fix the dd/add typo, thanks Sam)




^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] get_maintainer: Add email addresses from .yaml files
  2020-04-27 20:04             ` Andrew Morton
  2020-04-27 20:26               ` Joe Perches
@ 2020-04-27 20:32               ` Sam Ravnborg
  1 sibling, 0 replies; 11+ messages in thread
From: Sam Ravnborg @ 2020-04-27 20:32 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Joe Perches, devicetree, Laurent Pinchart, Neil Armstrong,
	Adrian Ratiu, linux-kernel, dri-devel, Andrzej Hajda,
	Rob Herring, Collabora Kernel ML

Hi Andrew.

> The patch assumes that we have
> 
> -	    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));
> -	    }

If you look in the original mail it has:
> -             my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ

So somehow "À-ÿ" is silently converted to _-_ when the patch is saved or
processed by further tools.

Strange, maybe an encoding thing of the mail?

	Sam

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2020-04-27 20:32 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-20 11:19 Rule for bridge yaml dt binding maintainers? Adrian Ratiu
2020-04-20 17:59 ` Sam Ravnborg
2020-04-22 20:02   ` Rob Herring
2020-04-22 23:43     ` Joe Perches
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:57         ` Sam Ravnborg
2020-04-27  6:33           ` Joe Perches
2020-04-27 20:04             ` Andrew Morton
2020-04-27 20:26               ` Joe Perches
2020-04-27 20:32               ` Sam Ravnborg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).