Author: dsahlberg Date: Sun Jul 19 08:21:40 2026 New Revision: 1936306 Log: Remove the ctypes bindings code.
dev@: https://lists.apache.org/thread/z53b18tyd1fdnwz4cyk80h90szdjvn8f * INSTALL (I.C.12): Remove reference to ctypes (I.C.20): Remove ctypesgen section (I.C.21 to I.C.23): Renumber -= 1 * Makefile.in (CTYPESGEN, CTYPES_PYTHON_SRC_DIR): Remove (fast-clean): Don't clean CTYPES_PYTHON_SRC_DIR (ctypes-python, install-ctypes-python, check-ctypes-python, clean-ctypes-python): Remove targets (clean-bindings): Don't depend on removed target * build/ac-macros/ctypesgen.m4 Remove, contained for example SVN_CHECK_CTYPESGEN and SVN_FIND_CTYPESGEN * aclocal.m4.in Don't include previously removed file * build/run_ctypesgen.sh Remove * configure.ac Don't check for CTYPESGEN * notes/object-model.txt Note that the ctypes binding was removed in 1.15. * subversion/bindings/ctypes-python/* Remove. Directory kept for a future README. * tools/dist/rat-excludes Remove references to stuff in subversion/bindings/ctypes-python Deleted: subversion/trunk/build/ac-macros/ctypesgen.m4 subversion/trunk/build/run_ctypesgen.sh subversion/trunk/subversion/bindings/ctypes-python/README subversion/trunk/subversion/bindings/ctypes-python/TODO subversion/trunk/subversion/bindings/ctypes-python/csvn/ subversion/trunk/subversion/bindings/ctypes-python/examples/ subversion/trunk/subversion/bindings/ctypes-python/setup.py subversion/trunk/subversion/bindings/ctypes-python/test/ Modified: subversion/trunk/INSTALL subversion/trunk/Makefile.in subversion/trunk/aclocal.m4.in subversion/trunk/configure.ac subversion/trunk/notes/object-model.txt subversion/trunk/tools/dist/rat-excludes Modified: subversion/trunk/INSTALL ============================================================================== --- subversion/trunk/INSTALL Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/INSTALL Sun Jul 19 08:21:40 2026 (r1936306) @@ -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/trunk/Makefile.in ============================================================================== --- subversion/trunk/Makefile.in Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/Makefile.in Sun Jul 19 08:21:40 2026 (r1936306) @@ -167,9 +167,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 @@ -463,7 +460,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; \ @@ -891,12 +888,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 @@ -1038,29 +1035,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/trunk/aclocal.m4.in ============================================================================== --- subversion/trunk/aclocal.m4.in Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/aclocal.m4.in Sun Jul 19 08:21:40 2026 (r1936306) @@ -40,7 +40,6 @@ sinclude(build/ac-macros/ax_boost_unit_t sinclude(build/ac-macros/berkeley-db.m4) sinclude(build/ac-macros/compiler.m4) sinclude(build/ac-macros/svnbrowse.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/trunk/configure.ac ============================================================================== --- subversion/trunk/configure.ac Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/configure.ac Sun Jul 19 08:21:40 2026 (r1936306) @@ -1595,8 +1595,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/trunk/notes/object-model.txt ============================================================================== --- subversion/trunk/notes/object-model.txt Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/notes/object-model.txt Sun Jul 19 08:21:40 2026 (r1936306) @@ -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 Modified: subversion/trunk/tools/dist/rat-excludes ============================================================================== --- subversion/trunk/tools/dist/rat-excludes Sun Jul 19 07:52:07 2026 (r1936305) +++ subversion/trunk/tools/dist/rat-excludes Sun Jul 19 08:21:40 2026 (r1936306) @@ -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
