Which subversion interface is the most used one?

M

Markus Schaber

Hi,

at one of our projects, we could make use of a subversion interface for
IronPython. But there seems none to exist.

The easiest way would be to directly expose SharpSVN to the IronPython
scripts, but that is not a very pythonic solution. So we had the Idea
of porting the existing python interfaces to IronPython.

And here the confusion starts, there seem to exist at least three of
them (those are the ones I found being prepackaged on debian):

python-subversion: Seems to be a rather autogenerated wrapper around
libsvn - thus being feature-complete, but rather unpythonic.

python-svn (pysvn): Seems to be written in C++, and give a somehow
pythonic interface to the most important functionality.

python-subvertpy: Seems to aggregate the advantages of the two previous
solutions, but I did not find any API documentation.

It seems that porting one of them to IronPython in a 1:1 fashion is no
feasible solution.

So I came up with the Idea of simply re-implementing the API of one of
those packages in C#, in a way that it can be exposed as IronPython
module, using SharpSVN or Monodevelop-VersionControl as backend. This
seems to be a rather low cost way of providing subversion functionality
to IronPython, in a way compatible with at least some of the cPython
Subversion applications.

Now my question:

Which one of the SVN interfaces are established and broadly used?

I don't want to risk to put effort into implementing a dead API when
others are alive.

I have a slight tendency to pysvn, as it seems to be well documented
and pythonic.

Thanks for your comments.


Markus
 
D

Detlev Offenbach

Markus said:
Hi,

at one of our projects, we could make use of a subversion interface for
IronPython. But there seems none to exist.

The easiest way would be to directly expose SharpSVN to the IronPython
scripts, but that is not a very pythonic solution. So we had the Idea
of porting the existing python interfaces to IronPython.

And here the confusion starts, there seem to exist at least three of
them (those are the ones I found being prepackaged on debian):

python-subversion: Seems to be a rather autogenerated wrapper around
libsvn - thus being feature-complete, but rather unpythonic.

python-svn (pysvn): Seems to be written in C++, and give a somehow
pythonic interface to the most important functionality.

python-subvertpy: Seems to aggregate the advantages of the two previous
solutions, but I did not find any API documentation.

It seems that porting one of them to IronPython in a 1:1 fashion is no
feasible solution.

So I came up with the Idea of simply re-implementing the API of one of
those packages in C#, in a way that it can be exposed as IronPython
module, using SharpSVN or Monodevelop-VersionControl as backend. This
seems to be a rather low cost way of providing subversion functionality
to IronPython, in a way compatible with at least some of the cPython
Subversion applications.

Now my question:

Which one of the SVN interfaces are established and broadly used?

I don't want to risk to put effort into implementing a dead API when
others are alive.

I have a slight tendency to pysvn, as it seems to be well documented
and pythonic.

Thanks for your comments.

The eric Python IDE uses the pysvn interface, which works much better
than interfacing to the svn executable.

Detlev
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top