Re: windows python bindings for subversion

David James <[email protected]> Sun, 4 Sep 2005 15:34:10 -0400
Newsgroups gmane.comp.version-control.subversion.devel,gmane.mail.eyebrowse.user
Message-ID <df2177af05090412346caf350__45178.6624537364$1125862614$gmane$org@mail.gmail.com>
On 9/4/05, Branko Čibej <[email protected]> wrote:
> David James wrote:
> 
> >On 8/28/05, peter frankenberger <[email protected]> wrote:
> >
> >
> >>Hi,
> >>
> >>I've developed a freeware Windows tool for bulk renaming of files.  I
> >>would like to extend it to include renaming of files controlled by SVN.
> >>The tool is written using python 2.4 but unfortunately the only
> >>available SVN binding is for python 2.3.
> >>
> >>Does anyone know if bindings for Python 2.4 will be available soon?  If
> >>not, can anyone show me how to make the bindings myself?
> >>
> >>
> >
> >Hi Peter,
> >
> >For testing purposes, I've compiled a prerelease version of the
> >Subversion bindings for Python 2.4 on Windows. On my machine, these
> >bindings pass the Subversion test suite.
> >
> >Download it at:
> >  http://www.cs.toronto.edu/~james/svn-python/
> >
> >Hope this helps!
> >
> >
> Maybe I have to explain, again, why the officially unofficial Windows
> binary distro of Subversion only comes with Python 2.3 bindings. It's a
> matter of compatibility. The Subversion binaries must work with the
> Apache 2.0.x binaries, which are compiled with MSVC 6. Because of
> runtime compatibility issues, Subversion must therefore also be compiled
> with MSVC 6. Python 2.3 is the last version where the binaries available
> from python.org are compiled with MSVC 6. Python 2.4 uses a newer
> version of the compiler, and depends on a newer version of the C runtime
> library, which is incompatible with Subversion's.
> 
> I'm told Apache 2.2.x will move to this newer compiler. When that
> happens, Subversion can also switch, and we can create Python 2.4
> binings by default. I don't know where that leaves us with Perl, though.

Can we switch to Microsoft Visual Studio.NET for just the Python 2.4 bindings?

If we compile the Python bindings statically, and install all needed
DLL files into the Python library directory, we don't need to worry
about binary compatibility. For an example of this technique in
action, see http://www.cs.toronto.edu/~james/svn-python/

Cheers,

David


-- 
David James -- http://www.cs.toronto.edu/~james