From magnus.ihse.bursie at oracle.com Thu May 24 12:40:58 2018 From: magnus.ihse.bursie at oracle.com (Magnus Ihse Bursie) Date: Thu, 24 May 2018 14:40:58 +0200 Subject: webrev: "hg copy" issue In-Reply-To: <6244f61c16f0473556c71a2152fcdd0e@linux.vnet.ibm.com> References: <6244f61c16f0473556c71a2152fcdd0e@linux.vnet.ibm.com> Message-ID: The fix seems reasonable. I'm not a formal reviewer (I think..?), and I'm not sure who are, but you have my blessing. (Consider this also as a ping for the formal reviewers) /Magnus On 2018-04-16 19:22, Ichiroh Takiguchi wrote: > Hello. > > It seems webrev.ksh (version: 25.16-hg+openjdk.java.net) treats "hg > copy" action > like "hg move" action. > Because of this issue, *.patch file had entry for file remove action. > I'm not sure, it's well-known issue or not. > Anyway, I created sample fix, please check it. > > Thanks, > Ichiroh Takiguchi > > =========================================== > --- webrev.ksh.orig??? 2018-04-13 15:01:18.000000000 +0900 > +++ webrev.ksh??? 2018-04-13 18:35:59.000000000 +0900 > @@ -1596,12 +1596,14 @@ > ???????? fi > ???????? done > ???? done < $FLIST.temp > +??? > $FLIST.clean.remove > ???? hg status $STATUS_REV -rn | $FILTER > $FLIST.temp > ???? while read RFILE; do > -??????? grep "$RFILE" $FLIST >/dev/null > +??????? egrep "^$RFILE\$| $RFILE\$" $FLIST >/dev/null > ???????? if [ $? -eq 1 ]; then > ???????? echo $RFILE >>$FLIST > ???????? fi > +??????? echo $RFILE >>$FLIST.clean.remove > ???? done < $FLIST.temp > ???? rm -f $FLIST.temp > ???? fi > @@ -2313,11 +2315,18 @@ > ???? oldname="" > ???? oldpath="" > ???? rename= > +??? copy= > ???? if [[ $# -eq 2 ]]; then > ???????? PP=$2??????????? # old filename > ???????? oldname=" (was $PP)" > ???????? oldpath="$PP" > ???????? rename=1 > +??????? # if the file is renamed, file name should be in $FLIST.remove > +??????? # if the file is copied, file name should not be in > $FLIST.rename > +??????? grep "^$PP$" $FLIST.remove >/dev/null > +??????? if [ $? -eq 1 ]; then > +??????????? copy=1 > +??????? fi > ???????????? PDIR=${PP%/*} > ???????????? if [[ $PDIR == $PP ]]; then > ???????????? PDIR="."?? # File at root of workspace > @@ -2495,8 +2504,10 @@ > ?????????????????????? diff -u $ofile $nfile > $WDIR/$DIR/$F.patch > ?????????????????? fi > ?????????????? else > +??????????????? if [[ -z $copy ]]; then > ?????????????????? diff -u $ofile /dev/null | sh -c "$cleanse_rmfile" \ > ?????????????????????? > $WDIR/$DIR/$F.patch > +??????????????? fi > > ?????????????????? diff -u /dev/null $nfile | sh -c "$cleanse_newfile" \ > ?????????????????????? >> $WDIR/$DIR/$F.patch > =========================================== > From jonathan.gibbons at oracle.com Thu May 24 14:53:14 2018 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Thu, 24 May 2018 07:53:14 -0700 Subject: webrev: "hg copy" issue In-Reply-To: References: <6244f61c16f0473556c71a2152fcdd0e@linux.vnet.ibm.com> Message-ID: Ichiroh, Magnus, Thanks for looking at this. The one addition I would suggest is to update the version number at the head of the file. I can take care of that and can push the change. -- Jon On 5/24/18 5:40 AM, Magnus Ihse Bursie wrote: > The fix seems reasonable. > > I'm not a formal reviewer (I think..?), and I'm not sure who are, but > you have my blessing. > > (Consider this also as a ping for the formal reviewers) > > /Magnus > > On 2018-04-16 19:22, Ichiroh Takiguchi wrote: >> Hello. >> >> It seems webrev.ksh (version: 25.16-hg+openjdk.java.net) treats "hg >> copy" action >> like "hg move" action. >> Because of this issue, *.patch file had entry for file remove action. >> I'm not sure, it's well-known issue or not. >> Anyway, I created sample fix, please check it. >> >> Thanks, >> Ichiroh Takiguchi >> >> =========================================== >> --- webrev.ksh.orig??? 2018-04-13 15:01:18.000000000 +0900 >> +++ webrev.ksh??? 2018-04-13 18:35:59.000000000 +0900 >> @@ -1596,12 +1596,14 @@ >> ???????? fi >> ???????? done >> ???? done < $FLIST.temp >> +??? > $FLIST.clean.remove >> ???? hg status $STATUS_REV -rn | $FILTER > $FLIST.temp >> ???? while read RFILE; do >> -??????? grep "$RFILE" $FLIST >/dev/null >> +??????? egrep "^$RFILE\$| $RFILE\$" $FLIST >/dev/null >> ???????? if [ $? -eq 1 ]; then >> ???????? echo $RFILE >>$FLIST >> ???????? fi >> +??????? echo $RFILE >>$FLIST.clean.remove >> ???? done < $FLIST.temp >> ???? rm -f $FLIST.temp >> ???? fi >> @@ -2313,11 +2315,18 @@ >> ???? oldname="" >> ???? oldpath="" >> ???? rename= >> +??? copy= >> ???? if [[ $# -eq 2 ]]; then >> ???????? PP=$2??????????? # old filename >> ???????? oldname=" (was $PP)" >> ???????? oldpath="$PP" >> ???????? rename=1 >> +??????? # if the file is renamed, file name should be in $FLIST.remove >> +??????? # if the file is copied, file name should not be in >> $FLIST.rename >> +??????? grep "^$PP$" $FLIST.remove >/dev/null >> +??????? if [ $? -eq 1 ]; then >> +??????????? copy=1 >> +??????? fi >> ???????????? PDIR=${PP%/*} >> ???????????? if [[ $PDIR == $PP ]]; then >> ???????????? PDIR="."?? # File at root of workspace >> @@ -2495,8 +2504,10 @@ >> ?????????????????????? diff -u $ofile $nfile > $WDIR/$DIR/$F.patch >> ?????????????????? fi >> ?????????????? else >> +??????????????? if [[ -z $copy ]]; then >> ?????????????????? diff -u $ofile /dev/null | sh -c "$cleanse_rmfile" \ >> ?????????????????????? > $WDIR/$DIR/$F.patch >> +??????????????? fi >> >> ?????????????????? diff -u /dev/null $nfile | sh -c "$cleanse_newfile" \ >> ?????????????????????? >> $WDIR/$DIR/$F.patch >> =========================================== >> >