On 1/29/2019 8:41 PM, Thomas Monjalon wrote:
> 29/01/2019 16:30, Ferruh Yigit:
>> Fixes line commit id length defined as 12 in fixline alias:
>> fixline = log -1 --abbrev=12 --format='Fixes: %h (\"%s\")%nCc: %ae'
>>
>> Check if the Fixes line commit id length matches the defined value.
> 
> This check was missing on purpose, in order to not be too strict.
> I think it's OK if the length of the SHA1 is not always the same.

That is OK, if we don't want to be strict on this, I will update patch as 
rejected.

> 
>> --- a/devtools/check-git-log.sh
>> +++ b/devtools/check-git-log.sh
>> @@ -177,6 +177,11 @@ bad=$(for fixtag in $fixtags ; do
>>  done | sed 's,^,\t,')
>>  [ -z "$bad" ] || printf "Wrong 'Fixes' reference:\n$bad\n"
>>  
>> +bad=$(for fixtag in $fixtags ; do
>> +    echo $fixtag | awk '{print $2}' | awk 'length != 12 {print}'
>> +done)
>> +[ -z "$bad" ] || printf "Wrong 'Fixes' syntax:\n$bad\n"
>> +
>>  # check Cc: sta...@dpdk.org for fixes
>>  bad=$(for fix in $stablefixes ; do
>>      git log --format='%b' -1 $fix | grep -qi '^Cc: *sta...@dpdk.org' ||
> 
> If you really want to be that strict, it can be done simpler:
> 
>  bad=$(for fixtag in $fixtags ; do
>         hash=$(echo "$fixtag" | sed 's,^Fixes: \([0-9a-f]*\).*,\1,')
>         if git branch --contains $hash 2>&- | grep -q '^\*' ; then
> -               good="Fixes: $hash "$(git log --format='("%s")' -1 $hash 2>&-)
> +               good=$(git log --abbrev=12 --format='Fixes: %h ("%s")' -1 
> $hash 2>&-)
>         else
>                 good="reference not in current branch"
>         fi
> 
> 
> 

Reply via email to