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

Re: Java Library

From: Mark C. Chu-Carroll <mcc_at_watson.ibm.com>
Date: 2001-07-25 16:41:14 CEST

On 24 Jul 2001 10:23:24 +0200, Alexander Mueller wrote:
> Hi Mark
>
> "Mark C. Chu-Carroll" schrieb:
>
> > On 12 Jul 2001 20:18:08 +0200, Alexander Mueller wrote:
> > > Hi folks,
> > >
> > > right now I am working on a first scratch for the Java library. Didnt understand all of the concepts
> > > yet (for example: Reporter, Baton) but I am working on it.
> > >
> > > One can be said already: the java binding is not so simple like I hoped it would be. I want to hide
> > > a lot of the apr stuff from public and give the class user just what he/she needs in a java environment....
> > >
> > > What I would appreciate to do is to check all of my work onto a area visible to public so
> > > others can comment my stuff, join in, and so on.
> > >
> > > What shall I do? Will you create a login for me for the cvs? What to include in the java
> > > files (Copyright notices and so on)? Where to put them...
> > >
> > > Would be great to get things running FAST...
> >
> > I would like to at least talk with you about the design of this. I can't
> > actively contribute at the moment, but that may change shortly.
> >
> > As I mentioned back when I introduced myself to the list, I'm working on
> > a possible competitor to subversion (at the time, we called in Coven;
> > due to a name collision, we renamed in to Synedra), which is written
> > entirely in Java. We've got a lot of functionality - we're slightly
> > ahead of subversion in some places, and quite a bit behind in others
> > (particularly WebDAV/DeltaV).
>
> This sounds pretty interesting! Will Synedra be under an Open Licence like subversion or the GPL?
> Is the Synedra architecture documentation available online?

While there are still some internal politics, it looks quite likely that
we'll be releasing this fall under either the Apache license, or the
IBM Public license. (The IPL is more legalese than Apache, but
according to the lawyers, it's more bulletproof than Apache. The only
semantic difference is that IPL gives authors a little more protection
from patent suits, but it does so at the cost of making the license
unreadable to us lowly technical types. I'm pushing hard for Apache
public license.)

> > I'd like, as much as possible, to create a situation where Synedra (my
> > system) and Subversion can interact nicely with one another. We're
> > looking at clients and UIs right now, so I'm familiar with the top-level
> > issues of how to present a repository with proper branches (like
> > Subversion and Synedra, and unlike CVS) to users.
> >
> > I'm not suggesting cooperating on this just to benefit my project, but
> > because I think we can share a lot of benefit if we have a common
> > interface available. In particular, we're working on integration with
> > a variety of programming tools (one IBM specific, plus xemacs, JEdit,
> > and maybe VIM). If we can work out a common interface through a
> > combination of Java and WebDAV, then subversion can adopt our code
> > when we go open-source (probably around October).
> >
> > If you're willing to work together on this, please drop me a note, and
> > we can talk about the design.
>
> Yep. Thats fine with me. I think the subversion java/gui project has nothing to
> lose with this but a lot to gain...

Great!

> > By the way, Synedra now has a public website... It's not a great one,
> > but at least there are some nice descriptive docs there.
> > http://domino.research.ibm.com/synedra/synedra.nsf.
> >
> > -Mark
>
> Some remarks about the design:
> right now the java/subversion implementation will not be 100% Pure Java.
> Instead, there will be a JNI layer between the public availabe classes and
> interfaces and the subversion API libraries. Its not an ideal situation for me
> but the one with what we will get the fastest results. Maybe later we will be
> able to implement all of the client side in Java (which should not be a problem,
> otherwise the designers of the java/subversion library are to blame).

For subversion, JNI is clearly the right route. I'd like to see as much
as possible to start with interfaces, and make as many calls as possible
through the interface types. (That makes it easier to plug in multiple
backends later, and the performance hit shouldn't be noticable. In any
reasonable JVM, interface calls end up being optimized by the JIT, and
there's already a very singificant performance hit whenever you cross
the boundary between Java and native code with JNI - the interface
cost should be lost in the noise.)

        -Mark

--
Mark Craig Chu-Carroll,  IBM T.J. Watson Research Center 
<mcc@watson.ibm.com>
*** The Synedra project:
http://domino.research.ibm.com/synedra/synedra.nsf
rroll   (mcc@watson.ibm.com) 
IBM T.J. Watson Research Center  
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:33 2006

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