On 18. 7. 2026 16:15, Daniel Sahlberg wrote:
Hi,
When testing 1.15.0-rc3, I stumbled on check-ctypes-python. That
currently fails miserably:
[[[
python: can't open file '/home/dsg/ramdisk/svn_trunk2/none': [Errno 2]
No such file or directory
sed: can't read subversion/bindings/ctypes-python/svn_all.py: No such
file or directory
cd
/home/dsg/ramdisk_backstorage/svn_trunk2/subversion/bindings/ctypes-python;
\
/bin/bash "/home/dsg/ramdisk_backstorage/svn_trunk2/libtool"
--tag=CC --silent --mode=execute `for f in
/home/dsg/ramdisk_backstorage/svn_trunk2/subversion/*/*.la; do echo
-dlopen $f; done` python test/run_all.py
Traceback (most recent call last):
File
"/home/dsg/ramdisk_backstorage/svn_trunk2/subversion/bindings/ctypes-python/test/run_all.py",
line 22, in <module>
import setup_path
File
"/home/dsg/ramdisk_backstorage/svn_trunk2/subversion/bindings/ctypes-python/test/setup_path.py",
line 31, in <module>
import csvn.core
File
"/home/dsg/ramdisk_backstorage/svn_trunk2/subversion/bindings/ctypes-python/csvn/core/__init__.py",
line 20, in <module>
import functions
ModuleNotFoundError: No module named 'functions'
make: *** [Makefile:1050: check-ctypes-python] Error 1
]]]
I've started fixing errors one by one and I have a 444 line diff, but
I'm no closer to making it work.
Given that last substantial commit was somewhere around 2011, this is
probably yet another feature we are not maintaining as well as we
should. I believe a lot of things have not been updated from Py2 to
Py3 standards but it seems to be other stuff as well.
Ctypes-python is broken and unmaintained. Because of that, nobody uses it.
Is there any advantage having a ctypes-binding over the swig-binding?
Otherwise, I think we should axe this one as well - in this particular
case (since it currently doesn't work) - I'm on the SIGKILL squad.
Theoretically, one can build better bindings with ctypes than Swig,
because you get a more "native" mapping of types. But we didn't. I think
15 years of brokenness is long enough.
-- Brane