> -----Original Message-----
> From: dev <dev-boun...@dpdk.org> On Behalf Of Xueming(Steven) Li
> Sent: Tuesday, June 15, 2021 6:56 PM
> To: Christian Ehrhardt <christian.ehrha...@canonical.com>
> Cc: dev <dev@dpdk.org>; Luca Boccassi <bl...@debian.org>; NBU-Contact-Thomas 
> Monjalon <tho...@monjalon.net>; dpdk stable
> <sta...@dpdk.org>; Yuanhan Liu <yuanhan....@linux.intel.com>
> Subject: Re: [dpdk-dev] [PATCH 2/2] devtools: auto detect branch to search 
> fix patches
> 
> 
> 
> > -----Original Message-----
> > From: Christian Ehrhardt <christian.ehrha...@canonical.com>
> > Sent: Monday, June 14, 2021 10:16 PM
> > To: Xueming(Steven) Li <xuemi...@nvidia.com>
> > Cc: dev <dev@dpdk.org>; Luca Boccassi <bl...@debian.org>;
> > NBU-Contact-Thomas Monjalon <tho...@monjalon.net>; dpdk stable
> > <sta...@dpdk.org>; Yuanhan Liu <yuanhan....@linux.intel.com>
> > Subject: Re: [PATCH 2/2] devtools: auto detect branch to search fix
> > patches
> >
> > On Sat, Jun 12, 2021 at 3:57 PM Xueming Li <xuemi...@nvidia.com> wrote:
> > >
> > > Current fix scan scripts scanned specified range in current(HEAD)
> > > branch. When users run it in a earlier branch, few patches were
> >
> > ^^ typo missing "an" (if you care)
> >
> > > scanned.
> > >
> > > This patch auto etects branch to scan from range.
> >
> > ^^ typo missing "d" (if you care)
> 
> Thanks :)
> 
> >
> > >
> > > Fixes: 752d8e097ec1 ("scripts: show fixes with release version of
> > > bug")
> > > Cc: Thomas Monjalon <tho...@monjalon.net>
> > > Cc: sta...@dpdk.org
> > > Signed-off-by: Xueming Li <xuemi...@nvidia.com>
> > > ---
> > >  devtools/git-log-fixes.sh | 4 +++-
> > >  1 file changed, 3 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh
> > > index 5fc57da913..9a8a9d6739 100755
> > > --- a/devtools/git-log-fixes.sh
> > > +++ b/devtools/git-log-fixes.sh
> > > @@ -34,13 +34,15 @@ done
> > >  shift $(($OPTIND - 1))
> > >  [ $# -ge 1 ] || usage_error 'range argument required'
> > >  range="$*"
> > > +range_last=$(git log --oneline v21.05-rc3..v21.05 |head -n1|cut -d' '
> > > +-f1)
> >
> > Instead of these values that would need to be dynamic to be generally 
> > reliable right?
> > Everyone might need something different.
> >
> > I thought about the same and wondered if this script should get a new 
> > optional argument.
> > If passed it will use this new argument instead of $refbranch
> >
> > That would allow any user today to be able to continue to use it as-is
> > and anyone else can for reliable behavior define the branch to look in.
> 
> Looks good. There are two scenarios for this script:
>       Called from check-git-log.sh: if version not found, default to VERSION 
> file
>       Standalone running with range: I don't think a default is required.
> So the default version only valid when "branch" argument is "HEAD"

It might not be a good idea to "guess" the branch from commit range.
V2 adds branch parameter, default to HEAD, then verifies branch contains the 
commit range.

Now in any branch, below command works correctly:
        devtools/git-log-fixes.sh v21.05-rc1..v21.05 origin/main
If current branch is older, like 20.11, below command will abort with error:
        devtools/git-log-fixes.sh v21.05-rc1..v21.05

> 
> >
> > > +# use first branch
> > > +refbranch=$(git branch --contains $range_last -r --sort=-authordate
> > > +|head -n1)
> > >
> > >  # 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 $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
> > > --
> > > 2.25.1
> > >
> >
> >
> > --
> > Christian Ehrhardt
> > Staff Engineer, Ubuntu Server
> > Canonical Ltd

Reply via email to