Re: Issues with RBTools and Subversion

2012-08-16 Thread Shaoyan Huang
The problem I meet is similar to Charlie's.

After "svn add" a binary file. svn 1.7.x may output diff like:

Index: button_checkdown.png
===
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: button_checkdown.png
===
--- button_checkdown.png(revision 4327)
+++ button_checkdown.png(working copy)

Property changes on: button_checkdown.png

The red part doesn't appear in the output of svn 1.6.x

The key is "(revision 4327)". It is a new add file. We expect the revision 
to be 0 but not 4327 in the example. It will cause FileNotFound exception.

I choose to patch scmtools/svn.py and skip the four lines if it is a binary 
file. It works.

But when I add svn:externals property to a directory, e.g.

Index: mydir
===
--- mydir   (revision 4327)
+++ mydir   (working copy)

Property changes on: mydir
___
Added: svn:externals
## -0,0 +1 ##
+https://svn.example.com/sandbox/review 123

It causes ReviewBoard to treat mydir as a file and raise FileNotFound again.

I am searching for a workaround now. Is there a fix or a workaround for 
this issue?

Shaoyan Huang

On Friday, December 16, 2011 7:47:54 AM UTC+8, Charlie Hsu wrote:
>
> svn 1.7's diff returns some extra entries for added binary files (the
> prop-add).
>
> We've been getting around this by parsing the diff, keeping track of
> any files marked as a binary type, and deleting any subsequent "Index:
> FILE" entries where FILE is one of those binary files. So for example,
> changing your diff to just the entry below should make it work...
>
> Index: run/assets/x
> ===
> Cannot display: file marked as a binary type.
> svn:mime-type = application/octet-stream
>
>
> Charlie
>
> On Nov 18, 12:48 pm, Jeff Ward  wrote:
> > Hey All,
> >
> > I'm having some problems with Subversion 1.7 and RBTools.  It looks
> > like Subversion 1.7 (at least SilkSvn) broke using Windows GNU Diff,
> > using --diff-cmd as all attempts to get the diff error out with:
> > ===
> > svn: E200012: 'diff' returned 2
> > svn: E175002: Error reading spooled REPORT request response
> >
> > This is probably a bug in subversion 1.7, but I can't get around it
> > (unless someone knows a good way to do this?)
> >
> > So I wrote a script to take care of some of this by manually
> > generating the diff from svn and handing that to RBTools directly.
> > Now however, I'm getting a different issue.  When we added a new
> > binary file, SVN's diff says:
> > Index: run/assets/x
> > ===
> > Cannot display: file marked as a binary type.
> > svn:mime-type = application/octet-stream
> > Index: run/assets/x
> > ===
> > --- run/assets/x(revision 184)
> > +++ run/assets/x(revision 185)
> >
> > Apparently when this gets sent to Review board, it makes it unhappy
> > and reports this:
> >
> > >>> Got API Error 207 (HTTP code 400): The file was not found in the 
> repository
> > >>> Error data: {u'stat': u'fail', u'file': u'/run/assets/x', u'err': 
> {u'msg': u'The file was not found in the repository', u'code': 207}, 
> u'revision': u'184'}
> >
> > Is there a way around this?  Should Review board understand that
> > revision --- for revision 184 means it *shouldn't* exist?
> >
> > --
> > Jeff
>
>

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Re: Issues with RBTools and Subversion

2011-12-15 Thread Charlie Hsu
svn 1.7's diff returns some extra entries for added binary files (the
prop-add).

We've been getting around this by parsing the diff, keeping track of
any files marked as a binary type, and deleting any subsequent "Index:
FILE" entries where FILE is one of those binary files. So for example,
changing your diff to just the entry below should make it work...

Index: run/assets/x
===
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream


Charlie

On Nov 18, 12:48 pm, Jeff Ward  wrote:
> Hey All,
>
> I'm having some problems with Subversion 1.7 and RBTools.  It looks
> like Subversion 1.7 (at least SilkSvn) broke using Windows GNU Diff,
> using --diff-cmd as all attempts to get the diff error out with:
> ===
> svn: E200012: 'diff' returned 2
> svn: E175002: Error reading spooled REPORT request response
>
> This is probably a bug in subversion 1.7, but I can't get around it
> (unless someone knows a good way to do this?)
>
> So I wrote a script to take care of some of this by manually
> generating the diff from svn and handing that to RBTools directly.
> Now however, I'm getting a different issue.  When we added a new
> binary file, SVN's diff says:
> Index: run/assets/x
> ===
> Cannot display: file marked as a binary type.
> svn:mime-type = application/octet-stream
> Index: run/assets/x
> ===
> --- run/assets/x    (revision 184)
> +++ run/assets/x    (revision 185)
>
> Apparently when this gets sent to Review board, it makes it unhappy
> and reports this:
>
> >>> Got API Error 207 (HTTP code 400): The file was not found in the 
> >>> repository
> >>> Error data: {u'stat': u'fail', u'file': u'/run/assets/x', u'err': 
> >>> {u'msg': u'The file was not found in the repository', u'code': 207}, 
> >>> u'revision': u'184'}
>
> Is there a way around this?  Should Review board understand that
> revision --- for revision 184 means it *shouldn't* exist?
>
> --
> Jeff

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en


Issues with RBTools and Subversion

2011-11-18 Thread Jeff Ward
Hey All,

I'm having some problems with Subversion 1.7 and RBTools.  It looks
like Subversion 1.7 (at least SilkSvn) broke using Windows GNU Diff,
using --diff-cmd as all attempts to get the diff error out with:
===
svn: E200012: 'diff' returned 2
svn: E175002: Error reading spooled REPORT request response

This is probably a bug in subversion 1.7, but I can't get around it
(unless someone knows a good way to do this?)

So I wrote a script to take care of some of this by manually
generating the diff from svn and handing that to RBTools directly.
Now however, I'm getting a different issue.  When we added a new
binary file, SVN's diff says:
Index: run/assets/x
===
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: run/assets/x
===
--- run/assets/x(revision 184)
+++ run/assets/x(revision 185)

Apparently when this gets sent to Review board, it makes it unhappy
and reports this:
>>> Got API Error 207 (HTTP code 400): The file was not found in the repository
>>> Error data: {u'stat': u'fail', u'file': u'/run/assets/x', u'err': {u'msg': 
>>> u'The file was not found in the repository', u'code': 207}, u'revision': 
>>> u'184'}

Is there a way around this?  Should Review board understand that
revision --- for revision 184 means it *shouldn't* exist?

--
Jeff

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~--~~~~--~~--~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en