[v1,1/2] devtools: fix version pattern for fix search

Message ID 20210616040324.311461-1-xuemingl@nvidia.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [v1,1/2] devtools: fix version pattern for fix search |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-abi-testing warning Testing issues
ci/iol-testing success Testing PASS
ci/iol-mellanox-Functional fail Functional Testing issues
ci/iol-intel-Performance success Performance Testing PASS

Commit Message

Xueming Li June 16, 2021, 4:03 a.m. UTC
  When scanning fixes from current(HEAD) branch, local tags were included
and reported as version. For example:
  $ git tag --contains <commit_id> --merged
  20.11_backport_202010506   // user tag
  v20.11
  v20.11.1

This patch matches DPDK officail version pattern in search, selects
the most early tag. Official tag pattern: "v<major>.<minor>"

Fixes: 752d8e097ec1 ("scripts: show fixes with release version of bug")
Cc: Thomas Monjalon <thomas@monjalon.net>
Cc: stable@dpdk.org

Signed-off-by: Xueming Li <xuemingl@nvidia.com>
Reviewed-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 devtools/git-log-fixes.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
  

Patch

diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh
index 210c8dcf25..5fc57da913 100755
--- a/devtools/git-log-fixes.sh
+++ b/devtools/git-log-fixes.sh
@@ -38,12 +38,13 @@  range="$*"
 # get major release version of a commit
 commit_version () # <hash>
 {
+	local VER="v*.*"
 	# use current branch as history reference
 	local refbranch=$(git rev-parse --abbrev-ref HEAD)
-	local tag=$( (git tag -l --contains $1 --merged $refbranch 2>&- ||
+	local tag=$( (git tag -l $VER --contains $1 --sort=creatordate --merged $refbranch 2>&- ||
 		# tag --merged option has been introduced in git 2.7.0
 		# below is a fallback in case of old git version
-		for t in $(git tag -l --contains $1) ; do
+		for t in $(git tag -l $VER --contains $1) ; do
 			git branch $refbranch --contains $t |
 			sed "s,.\+,$t,"
 		done) |