devtools: fix printing subject of checked patch

Message ID 20181001203813.1798-1-thomas@monjalon.net (mailing list archive)
State Accepted, archived
Headers
Series devtools: fix printing subject of checked patch |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Thomas Monjalon Oct. 1, 2018, 8:38 p.m. UTC
  If checkpatches.sh is not run with verbose option (-v),
the patch subject is printed as headline of errors only
if there is an error reported by checkpatch.pl, not with other checks.
The headline is moved to a function which is called after each check
if there is an error and if it has not already be printed.

One more addition, in verbose mode, checkpatch.pl is now announced
as done for other checks.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 devtools/checkpatches.sh | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)
  

Comments

Neil Horman Oct. 1, 2018, 8:48 p.m. UTC | #1
On Mon, Oct 01, 2018 at 10:38:13PM +0200, Thomas Monjalon wrote:
> If checkpatches.sh is not run with verbose option (-v),
> the patch subject is printed as headline of errors only
> if there is an error reported by checkpatch.pl, not with other checks.
> The headline is moved to a function which is called after each check
> if there is an error and if it has not already be printed.
> 
> One more addition, in verbose mode, checkpatch.pl is now announced
> as done for other checks.
> 
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Neil Horman <nhorman@tuxdriver.com>

> ---
>  devtools/checkpatches.sh | 13 +++++++++++--
>  1 file changed, 11 insertions(+), 2 deletions(-)
> 
> diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh
> index ba795ad1d..33b48068b 100755
> --- a/devtools/checkpatches.sh
> +++ b/devtools/checkpatches.sh
> @@ -146,14 +146,20 @@ if [ ! -f "$DPDK_CHECKPATCH_PATH" ] || [ ! -x "$DPDK_CHECKPATCH_PATH" ] ; then
>  	exit 1
>  fi
>  
> +print_headline() { # <title>
> +	printf '\n### %s\n\n' "$1"
> +	headline_printed=true
> +}
> +
>  total=0
>  status=0
>  
>  check () { # <patch> <commit> <title>
>  	local ret=0
> +	headline_printed=false
>  
>  	total=$(($total + 1))
> -	! $verbose || printf '\n### %s\n\n' "$3"
> +	! $verbose || print_headline "$3"
>  	if [ -n "$1" ] ; then
>  		tmpinput=$1
>  	elif [ -n "$2" ] ; then
> @@ -165,9 +171,10 @@ check () { # <patch> <commit> <title>
>  		cat > "$tmpinput"
>  	fi
>  
> +	! $verbose || printf 'Running checkpatch.pl:\n'
>  	report=$($DPDK_CHECKPATCH_PATH $options "$tmpinput" 2>/dev/null)
>  	if [ $? -ne 0 ] ; then
> -		$verbose || printf '\n### %s\n\n' "$3"
> +		$headline_printed || print_headline "$3"
>  		printf '%s\n' "$report" | sed -n '1,/^total:.*lines checked$/p'
>  		ret=1
>  	fi
> @@ -175,6 +182,7 @@ check () { # <patch> <commit> <title>
>  	! $verbose || printf '\nChecking API additions/removals:\n'
>  	report=$($VALIDATE_NEW_API "$tmpinput")
>  	if [ $? -ne 0 ] ; then
> +		$headline_printed || print_headline "$3"
>  		printf '%s\n' "$report"
>  		ret=1
>  	fi
> @@ -182,6 +190,7 @@ check () { # <patch> <commit> <title>
>  	! $verbose || printf '\nChecking forbidden tokens additions:\n'
>  	report=$(check_forbidden_additions <"$tmpinput")
>  	if [ $? -ne 0 ] ; then
> +		$headline_printed || print_headline "$3"
>  		printf '%s\n' "$report"
>  		ret=1
>  	fi
> -- 
> 2.19.0
> 
>
  
Thomas Monjalon Oct. 1, 2018, 9:47 p.m. UTC | #2
01/10/2018 22:48, Neil Horman:
> On Mon, Oct 01, 2018 at 10:38:13PM +0200, Thomas Monjalon wrote:
> > If checkpatches.sh is not run with verbose option (-v),
> > the patch subject is printed as headline of errors only
> > if there is an error reported by checkpatch.pl, not with other checks.
> > The headline is moved to a function which is called after each check
> > if there is an error and if it has not already be printed.
> > 
> > One more addition, in verbose mode, checkpatch.pl is now announced
> > as done for other checks.
> > 
> > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> Acked-by: Neil Horman <nhorman@tuxdriver.com>

Applied
  

Patch

diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh
index ba795ad1d..33b48068b 100755
--- a/devtools/checkpatches.sh
+++ b/devtools/checkpatches.sh
@@ -146,14 +146,20 @@  if [ ! -f "$DPDK_CHECKPATCH_PATH" ] || [ ! -x "$DPDK_CHECKPATCH_PATH" ] ; then
 	exit 1
 fi
 
+print_headline() { # <title>
+	printf '\n### %s\n\n' "$1"
+	headline_printed=true
+}
+
 total=0
 status=0
 
 check () { # <patch> <commit> <title>
 	local ret=0
+	headline_printed=false
 
 	total=$(($total + 1))
-	! $verbose || printf '\n### %s\n\n' "$3"
+	! $verbose || print_headline "$3"
 	if [ -n "$1" ] ; then
 		tmpinput=$1
 	elif [ -n "$2" ] ; then
@@ -165,9 +171,10 @@  check () { # <patch> <commit> <title>
 		cat > "$tmpinput"
 	fi
 
+	! $verbose || printf 'Running checkpatch.pl:\n'
 	report=$($DPDK_CHECKPATCH_PATH $options "$tmpinput" 2>/dev/null)
 	if [ $? -ne 0 ] ; then
-		$verbose || printf '\n### %s\n\n' "$3"
+		$headline_printed || print_headline "$3"
 		printf '%s\n' "$report" | sed -n '1,/^total:.*lines checked$/p'
 		ret=1
 	fi
@@ -175,6 +182,7 @@  check () { # <patch> <commit> <title>
 	! $verbose || printf '\nChecking API additions/removals:\n'
 	report=$($VALIDATE_NEW_API "$tmpinput")
 	if [ $? -ne 0 ] ; then
+		$headline_printed || print_headline "$3"
 		printf '%s\n' "$report"
 		ret=1
 	fi
@@ -182,6 +190,7 @@  check () { # <patch> <commit> <title>
 	! $verbose || printf '\nChecking forbidden tokens additions:\n'
 	report=$(check_forbidden_additions <"$tmpinput")
 	if [ $? -ne 0 ] ; then
+		$headline_printed || print_headline "$3"
 		printf '%s\n' "$report"
 		ret=1
 	fi