From 8070d8fecb4ec263ce875d34e8093b973f250170 Mon Sep 17 00:00:00 2001 From: Kevin Traynor Date: Mon, 3 Feb 2020 15:59:55 +0000 Subject: [PATCH] devtools: add fixes flag to commit listing During backporting, if the fixes or stable tag are missing, it usually requires some investigation by stable maintainer as to why. The presence of a fixes tag may be known from whether the originating release of the issue is printed at the end of the line but with variable line lengths and nested partial fixes it doesn't catch the eye. When there are a large amount of commits, adding an aligned column indicating the presence of a fixes tag beside the stable one makes it easier to quickly see the patches requiring further investigation. e.g. 20.02 8f33cbcfa S F net/i40e/base: fix buffer address (16.04) 20.02 4b3da9415 S F net/i40e/base: fix error message (1.7.0) 20.02 1da546c39 - F net/i40e/base: fix missing link modes (17.08) 20.02 79bfe7808 S F net/i40e/base: fix Tx descriptors number (1.7.0) 20.02 50126939c - F net/i40e/base: fix retrying logic (18.02) 20.02 dcd05da0a S F app/testpmd: fix GENEVE flow item (18.02) 20.02 b0b9fdad2 S - net/bnx2x: support secondary process (N/A) 20.02 f8279f47d S F net/netvsc: fix crash in secondary process (18.08) Signed-off-by: Kevin Traynor --- devtools/git-log-fixes.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh index e37ee22600..6d468d6731 100755 --- a/devtools/git-log-fixes.sh +++ b/devtools/git-log-fixes.sh @@ -94,11 +94,23 @@ stable_tag () # fi } +# print a marker for fixes tag presence +fixes_tag () # +{ + if git log --format='%b' -1 $1 | grep -qi '^Fixes: *' ; then + echo 'F' + else + echo '-' + fi +} + git log --oneline --reverse $range | while read id headline ; do origins=$(origin_filter $id) stable=$(stable_tag $id) - [ "$stable" = "S" ] || [ -n "$origins" ] || echo "$headline" | grep -q fix || continue + fixes=$(fixes_tag $id) + [ "$stable" = "S" ] || [ "$fixes" = "F" ] || [ -n "$origins" ] || \ + echo "$headline" | grep -q fix || continue version=$(commit_version $id) if [ -n "$origins" ] ; then origver="$(origin_version $origins)" @@ -108,5 +120,5 @@ while read id headline ; do else origver='N/A' fi - printf '%s %7s %s %s (%s)\n' $version $id $stable "$headline" "$origver" + printf '%s %7s %s %s %s (%s)\n' $version $id $stable $fixes "$headline" "$origver" done -- 2.20.1