4392: Cannot parse subversion 1.9.3 diff revision header.

MartinHopfeld
4374

What version are you running?

ReviewBoard 2.5.4
SlikSVN 1.9.3

What's the URL of the page containing the problem?

%REVIEWBAORD_URL%/r/new/

What steps will reproduce the problem?

  1. svnadmin create %REPO_PATH%
  2. svn mkdir --non-interactive -m "create trunk" %REPO_URL%/trunk
  3. svn mkdir --non-interactive -m "create branch" %REPO_URL%/branch
  4. svn mkdir --non-interactive -m "create branch/A" %REPO_URL%/branch/A
  5. echo empty > empty.txt
  6. svn import --non-interactive -m "import empty.txt" empty.txt %REPO_URL%/branch/A/empty.txt
  7. svn diff --non-interactive %REPO_URL%/trunk %REPO_URL%/branch > diff_to_upload.patch
  8. try to upload this diff to a new Review Request, it will fail

What is the expected output? What do you see instead?

ReviewBoard shall continue to the Create Review Request form.
Instead it shows an error message:
"Unable to parse revision header '(.../trunk) (nonexisten)'
Line undefined: undefined"

What operating system are you using? What browser?

Windows 7 64 Bit, Google Chrome 49

Please provide any additional information below.

Diff upload works correct, when using SlikSVN 1.7.x or SlikSVN 1.8.x to create the diff/patch in the same manner.

I know there is https://github.com/reviewboard/reviewboard/commit/8b9cf5a3026d9ed05eebd29130b2ac1e268dea17 which is expected to fix issues with svn "(nonexistent)" revision introduced with SlikSVN 1.9.x.

But may usecase does not create a diff from a working copy, but between two repository URLs.

Please follow the instructions above to reproduce my usecase reduced to a minimum example or look at the attached diff.

Index: A/empty.txt
===================================================================
--- A/empty.txt	(.../trunk)	(nonexistent)
+++ A/empty.txt	(.../branch)	(revision 4)
@@ -0,0 +1 @@
+empty 
#1 MartinHopfeld

This is a screenshot when trying to upload the diff in attached to the ticket to a new review request.