#512 closed defect (fixed)
Directory traverses down in other WC
Reported by: | Peter Johansson | Owned by: | Peter Johansson |
---|---|---|---|
Priority: | critical | Milestone: | svndigest 0.9.5 |
Component: | core | Version: | 0.9.4 |
Keywords: | Cc: |
Description
This bug was found in both trunk versions and latest release 0.9.4.
After running 'make fetch' in yat directory I have a directory yat/Fetchdir which is wc of yat/svn:trunk/yat/utility
When I run svncopyrigt (and I suppose svndigest would work same way) and Directory parses through nodes in yat, it founds yat/Fetchdir and concludes it is under svn control and adds it to the tree. This is not sufficient and we should add some more checking here. Perhaps if Node and subNode belong to the same svn repo or could we be more accurate? 'svn ls yat' does not list Fetchdir.
Should this be fixed in 0.9.5 or 0.10?
I haven't seen this before so I suspect it was not a problem with wc from svn 1.6 (and earlier).
Change History (7)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
I agree the final solution is quite instrusive and belongs in trunk. But it should be possible to implement a quick fix in stable. If I understand SVNinfo correctly, we can can check that SVNinfo::url matches in daughter and mother. Essentially,
SVNinfo(mother)::url() == directory_name(SVNinfo(daughter)::url());
The problem with this solution is that one has to construct daughter Node - which could be quite expensive if that WC is large - just to delete it on the next line. A better solution would ask the WC which are the sub nodes of mother which I suppose is done in subversion.
I will start adding a couple of tests in stable.
comment:3 Changed 12 years ago by
Just to check if this was due to my wc, which has gone through an svn upgrade, I tested this on a freshly checked out wc and noticed the same dissatisfying behaviour.
I tried to create a test case using the test/repo twice checking out braches/android_branch wc of trunk'. For some reason svncopyright did not traverse into the android_branch, in other words, the test could not catch the case.
comment:4 Changed 12 years ago by
Milestone: | svndigest 0.x+ → svndigest 0.9.5 |
---|---|
Owner: | changed from Jari Häkkinen to Peter Johansson |
Status: | new → assigned |
Intend to solve this in 0.9.5 and let's open another ticked for trunk if needed.
comment:6 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
I suppose this issue requires a lot of work? The it should go into 0.10, and the README in 0.9 should explain the problem and recommend use of (future) svndigest 0.10 if they have svn 1.7 or later.