288: New files coming in via a merge operation generate an error processing the diff (SVN)

trem*****@gmai***** (Google Code) (Is this you? Claim this profile.)
April 28, 2008
Similar to issue 121, I believe.

I just did a merge from a development branch to our trunk (in SVN) and
there are several files that have been brought into the trunk with their
modification history. In the diff view these show up like:

Index: conf/foobar.xml
===================================================================
--- conf/foobar.xml       (revision 4437)
+++ conf/foobar.xml       (working copy)
@@ -1,3 +1,5 @@
[...]

Note the revision number is a revision in the *branch* I'm merging from.
That revision doesn't exist in the trunk, so the diff processor complains
and Review Board doesn't accept the diff.

If you do an svn status on that file on the trunk, it looks like this:

A  +   conf\foobar.xml

The + indicates that history is coming along with the file.

I haven't had a chance to look at the code in parse_diff_revisions() in
svn.py in detail, but it seems like in this particular case you could look
at the status of the file in question and if it is an add with history,
just ignore that revision number and treat it as a pure add. Don't know how
hard that would be though.
chipx86
#1 chipx86
  • +Component-SCMTools
david
#2 david
Fixed in SVN.  You have to use post-review, since the diffs produced with "svn diff"
don't have enough information to cope with this situation.
  • +Fixed