On Sunday 03 April 2005 16:51, Max Bowsher wrote:
> Stephen Davis wrote:
> > For my CodeWarrior plugin
> > (http://www.soundgeek.org/software/SubversionPlugin.html), I use
> > svn_client_cat() to feed the entire file contents into the
> > CodeWarrior visual diff engine. Unfortunately, for diffs against
> > BASE,
> > svn_client_cat() always hits the repository which obvious makes local
> > diffs much slower than they need to be (and makes offline editing a
> > problem).
> >
> > I imagine this will be a fairly common-place way to do diffs in GUI
> > plugins so this seems like a bug/optimization target. I wound my way
> > through the client diff and revert code but it was definitely
> > non-trivial to find the text-base file for my purpose. Am I
> > overlooking some obvious (and straight-forward) client lib
> > functionality for finding the text-base file so I can feed its
> > contents into the visual diff engine?
>
> Known bug, just no one seems to be particularly motivated to fix it.
> Perhaps you feel like writing a patch?
You know, every time I go to hit this particular issue, I get wrapped
around the axle because export and cat aren't all that different. In
particular, I hate that all the logic for translating keywords and line
endings will basically have to be repeated. I actually have a patch with
just the logic copied over from the export code... but it's just wrong
not to share the code.
Would you object to having an 'svn_client__cat_internal()' that would copy
the contents to a stream? Then we can use the same function to export
the individual files.
-John
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Apr 4 01:15:22 2005