linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] checkpatch: scripts/spdxcheck.py now requires python3
@ 2021-05-05 21:17 Guenter Roeck
  2021-05-05 21:54 ` Joe Perches
  0 siblings, 1 reply; 2+ messages in thread
From: Guenter Roeck @ 2021-05-05 21:17 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches
  Cc: linux-kernel, Dwaipayan Ray, Lukas Bulwahn, Guenter Roeck,
	Bert Vermeulen

Since commit d0259c42abff ("spdxcheck.py: Use Python 3"), spdxcheck.py
explicitly expects to run as python3 script. If "python" still points to
python v2.7 and the script is executed with "python scripts/spdxcheck.py",
the following error may be seen even if git-python is installed for
python3.

Traceback (most recent call last):
  File "scripts/spdxcheck.py", line 10, in <module>
    import git
ImportError: No module named git

To fix the problem, check for the existence of python3, check if
the script is executable and not just for its existence, and execute
it directly.

Cc: Bert Vermeulen <bert@biot.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
 scripts/checkpatch.pl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index ccb412a74725..8a1b782dd7e7 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1084,10 +1084,10 @@ sub is_maintained_obsolete {
 sub is_SPDX_License_valid {
 	my ($license) = @_;
 
-	return 1 if (!$tree || which("python") eq "" || !(-e "$root/scripts/spdxcheck.py") || !(-e "$gitroot"));
+	return 1 if (!$tree || which("python3") eq "" || !(-x "$root/scripts/spdxcheck.py") || !(-e "$gitroot"));
 
 	my $root_path = abs_path($root);
-	my $status = `cd "$root_path"; echo "$license" | python scripts/spdxcheck.py -`;
+	my $status = `cd "$root_path"; echo "$license" | scripts/spdxcheck.py -`;
 	return 0 if ($status ne "");
 	return 1;
 }
-- 
2.25.1


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

* Re: [PATCH] checkpatch: scripts/spdxcheck.py now requires python3
  2021-05-05 21:17 [PATCH] checkpatch: scripts/spdxcheck.py now requires python3 Guenter Roeck
@ 2021-05-05 21:54 ` Joe Perches
  0 siblings, 0 replies; 2+ messages in thread
From: Joe Perches @ 2021-05-05 21:54 UTC (permalink / raw)
  To: Guenter Roeck, Andy Whitcroft, Andrew Morton
  Cc: linux-kernel, Dwaipayan Ray, Lukas Bulwahn, Bert Vermeulen

On Wed, 2021-05-05 at 14:17 -0700, Guenter Roeck wrote:
> Since commit d0259c42abff ("spdxcheck.py: Use Python 3"), spdxcheck.py
> explicitly expects to run as python3 script. If "python" still points to
> python v2.7 and the script is executed with "python scripts/spdxcheck.py",
> the following error may be seen even if git-python is installed for
> python3.
> 
> Traceback (most recent call last):
>   File "scripts/spdxcheck.py", line 10, in <module>
>     import git
> ImportError: No module named git
> 
> To fix the problem, check for the existence of python3, check if
> the script is executable and not just for its existence, and execute
> it directly.
> 
> Cc: Bert Vermeulen <bert@biot.com>
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>

Seems sensible, thanks.

> ---
>  scripts/checkpatch.pl | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index ccb412a74725..8a1b782dd7e7 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -1084,10 +1084,10 @@ sub is_maintained_obsolete {
>  sub is_SPDX_License_valid {
>  	my ($license) = @_;
>  
> 
> -	return 1 if (!$tree || which("python") eq "" || !(-e "$root/scripts/spdxcheck.py") || !(-e "$gitroot"));
> +	return 1 if (!$tree || which("python3") eq "" || !(-x "$root/scripts/spdxcheck.py") || !(-e "$gitroot"));
>  
> 
>  	my $root_path = abs_path($root);
> -	my $status = `cd "$root_path"; echo "$license" | python scripts/spdxcheck.py -`;
> +	my $status = `cd "$root_path"; echo "$license" | scripts/spdxcheck.py -`;
>  	return 0 if ($status ne "");
>  	return 1;
>  }



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

end of thread, other threads:[~2021-05-05 21:55 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-05 21:17 [PATCH] checkpatch: scripts/spdxcheck.py now requires python3 Guenter Roeck
2021-05-05 21:54 ` Joe Perches

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