[U-Boot] [RFC PATCH] get_maintainer: fix perl 5.22/5.24 deprecated/incompatible "\C" use

Andre Przywara andre.przywara at arm.com
Mon Jan 4 17:12:51 CET 2016


Hi,

On 04/01/16 11:17, Heiko Schocher wrote:
> from linux commit ce8155f7a3d5:
> 
> Perl 5.22 emits a deprecated message when "\C" is used in a regex.  Perl
> 5.24 will disallow it altogether.
> 
> Fix it by using [A-Z] instead of \C.
> 
> From linux adapted to U-Boot by:
> Signed-off-by: Heiko Schocher <hs at denx.de>
> ---
> running get_maintainer.pl drops warnings with PERL > 5.22 .
> In linux this is fixed though above commit.
> 
> With the original linux patch applied to u-boot, there
> is following warning:
> 
> ^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE / at ./scripts/get_maintainer.pl line 739.
> ^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE // at ./scripts/get_maintainer.pl line 735.
> 
> The change in MAINTAINERS fixes this, but I get differences
> when running the python script:
> import os
> import subprocess
> 
> root_dir = '.'
> 
> for directory, subdirectories, files in os.walk(root_dir):
>     for file in files:
>         tmp=os.path.join(directory, file)
>         print(tmp)
>         ret = subprocess.call(["scripts/get_maintainer.pl", "-f", tmp])
> 
> and comparing the output from it, based on the original
> u-boot code and the code with this patch ...
> 
> I have no PERL experience, so made this patch as RFC, maybe
> someone with better PERL skills can fix it correct.
> 
> 
>  MAINTAINERS               |  4 ++--
>  scripts/get_maintainer.pl | 22 +++++++++++-----------
>  2 files changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5b3c93a..a197cd0 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -417,5 +417,5 @@ L:	u-boot at lists.denx.de
>  Q:	http://patchwork.ozlabs.org/project/uboot/list/
>  S:	Maintained
>  T:	git git://git.denx.de/u-boot.git
> -F:	*
> -F:	*/
> +F:	.*
> +F:	.*/
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index 4707dfd..308d7f0 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -298,7 +298,7 @@ sub read_maintainers {
>      while (<$maint>) {
>  	my $line = $_;
>  
> -	if ($line =~ m/^(\C):\s*(.*)/) {
> +	if ($line =~ m/^(\[A-Z]):\s*(.*)/) {

The backslash shouldn't be in here anymore, right?

Other than that, for the get_maintainer.pl part at least (since I was
about sending out almost the same patch):

Reviewed-by: Andre Przywara <andre.przywara at arm.com>

Cheers,
Andre.

>  	    my $type = $1;
>  	    my $value = $2;
>  
> @@ -533,7 +533,7 @@ sub range_is_maintained {
>  
>      for (my $i = $start; $i < $end; $i++) {
>  	my $line = $typevalue[$i];
> -	if ($line =~ m/^(\C):\s*(.*)/) {
> +	if ($line =~ m/^([A-Z]):\s*(.*)/) {
>  	    my $type = $1;
>  	    my $value = $2;
>  	    if ($type eq 'S') {
> @@ -551,7 +551,7 @@ sub range_has_maintainer {
>  
>      for (my $i = $start; $i < $end; $i++) {
>  	my $line = $typevalue[$i];
> -	if ($line =~ m/^(\C):\s*(.*)/) {
> +	if ($line =~ m/^([A-Z]):\s*(.*)/) {
>  	    my $type = $1;
>  	    my $value = $2;
>  	    if ($type eq 'M') {
> @@ -600,7 +600,7 @@ sub get_maintainers {
>  
>  	    for ($i = $start; $i < $end; $i++) {
>  		my $line = $typevalue[$i];
> -		if ($line =~ m/^(\C):\s*(.*)/) {
> +		if ($line =~ m/^([A-Z]):\s*(.*)/) {
>  		    my $type = $1;
>  		    my $value = $2;
>  		    if ($type eq 'X') {
> @@ -615,7 +615,7 @@ sub get_maintainers {
>  	    if (!$exclude) {
>  		for ($i = $start; $i < $end; $i++) {
>  		    my $line = $typevalue[$i];
> -		    if ($line =~ m/^(\C):\s*(.*)/) {
> +		    if ($line =~ m/^([A-Z]):\s*(.*)/) {
>  			my $type = $1;
>  			my $value = $2;
>  			if ($type eq 'F') {
> @@ -917,7 +917,7 @@ sub find_first_section {
>  
>      while ($index < @typevalue) {
>  	my $tv = $typevalue[$index];
> -	if (($tv =~ m/^(\C):\s*(.*)/)) {
> +	if (($tv =~ m/^([A-Z]):\s*(.*)/)) {
>  	    last;
>  	}
>  	$index++;
> @@ -931,7 +931,7 @@ sub find_starting_index {
>  
>      while ($index > 0) {
>  	my $tv = $typevalue[$index];
> -	if (!($tv =~ m/^(\C):\s*(.*)/)) {
> +	if (!($tv =~ m/^([A-Z]):\s*(.*)/)) {
>  	    last;
>  	}
>  	$index--;
> @@ -945,7 +945,7 @@ sub find_ending_index {
>  
>      while ($index < @typevalue) {
>  	my $tv = $typevalue[$index];
> -	if (!($tv =~ m/^(\C):\s*(.*)/)) {
> +	if (!($tv =~ m/^([A-Z]):\s*(.*)/)) {
>  	    last;
>  	}
>  	$index++;
> @@ -971,7 +971,7 @@ sub get_maintainer_role {
>  
>      for ($i = $start + 1; $i < $end; $i++) {
>  	my $tv = $typevalue[$i];
> -	if ($tv =~ m/^(\C):\s*(.*)/) {
> +	if ($tv =~ m/^([A-Z]):\s*(.*)/) {
>  	    my $ptype = $1;
>  	    my $pvalue = $2;
>  	    if ($ptype eq "S") {
> @@ -1030,7 +1030,7 @@ sub add_categories {
>  
>      for ($i = $start + 1; $i < $end; $i++) {
>  	my $tv = $typevalue[$i];
> -	if ($tv =~ m/^(\C):\s*(.*)/) {
> +	if ($tv =~ m/^([A-Z]):\s*(.*)/) {
>  	    my $ptype = $1;
>  	    my $pvalue = $2;
>  	    if ($ptype eq "L") {
> @@ -1072,7 +1072,7 @@ sub add_categories {
>  		if ($name eq "") {
>  		    if ($i > 0) {
>  			my $tv = $typevalue[$i - 1];
> -			if ($tv =~ m/^(\C):\s*(.*)/) {
> +			if ($tv =~ m/^([A-Z]):\s*(.*)/) {
>  			    if ($1 eq "P") {
>  				$name = $2;
>  				$pvalue = format_email($name, $address, $email_usename);
> 


More information about the U-Boot mailing list