[dpdk-dev] [PATCH] scripts: check commits with checkpatch

Bruce Richardson bruce.richardson at intel.com
Thu Jun 2 14:33:37 CEST 2016


On Thu, Jun 02, 2016 at 11:13:15AM +0200, Thomas Monjalon wrote:
> The new option -n allows to give a number of commits to check
> from the git HEAD.
> If neither -n nor patch files are given, the commits after
> origin/master are checked.
> 

Yep, I love it, exactly what I wanted to replace my own checkpatch script wrapper!

> Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
> ---
>  scripts/checkpatches.sh | 45 ++++++++++++++++++++++++++++++++++++---------
>  1 file changed, 36 insertions(+), 9 deletions(-)
> 
> diff --git a/scripts/checkpatches.sh b/scripts/checkpatches.sh
<snip>
> @@ -74,17 +76,42 @@ if [ ! -x "$DPDK_CHECKPATCH_PATH" ] ; then
>  	exit 1
>  fi
>  
> +total=0
>  status=0
> -for p in "$@" ; do
> -	! $verbose || printf '\n### %s\n\n' "$p"
> -	report=$($DPDK_CHECKPATCH_PATH $options "$p" 2>/dev/null)
> +
> +check () { # <patch> <commit> <title>
> +	total=$(($total + 1))
> +	! $verbose || printf '\n### %s\n\n' "$3"
> +	if [ -n "$1" ] ; then
> +		report=$($DPDK_CHECKPATCH_PATH $options "$1" 2>/dev/null)
> +	elif [ -n "$2" ] ; then
> +		report=$(git format-patch --stdout -1 $commit |
> +			$DPDK_CHECKPATCH_PATH $options - 2>/dev/null)
> +	fi

Testing this out here, I find that git format-patch includes the diff stats
in the output, which then can trigger long-line warnings for the commit message.

	WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line)
	#8:
	 examples/my-new-test-app/basicfwd.c | 342 +++++++++++++++++++++++++++++++++++++

To fix this, I suggest replacing "format-patch --stdout" with "show --format=email"
since that should give the same output just without the change stats.

With this one adjustment:

Acked-by: Bruce Richardson <bruce.richardson at intel.com>



More information about the dev mailing list