svn commit: r1936775 - in subversion/branches/1.15.x: . build build/ac-macros notes subversion/bindings/ctypes-python subversion/bindings/ctypes-python/csvn subversion/bindings/ctypes-python/examples subversion/bindings/ctypes-python/test tools/dist
[email protected] Sat, 01 Aug 2026 04:01:00 -0000
| Newsgroups | gmane.comp.version-control.subversion.svn |
|---|---|
| Message-ID | <178555686085.973888.320662680159480246@svn03-he-fi> |
Author: svn-role
Date: Sat Aug 1 04:01:00 2026
New Revision: 1936775
Log:
Merge the r1936306 group from trunk:
* r1936306, r1936315
Remove the ctypes bindings code.
Justification:
Ctypes bindings don't work with Python 3 (and has not worked for at
least 6 years).
Votes:
+1: dsahlberg, ivan, kotkov
Replaced:
subversion/branches/1.15.x/subversion/bindings/ctypes-python/README
- copied unchanged from r1936315, subversion/trunk/subversion/bindings/ctypes-python/README
Deleted:
subversion/branches/1.15.x/build/ac-macros/ctypesgen.m4
subversion/branches/1.15.x/build/run_ctypesgen.sh
subversion/branches/1.15.x/subversion/bindings/ctypes-python/TODO
subversion/branches/1.15.x/subversion/bindings/ctypes-python/csvn/
subversion/branches/1.15.x/subversion/bindings/ctypes-python/examples/
subversion/branches/1.15.x/subversion/bindings/ctypes-python/setup.py
subversion/branches/1.15.x/subversion/bindings/ctypes-python/test/
Modified:
subversion/branches/1.15.x/ (props changed)
subversion/branches/1.15.x/INSTALL
subversion/branches/1.15.x/Makefile.in
subversion/branches/1.15.x/STATUS
subversion/branches/1.15.x/aclocal.m4.in
subversion/branches/1.15.x/configure.ac
subversion/branches/1.15.x/notes/object-model.txt
subversion/branches/1.15.x/tools/dist/rat-excludes
Modified: subversion/branches/1.15.x/INSTALL
==============================================================================
--- subversion/branches/1.15.x/INSTALL Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/INSTALL Sat Aug 1 04:01:00 2026 (r1936775)
@@ -482,7 +482,6 @@ I. INTRODUCTION
In more detail, Python is required to do any of the following:
* Use the SWIG Python bindings.
- * Use the ctypes Python bindings.
* Use hook scripts coded in Python.
* Build Subversion from a tarball on Unix-like systems and run
Subversion's test suite as described in section II.B.
@@ -491,7 +490,6 @@ I. INTRODUCTION
Subversion's own repository (whether or not running the test
suite).
* Build the SWIG Python bindings.
- * Build the ctypes Python bindings.
* Testing as described in section III.D.
The Python bindings are used by:
@@ -579,19 +577,7 @@ I. INTRODUCTION
then pass the '--with-gnome-keyring' option to `configure`.
- 20. Ctypesgen (OPTIONAL)
-
- Ctypesgen is Python wrapper generator for ctypes. It is used to generate
- a part of Subversion Ctypes Python bindings (CSVN). If you want to build
- CSVN, then pass the '--with-ctypesgen' option to `configure`. If ctypesgen.py
- is installed in a non-standard place, then use:
-
- --with-ctypesgen=/path/to/ctypesgen.py
-
- For more information on CSVN, see subversion/bindings/ctypes-python/README.
-
-
- 21. libmagic (OPTIONAL)
+ 20. libmagic (OPTIONAL)
Subversion's configure script attempts to find libmagic automatically.
If it is installed in a non-standard location, then use:
@@ -613,7 +599,7 @@ I. INTRODUCTION
--with-libmagic
- 22. LZ4 (OPTIONAL)
+ 21. LZ4 (OPTIONAL)
Subversion uses LZ4 compression library version r129 or above. Configure
will attempt to locate the system library by default using pkg-config
@@ -627,7 +613,7 @@ I. INTRODUCTION
--with-lz4=internal
- 23. py3c (OPTIONAL)
+ 22. py3c (OPTIONAL)
Subversion uses the Python 3 Compatibility Layer for C
Extensions (py3c) library when building the Python language
Modified: subversion/branches/1.15.x/Makefile.in
==============================================================================
--- subversion/branches/1.15.x/Makefile.in Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/Makefile.in Sat Aug 1 04:01:00 2026 (r1936775)
@@ -165,9 +165,6 @@ SWIG_RB_TEST_VERBOSE = @SWIG_RB_TEST_VER
SWIG_RB_RI_DATADIR = $(DESTDIR)$(datadir)/ri/$(RUBY_MAJOR).$(RUBY_MINOR)/site
SWIG_RB_ERRMSG = @SWIG_RB_ERRMSG@
-CTYPESGEN = @CTYPESGEN@
-CTYPES_PYTHON_SRC_DIR = $(abs_srcdir)/subversion/bindings/ctypes-python
-
JAVAHL_JAR=subversion/bindings/javahl/svn-javahl.jar
JAVAHL_INCLUDES= @JNI_INCLUDES@ -I$(abs_builddir)/subversion/bindings/javahl/include
@@ -455,7 +452,7 @@ fast-clean: doc-clean
fi \
done
echo $(CLEAN_FILES) | xargs rm -f --
- for d in $(CTYPES_PYTHON_SRC_DIR) $(SWIG_PY_SRC_DIR) $(SWIG_PY_DIR) \
+ for d in $(SWIG_PY_SRC_DIR) $(SWIG_PY_DIR) \
$(abs_srcdir)/build $(top_srcdir)/subversion/tests/cmdline; \
do \
test -e $$d || continue; \
@@ -883,12 +880,12 @@ install-man:
install-swig-py: install-swig-py-lib
install-swig-rb: install-swig-rb-lib
-clean-bindings: clean-swig clean-ctypes-python clean-javahl
+clean-bindings: clean-swig clean-javahl
extraclean-bindings: clean-swig extraclean-swig-headers \
extraclean-swig-py extraclean-swig-rb \
extraclean-swig-pl \
- clean-ctypes-python clean-javahl \
+ clean-javahl \
clean-swig: clean-swig-headers clean-swig-py clean-swig-rb clean-swig-pl
@rm -f .swig_checked
@@ -1030,29 +1027,6 @@ extraclean-swig-rb: clean-swig-rb
install-swig-rb-doc:
$(RDOC) --all --ri --op "$(SWIG_RB_RI_DATADIR)" "$(SWIG_RB_SRC_DIR)/svn"
-# ctypes-python make targets
-ctypes-python: local-all
- $(SHELL) $(abs_srcdir)/build/run_ctypesgen.sh "$(LT_EXECUTE)" "$(CPPFLAGS)" "$(EXTRA_CTYPES_LDFLAGS)" "$(PYTHON)" "$(CTYPESGEN)" "$(abs_srcdir)" "$(abs_builddir)" "$(libdir)" "$(SVN_APR_CONFIG)" "$(SVN_APRUTIL_CONFIG)" "$(CPP)"
-
-install-ctypes-python: ctypes-python
- cd $(CTYPES_PYTHON_SRC_DIR); \
- $(PYTHON) setup.py install --prefix="$(DESTDIR)$(prefix)"
-
-check-ctypes-python: ctypes-python
- cd $(CTYPES_PYTHON_SRC_DIR); \
- $(LT_EXECUTE) $(PYTHON) test/run_all.py
-
-# If any of those files exists, run ctypes' 'setup.py clean'. We don't run
-# it otherwise because it spams stdout+stderr; see r1479326.
-clean-ctypes-python:
- cd $(CTYPES_PYTHON_SRC_DIR); \
- for b in build csvn/core/functions.py svn_all.py svn_all2.py ; do \
- if [ -e "$$b" ] ; then \
- $(PYTHON) setup.py clean --all; \
- break; \
- fi; \
- done
-
# manually describe a dependency, which we won't otherwise detect
subversion/libsvn_wc/wc-queries.h: $(abs_srcdir)/subversion/libsvn_wc/wc-metadata.sql
subversion/libsvn_wc/wc-queries.h: $(abs_srcdir)/subversion/libsvn_wc/wc-checks.sql
Modified: subversion/branches/1.15.x/STATUS
==============================================================================
--- subversion/branches/1.15.x/STATUS Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/STATUS Sat Aug 1 04:01:00 2026 (r1936775)
@@ -67,14 +67,6 @@ Veto-blocked changes:
Approved changes:
=================
-* r1936306, r1936315
- Remove the ctypes bindings code.
- Justification:
- Ctypes bindings don't work with Python 3 (and has not worked for at
- least 6 years).
- Votes:
- +1: dsahlberg, ivan, kotkov
-
* r1936304
cmake: Follow-up to r1935776, fix all tests via run_tests.py failing
with SVN_TEST_CHECK_XML_SCHEMA=OFF.
Modified: subversion/branches/1.15.x/aclocal.m4.in
==============================================================================
--- subversion/branches/1.15.x/aclocal.m4.in Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/aclocal.m4.in Sat Aug 1 04:01:00 2026 (r1936775)
@@ -39,7 +39,6 @@ sinclude(build/ac-macros/ax_boost_base.m
sinclude(build/ac-macros/ax_boost_unit_test_framework.m4)
sinclude(build/ac-macros/berkeley-db.m4)
sinclude(build/ac-macros/compiler.m4)
-sinclude(build/ac-macros/ctypesgen.m4)
sinclude(build/ac-macros/java.m4)
sinclude(build/ac-macros/sasl.m4)
sinclude(build/ac-macros/serf.m4)
Modified: subversion/branches/1.15.x/configure.ac
==============================================================================
--- subversion/branches/1.15.x/configure.ac Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/configure.ac Sat Aug 1 04:01:00 2026 (r1936775)
@@ -1564,8 +1564,6 @@ AC_ARG_VAR(SWIG_RB_FEATURES, [SWIG featu
AC_ARG_VAR(SWIG_PL_FEATURES, [SWIG feature flags specific to Perl bindings])
AC_ARG_VAR(SWIG_PY_FEATURES, [SWIG feature flags specific to Python bindings])
-SVN_CHECK_CTYPESGEN
-
dnl decide whether we want to link against the RA/FS libraries
AC_ARG_ENABLE(runtime-module-search,
AS_HELP_STRING([--enable-runtime-module-search],
Modified: subversion/branches/1.15.x/notes/object-model.txt
==============================================================================
--- subversion/branches/1.15.x/notes/object-model.txt Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/notes/object-model.txt Sat Aug 1 04:01:00 2026 (r1936775)
@@ -38,8 +38,8 @@ bindings languages, and allows for a sin
documentation. Several other projects have successfully implemented such
a model, inclding wxWidgets[6] and MapServer[7]. There have even been
past proposals within Subversion[8], but no real progress has been made.
-(The exception is the python c-types bindings[9], which have yet to be merged
-to trunk.)
+(The exception was the python c-types bindings[9], which existed between
+1.6 and 1.14, removed in 1.15)
Requirements
@@ -167,4 +167,5 @@ Notes
[6] http://www.wxwidgets.org/
[7] http://mapserver.gis.umn.edu/
[8] http://svn.haxx.se/dev/archive-2003-10/0215.shtml
-[9] http://svn.apache.org/repos/asf/subversion/branches/ctypes-python-bindings/
+[9] http://svn.apache.org/repos/asf/subversion/trunk/subversion/bindings/ctypes-python,
+before r1936298
Copied: subversion/branches/1.15.x/subversion/bindings/ctypes-python/README (from r1936315, subversion/trunk/subversion/bindings/ctypes-python/README)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ subversion/branches/1.15.x/subversion/bindings/ctypes-python/README Sat Aug 1 04:01:00 2026 (r1936775, copy of r1936315, subversion/trunk/subversion/bindings/ctypes-python/README)
@@ -0,0 +1,6 @@
+This directory used to contain a ctypes based Python binding, however it
+was unmaintained and didn't work for Python3. Therefore, it was removed
+in r1936306 (before the release of Subversion 1.15.0).
+
+If you want to see them or work with them, you can check them out from an
+earlier revision.
Modified: subversion/branches/1.15.x/tools/dist/rat-excludes
==============================================================================
--- subversion/branches/1.15.x/tools/dist/rat-excludes Sat Aug 1 04:00:36 2026 (r1936774)
+++ subversion/branches/1.15.x/tools/dist/rat-excludes Sat Aug 1 04:01:00 2026 (r1936775)
@@ -25,10 +25,6 @@ subversion/libsvn_ra_svn/protocol
subversion/bindings/javahl/doc/index.html
subversion/bindings/swig/python/tests/trac/__init__.py
subversion/bindings/swig/python/tests/trac/versioncontrol/__init__.py
-subversion/bindings/ctypes-python/TODO
-subversion/bindings/ctypes-python/test/test.dumpfile
-subversion/bindings/ctypes-python/csvn/__init__.py
-subversion/bindings/ctypes-python/csvn/ext/__init__.py
subversion/tests/cmdline/svntest/err.py
tools/buildbot/master/public_html/buildbot.css
tools/dist/rat-excludes