> -----Original Message----- > From: Philip Martin [mailto:philip.mar...@wandisco.com] > Sent: dinsdag 16 juli 2013 10:14 > To: Alexander Haley > Cc: Johan Corveleyn; users@subversion.apache.org; > d...@subversion.apache.org > Subject: Re: xml output changed - relative paths now appearing? > > [CC to dev] > > Alexander Haley <aha...@meditech.com> writes: > > > On Mon, Jul 15, 2013 at 5:21 PM, Philip Martin > > <philip.mar...@wandisco.com>wrote: > > > >> I could not get this to happen on Linux. Are you using the same path in > >> the checkout and status commands? Can you provide a complete recipe? > >> Something to do with drive letters, or case differences perhaps? > >> > > > > I am using WindowsXP - the svn binaries came from TortoiseSVN. I've > > attached the batch file script which can reproduce this, as well as > > transcripts from a machine with svn 1.7.x and another with 1.8.0 for > > comparison. My reported snag is the 6th line of the XML output, where > the > > two differing results are: > > > > 1.7.x path="C:\testing\bug-test"> > > 1.8.0 path="..\..\..\bug-test"> > > svnadmin create repo > svn co file://`pwd`/repo wc > svn mkdir wc/foo > AbsWC=`pwd`/wc > cd wc/foo > svn st --xml $AbsWC > > With 1.7 I get > > <target > path="/home/pm/sw/subversion/obj/wc"> > <entry > path="/home/pm/sw/subversion/obj/wc/foo"> > > while with 1.8 I get > > <target > path="/home/pm/sw/subversion/obj/wc"> > <entry > path=".">
This appears wrong to me. svn status always gave the paths in the same form as how the user passed them, in both non-xml and xml form. I would guess that a lot of scripts break down if the paths don't match the form that they expected from all previous versions. > > The entry for 'foo' can only be identified by interpreting the path > relative to the current directory, information that is not part of the > XML. That feels wrong to me. Agree. > > If I use a relative path "svn st --xml .." then 1.8 gives what looks > more useable output: > > <target > path=".."> > <entry > path="../foo"> > > The non-XML output shows the same paths, I suppose it makes more sense > but the difference between absolute and relative paths remains: > > svn st $AbsWC > A > > and > > svn st .. > A ../foo > > Which output form do we want? Perhaps we should be printing paths > relative to the target rather than the current working directory? I would guess we somehow make the current directory change the output form? I think we should revert to the old form, where the input path dictates the form in which we provide paths. Certainly for the --xml option, any other form will break scripts. Bert