[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: JavaHL: Bindings for svn_client_diff_summarize()

From: Daniel Rall <dlr_at_collab.net>
Date: 2006-12-08 00:38:56 CET

On Thu, 07 Dec 2006, Mark Phippard wrote:

> On 12/7/06, Mark Phippard <markphip@gmail.com> wrote:
> >
> >On 12/6/06, Daniel Rall <dlr@collab.net> wrote:
> >
> >> On Wed, 22 Nov 2006, Mark Phippard wrote:
> >>
> >> > Daniel Rall wrote:
> >> > >On Tue, 21 Nov 2006, Mark Phippard wrote:
> >> ...
> >> > >>Since you are doing some stuff with JavaHL lately, one to add to
> >> your
> >> > >>to-do list would be some kind of support for the svn diff
> >> --summarize
> >> > >>option. I think this is something we could use in Subclipse to
> >> improve
> >> > >>performance when comparing two tags of a large project.
> >> ...
> >> > ... it would return an array of the items that have been modified,
> >> > or maybe it would send notifications that would have to be trapped.
> >> > Either way, it would be something really different from what diff
> >> > does now.
> >> >
> >> > Ideally, I'd probably like the API to return an array of some sort of
> >> Java
> >> > objects that describe the item and the type of change etc.
> >>
> >> Mark, I've written the code for the diff summarize JavaHL bindings:
> >>
> >> http://svn.collab.net/repos/svn/branches/javahl-diff-summarize
> >>
> >> When you have a moment, I'd appreciate review of at least the Java
> >> APIs. The JUnit test case in BasicTests.java shows how to use it, and
> >> return all diff summaries in a list.
> >>
> >> Unfortunately, there's a bug hiding somewhere in my implementation
> >> which I haven't been able to shake out. The bug is triggering an
> >> exception (in native code, I think), which subsequently causes a JVM
> >> segfault when JavaHL's error handling code calls the
> >> env->DescribeException() JNI routine to output a stack trace for the
> >> exception. I've spent quite a bit of time on this bug, and could
> >> really use some extra eyes.
> >
> >I had a little trouble getting a diff for this since you made the branch
> >and commit in one step. Just an fyi.. I had to resort to the commit email
> >and eventually just checked it out.

Sorry, didn't mean to make things more difficult than they have to be.
FYI, you can get the delta for a branch which was branched with
changes by diffing its HEAD against the branch it was created from at
the revision it was created from (determined via 'svn log -v').

# Find trunk revnum
svn log -v --stop-on-copy \
    http://svn.collab.net/repos/svn/branches/javahl-diff-summarize

# Get delta
svn di http://svn.collab.net/repos/svn/trunk@22588 \
       http://svn.collab.net/repos/svn/branches/javahl-diff-summarize@HEAD

> >Is there a reason that DiffSummary extends EventObject? I do not know
> >what that class is and cannot see any precedent for extending it in JavaHL.
> >
> >I'll keep digging though.
>
> I see that the Notify stuff uses the same technique, so just ignore
> this comment. I'll keep looking.

It's just conventional (like using the EventListener marker
interface). EventObject is a common marker interface used for events
passed to Java listeners. It's not strictly necessary.

  • application/pgp-signature attachment: stored
Received on Fri Dec 8 00:40:47 2006

This is an archived mail posted to the Subversion Dev mailing list.