Web lists-archives.com

Re: [PATCH] checkpatch: add check for tag Co-Developed-by




On Thu, 2017-12-07 at 11:59 +1100, Tobin C. Harding wrote:
> Recently signature tag Co-Developed-by was added to the
> kernel (Documentation/process/5.Posting.rst). checkpatch.pl doesn't know
> about it yet. All prior tags used all lowercase characters except for first
> character. Checks for this format had to be re-worked to allow for the
> new tag.
> 
> Add checkpatch checks for Co-Developed-by tag.

This patch is not extensible.

If this is to be done at all, the Co-Developed-by:
should not be a special case because a new and
different one might be added in the future.

Better to verify that a case insensitive match exists
in $signature_tags and then complain if the match is
not exact.

> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Tobin C. Harding <me@xxxxxxxx>
> ---
>  scripts/checkpatch.pl | 22 ++++++++++++++++------
>  1 file changed, 16 insertions(+), 6 deletions(-)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 040aa79e1d9d..a7d2cdcec6a6 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -468,6 +468,7 @@ our $signature_tags = qr{(?xi:
>  	Reviewed-by:|
>  	Reported-by:|
>  	Suggested-by:|
> +	Co-Developed-by:|
>  	To:|
>  	Cc:
>  )};
> @@ -2468,6 +2469,8 @@ sub process {
>  			my $space_after = $3;
>  			my $email = $4;
>  			my $ucfirst_sign_off = ucfirst(lc($sign_off));
> +			my $preferred_signature = "";
> +			my $co_dev_by_tag = 'Co-Developed-by:';
>  
>  			if ($sign_off !~ /$signature_tags/) {
>  				WARN("BAD_SIGN_OFF",
> @@ -2481,15 +2484,22 @@ sub process {
>  					    "$ucfirst_sign_off $email";
>  				}
>  			}
> -			if ($sign_off =~ /-by:$/i && $sign_off ne $ucfirst_sign_off) {
> -				if (WARN("BAD_SIGN_OFF",
> -					 "'$ucfirst_sign_off' is the preferred signature form\n" . $herecurr) &&
> -				    $fix) {
> -					$fixed[$fixlinenr] =
> -					    "$ucfirst_sign_off $email";
> +			if ($sign_off =~ /$co_dev_by_tag$/i) {
> +				if ($sign_off ne $co_dev_by_tag) {
> +					$preferred_signature = $co_dev_by_tag;
>  				}
> +			} elsif ($sign_off =~ /-by:$/i && $sign_off ne $ucfirst_sign_off) {
> +				$preferred_signature = $ucfirst_sign_off;
>  
>  			}
> +
> +			if ($preferred_signature ne "") {
> +				my $prefix = "'$preferred_signature' is the preferred signature form\n";
> +				if (WARN("BAD_SIGN_OFF", $prefix . $herecurr) && $fix) {
> +					$fixed[$fixlinenr] = "$ucfirst_sign_off $email";
> +				}
> +			}
> +
>  			if (!defined $space_after || $space_after ne " ") {
>  				if (WARN("BAD_SIGN_OFF",
>  					 "Use a single space after $ucfirst_sign_off\n" . $herecurr) &&