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

Re: Bindings use is *painful*

From: Hyrum K Wright <hyrum_at_hyrumwright.org>
Date: Wed, 16 Feb 2011 16:32:14 +0000

On Wed, Feb 16, 2011 at 4:01 PM, Ramkumar Ramachandra
<artagnon_at_gmail.com> wrote:
> Hi,
>
> Stefan Sperling writes:
>> On Wed, Feb 16, 2011 at 03:08:39PM +0000, Hyrum K Wright wrote:
>> This is because the bindings are generated with SWIG.
>> We cannot really fix this without using a different approach.
>>
>> We could improve the documentation. An introductory document that
>> explains how to apply the C API docs to the python bindings would
>> be helpful. Maybe someone with some experience in using the python
>> bindings could write something like this?
>>
>> Also, there's an API built on top of the bindings that is easier to use
>> and has better documentation: http://pysvn.tigris.org/
>
> Does it make sense to write bindings ground up by hand and hand-craft
> a nice API? Since the C API is guaranteed to be relatively stable and
> backward compatible, maintainability shouldn't be much of an
> issue. Plus, it'll probably make a good GSoC project.

We actually do this for Java, creating the JavaHL bindings. And
really, it isn't that much work (after the initial infrastructure is
built). They much better support Java idioms than any generated
wrapper could, and the maintenance burden is generally pretty low.

We could still use the swig-generated stuff to create most of the
boiler-plate between $TARGET_LANGUAGE and C, and then implement a
clean API on top of that. Or we could do something like the
object-model branch, or some other idea. (And then there are the
backward compat considerations...)

-Hyrum
Received on 2011-02-16 17:36:45 CET

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