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

Re: ctypes + Subversion + a few high level python modules = really great python bindings

From: David Anderson <david.anderson_at_calixo.net>
Date: 2007-04-10 01:40:02 CEST

Hi David,

Thanks for this summary!

On 4/10/07, David James <james@cs.toronto.edu> wrote:
> Here's a summary of my proposal:
> 1. Replace the low-level SWIG bindings with low-level ctypes
> bindings. Keep the low-level bindings as simple and as similar to the
> C API as possible so that they don't need much maintenance or
> documentation.

+1, +1, an avalanche of +1. I want to be able to port my knowledge of
the C api to the low-level python API easily.

> 2. Write some really nice and easy to use high-level bindings in
> Python, so that end users don't need to use the low-level C API. Write
> detailed, friendly documentation for this new API.

If ctypes lets us concentrate on delivering this, then what are we waiting for?

> Some questions for the list:
> - Should we choose ctypes over SWIG?

Yes, I believe that we should.

> - Once high-level bindings for csvn are ready, should we deprecate
> the buggy SWIG bindings, and recommend that users pick csvn instead?

Yes. I think we should find an upgrade path to push swig users towards
the ctypes bindings asap if they are a compelling replacement, and
have 'import svn' be ctypes bindings as of 1.6. Earlier, if we can.

Should be feasible with a backcompat module that gets imported if you
try to use old bindings functions, implements the old stuff and throws
DeprecationWarnings. Or more simply some switch you have to flip after
importing svn to replace the module with the ctypes module (also
feasible afaik).

I would like to add a final question: Could you move the ctypes
bindings to a branch in the main Subversion repository? It would give
us better visibility on the progress and the evolution of the
bindings, and lowers the barrier for participation. Besides, it'll
have to be done if there is a consensus to replace the SWIG bindings,
and in that case it's better to have it in our source tree early. In
any case, I'd like it to be around so that I can attempt to find some
non-existent hacking time to help you :-)

- Dave

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Apr 10 01:40:14 2007

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.