[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