[dpdk-stable] [PATCH v2 1/2] devtools: fix version pattern for fix search
Xueming(Steven) Li
xuemingl at nvidia.com
Mon Aug 9 05:32:51 CEST 2021
Hi,
> -----Original Message-----
> From: Thomas Monjalon <thomas at monjalon.net>
> Sent: Sunday, August 8, 2021 7:15 PM
> To: Xueming(Steven) Li <xuemingl at nvidia.com>
> Cc: dev at dpdk.org; stable at dpdk.org; Christian Ehrhardt <christian.ehrhardt at canonical.com>; david.marchand at redhat.com; Luca
> Boccassi <bluca at debian.org>
> Subject: Re: [dpdk-stable] [PATCH v2 1/2] devtools: fix version pattern for fix search
>
> 30/06/2021 08:34, Xueming Li:
> > 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 at monjalon.net>
> > Cc: stable at dpdk.org
> >
> > Signed-off-by: Xueming Li <xuemingl at nvidia.com>
> > Reviewed-by: Christian Ehrhardt <christian.ehrhardt at canonical.com>
> > ---
> > devtools/git-log-fixes.sh | 5 +++--
> > 1 file changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh
> > index 210c8dcf25..153ba5b438 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*.*"
>
> Which tag is it supposed to match? What would not be matched?
> What about something like v19.11.8 ?
> What about the above example 20.11_backport_202010506?
It matches any tag version like started with "v" and a "." in the middle.
So v19.11.8 matches as at least one "." in the middle.
20.11_backport_202010506 can't match since it not started with "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>&- ||
>
> Why adding "--sort=creatordate" ?
> It is not mentioned in the commit log.
Mentioned a little bit: "select the most early tag"
By default git output tag in alpha order, this makes v19.11 appears earlier than v2.x, that's wrong.
>
> > # 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) |
>
>
>
>
>
More information about the stable
mailing list