You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2012/04/03 15:32:54 UTC
svn commit: r1308894 [1/14] - in /subversion/branches/ev2-export: ./ build/
build/ac-macros/ build/generator/ build/generator/templates/ notes/
notes/directory-index/ notes/wc-ng/ subversion/bindings/javahl/
subversion/bindings/swig/perl/native/t/ subv...
Author: hwright
Date: Tue Apr 3 13:32:48 2012
New Revision: 1308894
URL: http://svn.apache.org/viewvc?rev=1308894&view=rev
Log:
On the ev2-export branch:
Bring up-to-date with trunk.
Added:
subversion/branches/ev2-export/notes/directory-index/
- copied from r1308886, subversion/trunk/notes/directory-index/
subversion/branches/ev2-export/subversion/libsvn_ra_serf/sb_bucket.c
- copied unchanged from r1308886, subversion/trunk/subversion/libsvn_ra_serf/sb_bucket.c
subversion/branches/ev2-export/subversion/libsvn_subr/crypto.c
- copied unchanged from r1308886, subversion/trunk/subversion/libsvn_subr/crypto.c
subversion/branches/ev2-export/subversion/libsvn_subr/crypto.h
- copied unchanged from r1308886, subversion/trunk/subversion/libsvn_subr/crypto.h
subversion/branches/ev2-export/subversion/tests/libsvn_subr/crypto-test.c
- copied unchanged from r1308886, subversion/trunk/subversion/tests/libsvn_subr/crypto-test.c
subversion/branches/ev2-export/tools/dev/aprerr.txt
- copied unchanged from r1308886, subversion/trunk/tools/dev/aprerr.txt
subversion/branches/ev2-export/tools/dist/make-deps-tarball.sh (props changed)
- copied unchanged from r1308886, subversion/trunk/tools/dist/make-deps-tarball.sh
subversion/branches/ev2-export/tools/server-side/svnpubsub/daemonize.py
- copied unchanged from r1308886, subversion/trunk/tools/server-side/svnpubsub/daemonize.py
Removed:
subversion/branches/ev2-export/tools/dist/templates/htaccess.ezt
subversion/branches/ev2-export/tools/dist/templates/rc-candidates.ezt
subversion/branches/ev2-export/tools/dist/templates/stable-candidates.ezt
subversion/branches/ev2-export/tools/server-side/svnpubsub/svnwcsub.tac
Modified:
subversion/branches/ev2-export/ (props changed)
subversion/branches/ev2-export/CHANGES
subversion/branches/ev2-export/COMMITTERS
subversion/branches/ev2-export/INSTALL
subversion/branches/ev2-export/Makefile.in
subversion/branches/ev2-export/build.conf
subversion/branches/ev2-export/build/ac-macros/serf.m4
subversion/branches/ev2-export/build/generator/gen_make.py
subversion/branches/ev2-export/build/generator/templates/makefile.ezt
subversion/branches/ev2-export/build/run_tests.py
subversion/branches/ev2-export/configure.ac
subversion/branches/ev2-export/notes/moves
subversion/branches/ev2-export/notes/ra-serf-testing.txt
subversion/branches/ev2-export/notes/subversion-design.html
subversion/branches/ev2-export/notes/wc-ng/conflict-storage
subversion/branches/ev2-export/subversion/bindings/javahl/README
subversion/branches/ev2-export/subversion/bindings/swig/perl/native/t/3client.t
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/client.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/core.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/delta.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/diff.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/fs.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/ra.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/repos.py
subversion/branches/ev2-export/subversion/bindings/swig/python/svn/wc.py
subversion/branches/ev2-export/subversion/bindings/swig/python/tests/pool.py
subversion/branches/ev2-export/subversion/bindings/swig/ruby/svn/fs.rb
subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/test_repos.rb
subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/util.rb
subversion/branches/ev2-export/subversion/include/private/svn_auth_private.h
subversion/branches/ev2-export/subversion/include/private/svn_cache.h
subversion/branches/ev2-export/subversion/include/private/svn_client_private.h
subversion/branches/ev2-export/subversion/include/private/svn_mergeinfo_private.h
subversion/branches/ev2-export/subversion/include/private/svn_mutex.h
subversion/branches/ev2-export/subversion/include/private/svn_wc_private.h
subversion/branches/ev2-export/subversion/include/svn_client.h
subversion/branches/ev2-export/subversion/include/svn_delta.h
subversion/branches/ev2-export/subversion/include/svn_diff.h
subversion/branches/ev2-export/subversion/include/svn_editor.h
subversion/branches/ev2-export/subversion/include/svn_props.h
subversion/branches/ev2-export/subversion/include/svn_repos.h
subversion/branches/ev2-export/subversion/include/svn_sorts.h
subversion/branches/ev2-export/subversion/libsvn_auth_gnome_keyring/gnome_keyring.c
subversion/branches/ev2-export/subversion/libsvn_auth_kwallet/kwallet.cpp
subversion/branches/ev2-export/subversion/libsvn_client/client.h
subversion/branches/ev2-export/subversion/libsvn_client/commit.c
subversion/branches/ev2-export/subversion/libsvn_client/commit_util.c
subversion/branches/ev2-export/subversion/libsvn_client/copy.c
subversion/branches/ev2-export/subversion/libsvn_client/deprecated.c
subversion/branches/ev2-export/subversion/libsvn_client/externals.c
subversion/branches/ev2-export/subversion/libsvn_client/merge.c
subversion/branches/ev2-export/subversion/libsvn_client/mergeinfo.c
subversion/branches/ev2-export/subversion/libsvn_client/prop_commands.c
subversion/branches/ev2-export/subversion/libsvn_client/ra.c
subversion/branches/ev2-export/subversion/libsvn_client/util.c
subversion/branches/ev2-export/subversion/libsvn_delta/compat.c
subversion/branches/ev2-export/subversion/libsvn_delta/editor.c
subversion/branches/ev2-export/subversion/libsvn_delta/xdelta.c
subversion/branches/ev2-export/subversion/libsvn_fs/fs-loader.h
subversion/branches/ev2-export/subversion/libsvn_fs_fs/caching.c
subversion/branches/ev2-export/subversion/libsvn_fs_fs/dag.c
subversion/branches/ev2-export/subversion/libsvn_fs_fs/dag.h
subversion/branches/ev2-export/subversion/libsvn_fs_fs/fs.h
subversion/branches/ev2-export/subversion/libsvn_fs_fs/fs_fs.c
subversion/branches/ev2-export/subversion/libsvn_fs_fs/rep-cache-db.sql
subversion/branches/ev2-export/subversion/libsvn_fs_fs/temp_serializer.c
subversion/branches/ev2-export/subversion/libsvn_fs_fs/temp_serializer.h
subversion/branches/ev2-export/subversion/libsvn_fs_fs/tree.c
subversion/branches/ev2-export/subversion/libsvn_fs_fs/tree.h
subversion/branches/ev2-export/subversion/libsvn_ra_serf/blame.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/commit.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/get_deleted_rev.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/getdate.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/getlocations.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/getlocationsegments.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/getlocks.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/locks.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/log.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/merge.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/mergeinfo.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/options.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/property.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/ra_serf.h
subversion/branches/ev2-export/subversion/libsvn_ra_serf/replay.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/serf.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/update.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/util.c
subversion/branches/ev2-export/subversion/libsvn_ra_serf/xml.c
subversion/branches/ev2-export/subversion/libsvn_ra_svn/client.c
subversion/branches/ev2-export/subversion/libsvn_repos/dump.c
subversion/branches/ev2-export/subversion/libsvn_repos/fs-wrap.c
subversion/branches/ev2-export/subversion/libsvn_repos/hooks.c
subversion/branches/ev2-export/subversion/libsvn_repos/log.c
subversion/branches/ev2-export/subversion/libsvn_subr/cache-inprocess.c
subversion/branches/ev2-export/subversion/libsvn_subr/cache-membuffer.c
subversion/branches/ev2-export/subversion/libsvn_subr/cache-memcache.c
subversion/branches/ev2-export/subversion/libsvn_subr/checksum.c
subversion/branches/ev2-export/subversion/libsvn_subr/gpg_agent.c
subversion/branches/ev2-export/subversion/libsvn_subr/macos_keychain.c
subversion/branches/ev2-export/subversion/libsvn_subr/mergeinfo.c
subversion/branches/ev2-export/subversion/libsvn_subr/properties.c
subversion/branches/ev2-export/subversion/libsvn_subr/simple_providers.c
subversion/branches/ev2-export/subversion/libsvn_subr/spillbuf.c
subversion/branches/ev2-export/subversion/libsvn_subr/ssl_client_cert_pw_providers.c
subversion/branches/ev2-export/subversion/libsvn_subr/svn_string.c
subversion/branches/ev2-export/subversion/libsvn_subr/win32_crypto.c
subversion/branches/ev2-export/subversion/libsvn_wc/adm_crawler.c
subversion/branches/ev2-export/subversion/libsvn_wc/props.c
subversion/branches/ev2-export/subversion/libsvn_wc/update_editor.c
subversion/branches/ev2-export/subversion/libsvn_wc/wc-metadata.sql
subversion/branches/ev2-export/subversion/libsvn_wc/wc-queries.sql
subversion/branches/ev2-export/subversion/libsvn_wc/wc_db.c
subversion/branches/ev2-export/subversion/libsvn_wc/wc_db_util.c
subversion/branches/ev2-export/subversion/mod_dav_svn/mod_dav_svn.c
subversion/branches/ev2-export/subversion/mod_dav_svn/version.c
subversion/branches/ev2-export/subversion/po/fr.po
subversion/branches/ev2-export/subversion/po/ja.po
subversion/branches/ev2-export/subversion/svn/cl.h
subversion/branches/ev2-export/subversion/svn/log-cmd.c
subversion/branches/ev2-export/subversion/svn/main.c
subversion/branches/ev2-export/subversion/svn/merge-cmd.c
subversion/branches/ev2-export/subversion/svnlook/main.c
subversion/branches/ev2-export/subversion/svnrdump/dump_editor.c
subversion/branches/ev2-export/subversion/svnrdump/load_editor.c
subversion/branches/ev2-export/subversion/svnserve/serve.c
subversion/branches/ev2-export/subversion/svnsync/main.c
subversion/branches/ev2-export/subversion/svnsync/sync.c
subversion/branches/ev2-export/subversion/tests/cmdline/authz_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/checkout_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/copy_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/davautocheck.sh
subversion/branches/ev2-export/subversion/tests/cmdline/depth_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/log_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/merge_reintegrate_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/merge_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/svnadmin_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/svnlook_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/svnsync_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/actions.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/factory.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/main.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/sandbox.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/tree.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/verify.py
subversion/branches/ev2-export/subversion/tests/cmdline/svntest/wc.py
subversion/branches/ev2-export/subversion/tests/cmdline/tree_conflict_tests.py
subversion/branches/ev2-export/subversion/tests/cmdline/update_tests.py
subversion/branches/ev2-export/subversion/tests/libsvn_client/ (props changed)
subversion/branches/ev2-export/subversion/tests/libsvn_client/client-test.c
subversion/branches/ev2-export/subversion/tests/libsvn_delta/random-test.c
subversion/branches/ev2-export/subversion/tests/libsvn_subr/ (props changed)
subversion/branches/ev2-export/subversion/tests/libsvn_subr/cache-test.c
subversion/branches/ev2-export/subversion/tests/libsvn_subr/spillbuf-test.c
subversion/branches/ev2-export/subversion/tests/libsvn_wc/db-test.c
subversion/branches/ev2-export/subversion/tests/libsvn_wc/op-depth-test.c
subversion/branches/ev2-export/tools/buildbot/slaves/win32-SharpSvn/svntest-bindings.cmd
subversion/branches/ev2-export/tools/client-side/mergeinfo-sanitizer.py (contents, props changed)
subversion/branches/ev2-export/tools/client-side/svnmucc/svnmucc.c
subversion/branches/ev2-export/tools/dev/gdb-py/svndbg/printers.py
subversion/branches/ev2-export/tools/dev/merge-graph.py
subversion/branches/ev2-export/tools/dev/mergegraph/mergegraph.py
subversion/branches/ev2-export/tools/dev/unix-build/Makefile.svn
subversion/branches/ev2-export/tools/dev/which-error.py
subversion/branches/ev2-export/tools/dist/_gnupg.py
subversion/branches/ev2-export/tools/dist/dist.sh
subversion/branches/ev2-export/tools/dist/release.py
subversion/branches/ev2-export/tools/server-side/mod_dontdothat/mod_dontdothat.c
subversion/branches/ev2-export/tools/server-side/svnpubsub/README.txt
subversion/branches/ev2-export/tools/server-side/svnpubsub/rc.d/svnwcsub
subversion/branches/ev2-export/tools/server-side/svnpubsub/rc.d/svnwcsub.debian
subversion/branches/ev2-export/tools/server-side/svnpubsub/rc.d/svnwcsub.solaris
subversion/branches/ev2-export/tools/server-side/svnpubsub/svnpubsub/client.py
subversion/branches/ev2-export/tools/server-side/svnpubsub/svnwcsub.py
Propchange: subversion/branches/ev2-export/
------------------------------------------------------------------------------
Merged /subversion/branches/multi-layer-moves:r1239019-1300930
Merged /subversion/trunk:r1297219-1308886
Merged /subversion/branches/node_pool:r1304828-1305388
Modified: subversion/branches/ev2-export/CHANGES
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/CHANGES?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/CHANGES (original)
+++ subversion/branches/ev2-export/CHANGES Tue Apr 3 13:32:48 2012
@@ -384,6 +384,30 @@ the 1.6 release: http://subversion.apac
* fix type mapping of svn_txdelta_window_t in python bindings (issue #3688)
+Version 1.6.18
+(29 Mar 2012, from /branches/1.6.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.6.18
+
+ User-visible changes:
+ * reject invalid svn:mergeinfo at commit time over DAV (issue #3953)
+ * fix reintegrate merge regression introduced in 1.6.13 (issue #3957)
+ * make the stderr output of the post-commit hook XML-safe (r893478)
+ * fix a rare source of FSFS corruption (r1240752)
+ * plug a memory leak in the bdb backend (r1205726)
+ * server-side performance fix for "log -g" (r1152282)
+ * fix description of svndumpfilter's --targets option (r1151911)
+ * fix datastream corruption during resumed transfer in ra_serf (r1154733)
+ * fix a crash in ra_svn SASL authentication (r1166555, -678)
+ * fix potential corruption on 32-bit FSFS with large files (r1230212)
+ * make website links point to subversion.apache.org (r896893, -901, r915036)
+ * fix non-fatal FSFS corruption bug with concurrent commits (issue #4129)
+
+ Developer-visible changes:
+ * fix sqlite distfile retrieval in get-deps.sh (r1134734)
+ * fix swig-py memory leak (r1235264, -296, -302, -736)
+ * allow passing --with-jdk to gen-make.py on Windows (r966167)
+
+
Version 1.6.17
(01 Jun 2011, from /branches/1.6.x)
http://svn.apache.org/repos/asf/subversion/tags/1.6.17
Modified: subversion/branches/ev2-export/COMMITTERS
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/COMMITTERS?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/COMMITTERS [UTF-8] (original)
+++ subversion/branches/ev2-export/COMMITTERS [UTF-8] Tue Apr 3 13:32:48 2012
@@ -57,6 +57,7 @@ Blanket commit access:
dannas Daniel Näslund <da...@dannas.name>
stefan2 Stefan Fuhrmann <st...@alice-dsl.de>
jcorvel Johan Corveleyn <jc...@gmail.com>
+ trent Trent Nelson <tr...@snakebite.org>
[[END ACTIVE FULL COMMITTERS. LEAVE THIS LINE HERE; SCRIPTS LOOK FOR IT.]]
Modified: subversion/branches/ev2-export/INSTALL
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/INSTALL?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/INSTALL (original)
+++ subversion/branches/ev2-export/INSTALL Tue Apr 3 13:32:48 2012
@@ -324,7 +324,7 @@ I. INTRODUCTION
default. Add "http-library = neon" to the [global] section of
your ~/.subversion/servers file to use ra_neon instead.)
- a. Serf library 0.7.1 or newer (http://code.google.com/p/serf/)
+ a. Serf library 1.1.0 or newer (http://code.google.com/p/serf/)
In order to use ra_serf, you must install serf, and run
Subversion's ./configure with the argument --with-serf. If
Modified: subversion/branches/ev2-export/Makefile.in
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/Makefile.in?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/Makefile.in (original)
+++ subversion/branches/ev2-export/Makefile.in Tue Apr 3 13:32:48 2012
@@ -135,6 +135,7 @@ INCLUDES = -I$(top_srcdir)/subversion/in
APACHE_INCLUDES = @APACHE_INCLUDES@
APACHE_LIBEXECDIR = $(DESTDIR)@APACHE_LIBEXECDIR@
+APACHE_LIBEXECDIR_TOOLS = $(DESTDIR)@APACHE_LIBEXECDIR@/svn-tools
APACHE_LDFLAGS = @APACHE_LDFLAGS@
SWIG = @SWIG@
@@ -252,6 +253,7 @@ INSTALL_CONTRIB = $(LIBTOOL) --mode=inst
INSTALL_TOOLS = $(LIBTOOL) --mode=install $(INSTALL)
INSTALL_INCLUDE = $(INSTALL) -m 644
INSTALL_MOD_SHARED = @APXS@ -i -S LIBEXECDIR="$(APACHE_LIBEXECDIR)" @MOD_ACTIVATION@
+INSTALL_MOD_SHARED_TOOLS = @APXS@ -i -S LIBEXECDIR="$(APACHE_LIBEXECDIR_TOOLS)"
INSTALL_DATA = $(INSTALL) -m 644
INSTALL_LOCALE = $(INSTALL_DATA)
@@ -381,16 +383,18 @@ fast-clean: doc-clean
$(abs_srcdir)/build $(top_srcdir)/subversion/tests/cmdline/svntest \
-name "*.pyc" -exec rm {} ';'
-# clean all but bulky test output, returning to before './configure' was run.
+# clean everything, returning to before './configure' was run.
SVN_CONFIG_SCRIPT_FILES = @SVN_CONFIG_SCRIPT_FILES@
-fast-distclean: fast-clean
- rm -fr Makefile config.cache config.log config.nice config.status \
- libtool mkmf.log subversion/svn_private_config.h \
- subversion/bindings/javahl/classes subversion/bindings/javahl/include \
+local-distclean: local-clean
+ rm -fr config.cache config.log config.nice config.status \
+ libtool mkmf.log subversion/svn_private_config.h \
+ subversion/bindings/javahl/classes \
+ subversion/bindings/javahl/include \
$(SVN_CONFIG_SCRIPT_FILES)
+ rm -f Makefile
# clean everything out, returning to before './autogen.sh' was run.
-local-extraclean: local-distclean extraclean-swig extraclean-ctypes-python extraclean-javahl
+local-extraclean: extraclean-bindings local-distclean
rm -f $(top_srcdir)/build-outputs.mk \
$(top_srcdir)/subversion/svn_private_config.h.in \
$(top_srcdir)/configure \
@@ -408,10 +412,7 @@ local-extraclean: local-distclean extrac
# clean everything, including test output.
-local-clean: fast-clean check-clean clean-swig clean-ctypes-python clean-javahl
-
-# clean everything, including test output.
-local-distclean: fast-distclean check-clean
+local-clean: check-clean clean-bindings fast-clean
local-install: @INSTALL_RULES@
@@ -437,8 +438,6 @@ clean-javahl:
rm -f $(libsvnjavahl_PATH)/*.lo
rm -f $(libsvnjavahl_PATH)/*.o
-extraclean-javahl: clean-javahl
-
check-tigris-javahl: javahl-compat
@FIX_JAVAHL_LIB@
$(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" -Djava.library.path=@JAVAHL_OBJDIR@:$(libdir) -classpath $(javahl_compat_tests_PATH):$(javahl_tests_CLASSPATH) "-Dtest.tests=$(JAVAHL_TESTS)" org.tigris.subversion.javahl.RunTests
@@ -575,36 +574,24 @@ external-all external-install:
done;
### apr-util relies on generated files in apr, so reverse the
-### list so that it is cleaned before apr.
-external-clean external-distclean:
+### list so that it is cleaned before apr. also note that Neon does
+### not have an extraclean target, so get "close" with distclean
+external-clean external-distclean external-extraclean:
@target=`echo $@ | sed s/external-//`; \
list='$(SVN_EXTERNAL_PROJECT_SUBDIRS)'; \
for i in $$list; do \
revlist="$$i $$revlist"; \
done; \
for i in $$revlist; do \
- echo "------ making $$target in $$i"; \
- (cd $$i && $(MAKE) $$target) || exit 1; \
- echo "------ completed $$target in $$i"; \
- done;
-
-### temporary hack. Neon does not have an "extraclean" and neither does db
-### If we don't have extraclean -- do the next best thing.
-external-extraclean:
- @list='$(SVN_EXTERNAL_PROJECT_SUBDIRS)'; \
- for i in $$list; do \
- revlist="$$i $$revlist"; \
- done; \
- for i in $$revlist; do \
- if test "$$i" = "neon" || test "$$i" = "db/dist"; then \
- echo "------ making distclean(no extraclean) in $$i"; \
+ if test "$$i" = "neon" -a "$$target" = "extraclean"; then \
+ echo "------ making distclean (no extraclean) in $$i"; \
(cd $$i && $(MAKE) distclean) || exit 1; \
- echo "------ completed distclean(no extraclean) in $$i"; \
+ echo "------ completed distclean (no extraclean) in $$i"; \
else \
- echo "------ making extraclean in $$i"; \
- (cd $$i && $(MAKE) extraclean) || exit 1; \
- echo "------ completed extraclean in $$i"; \
- fi; \
+ echo "------ making $$target in $$i"; \
+ (cd $$i && $(MAKE) $$target) || exit 1; \
+ echo "------ completed $$target in $$i"; \
+ fi; \
done;
@@ -729,10 +716,15 @@ 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
+
+extraclean-bindings: clean-swig extraclean-swig-headers \
+ extraclean-swig-py extraclean-swig-rb \
+ extraclean-swig-pl \
+ clean-ctypes-python clean-javahl \
+
clean-swig: clean-swig-headers clean-swig-py clean-swig-rb clean-swig-pl
@rm -f .swig_checked
-extraclean-swig: extraclean-swig-headers extraclean-swig-py \
- extraclean-swig-rb extraclean-swig-pl
EXTRACLEAN_SWIG_HEADERS=rm -f $(SWIG_SRC_DIR)/proxy/*.swg
@@ -866,8 +858,6 @@ clean-ctypes-python:
cd $(CTYPES_PYTHON_SRC_DIR); \
$(PYTHON) setup.py clean --all
-extraclean-ctypes-python: clean-ctypes-python
-
# manually describe a dependency, which we won't otherwise detect
subversion/libsvn_wc/wc-queries.h: $(abs_srcdir)/subversion/libsvn_wc/wc-metadata.sql
Modified: subversion/branches/ev2-export/build.conf
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build.conf?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/build.conf (original)
+++ subversion/branches/ev2-export/build.conf Tue Apr 3 13:32:48 2012
@@ -368,7 +368,7 @@ type = apache-mod
path = tools/server-side/mod_dontdothat
nonlibs = mod_dav_svn apr aprutil
libs = libsvn_subr xml
-install = apache-mod
+install = tools
msvc-libs = libhttpd.lib
# ----------------------------------------------------------------------------
@@ -744,6 +744,14 @@ sources = config-test.c
install = test
libs = libsvn_test libsvn_subr apriconv apr
+[crypto-test]
+description = Test svn_crypto utilities
+type = exe
+path = subversion/tests/libsvn_subr
+sources = crypto-test.c
+install = test
+libs = libsvn_test libsvn_subr aprutil apr
+
[dirent_uri-test]
description = Test dirent_uri library
type = exe
@@ -1133,7 +1141,7 @@ libs = __ALL__
strings-reps-test changes-test locks-test repos-test
checksum-test compat-test config-test hashdump-test mergeinfo-test
opt-test path-test stream-test string-test time-test utf-test
- target-test error-test cache-test spillbuf-test
+ target-test error-test cache-test spillbuf-test crypto-test
revision-test
subst_translate-test
translate-test
Modified: subversion/branches/ev2-export/build/ac-macros/serf.m4
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/ac-macros/serf.m4?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/build/ac-macros/serf.m4 (original)
+++ subversion/branches/ev2-export/build/ac-macros/serf.m4 Tue Apr 3 13:32:48 2012
@@ -32,14 +32,14 @@ AC_DEFUN(SVN_LIB_SERF,
serf_check_patch="$3"
AC_ARG_WITH(serf,AS_HELP_STRING([--with-serf=PREFIX],
- [Serf WebDAV client library]),
+ [Serf HTTP client library]),
[
if test "$withval" = "yes" ; then
AC_MSG_ERROR([--with-serf requires an argument.])
elif test "$withval" != "no" ; then
AC_MSG_NOTICE([serf library configuration])
serf_prefix=$withval
- for serf_major in serf-2 serf-1 serf-0; do
+ for serf_major in serf-2 serf-1; do
if ! test -d $serf_prefix/include/$serf_major; then continue; fi
save_cppflags="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES $SVN_APRUTIL_INCLUDES -I$serf_prefix/include/$serf_major"
@@ -62,20 +62,7 @@ AC_DEFUN(SVN_LIB_SERF,
test $serf_found = yes && break
done
fi
- ], [
- if test -d "$srcdir/serf"; then
- serf_found=reconfig
- fi
- ])
-
-
- if test $serf_found = "reconfig"; then
- SVN_EXTERNAL_PROJECT([serf], [--with-apr=$apr_config --with-apr-util=$apu_config])
- serf_major=serf-`$srcdir/serf/build/get-version.sh major $srcdir/serf/serf.h SERF`
- serf_prefix=$prefix
- SVN_SERF_INCLUDES="-I$srcdir/serf"
- SVN_SERF_LIBS="$abs_builddir/serf/lib$serf_major.la"
- fi
+ ])
if test $serf_found = "yes"; then
SVN_SERF_INCLUDES="-I$serf_prefix/include/$serf_major"
@@ -85,8 +72,6 @@ AC_DEFUN(SVN_LIB_SERF,
SVN_SERF_LIBS="-l$serf_major"
LDFLAGS="$LDFLAGS -L$serf_prefix/lib"
fi
- elif test $serf_found = "reconfig"; then
- serf_found=yes
fi
svn_lib_serf=$serf_found
Modified: subversion/branches/ev2-export/build/generator/gen_make.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/gen_make.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/build/generator/gen_make.py (original)
+++ subversion/branches/ev2-export/build/generator/gen_make.py Tue Apr 3 13:32:48 2012
@@ -369,18 +369,21 @@ class Generator(gen_base.GeneratorBase):
# get the output files for these targets, sorted in dependency order
files = gen_base._sorted_files(self.graph, area)
- ezt_area = _eztdata(type=area, files=[ ], extra_install=None)
+ ezt_area = _eztdata(type=area, files=[ ], apache_files=[ ],
+ extra_install=None)
- if area == 'apache-mod':
- data.areas.append(ezt_area)
-
- for file in files:
+ def apache_file_to_eztdata(file):
# cd to dirname before install to work around libtool 1.4.2 bug.
dirname, fname = build_path_splitfile(file)
base, ext = os.path.splitext(fname)
name = base.replace('mod_', '')
- ezt_area.files.append(_eztdata(fullname=file, dirname=dirname,
- name=name, filename=fname))
+ return _eztdata(fullname=file, dirname=dirname,
+ name=name, filename=fname)
+ if area == 'apache-mod':
+ data.areas.append(ezt_area)
+
+ for file in files:
+ ezt_area.files.append(apache_file_to_eztdata(file))
elif area != 'test' and area != 'bdb-test':
data.areas.append(ezt_area)
@@ -390,6 +393,14 @@ class Generator(gen_base.GeneratorBase):
ezt_area.varname = area_var
ezt_area.uppervar = upper_var
+ # ### TODO: This is a hack. See discussion here:
+ # ### http://mid.gmane.org/20120316191639.GA28451@daniel3.local
+ apache_files = [t.filename for t in inst_targets
+ if isinstance(t, gen_base.TargetApacheMod)]
+
+ files = [f for f in files if f not in apache_files]
+ for file in apache_files:
+ ezt_area.apache_files.append(apache_file_to_eztdata(file))
for file in files:
# cd to dirname before install to work around libtool 1.4.2 bug.
dirname, fname = build_path_splitfile(file)
Modified: subversion/branches/ev2-export/build/generator/templates/makefile.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/makefile.ezt?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/build/generator/templates/makefile.ezt (original)
+++ subversion/branches/ev2-export/build/generator/templates/makefile.ezt Tue Apr 3 13:32:48 2012
@@ -126,11 +126,12 @@ $([target.varname]_OBJECTS): $([target.v
[for areas]
[is areas.type "apache-mod"]install-mods-shared:[for areas.files] [areas.files.fullname][end][for areas.files]
cd [areas.files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR)" ; $(INSTALL_MOD_SHARED) -n [areas.files.name] [areas.files.filename][end]
-[else]install-[areas.type]: [for areas.files][if-index areas.files first][else] [end][areas.files.fullname][end]
+[else]install-[areas.type]: [for areas.files][if-index areas.files first][else] [end][areas.files.fullname][end] [for areas.apache_files] [areas.apache_files.fullname][end]
$(MKDIR) $(DESTDIR)$([areas.varname]dir)[for areas.files][is areas.type "locale"]
$(MKDIR) [areas.files.installdir]
cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] [areas.files.installdir]/$(PACKAGE_NAME)[areas.files.objext][else]
- cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] $(DESTDIR)[areas.files.install_fname][end][end]
+ cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] $(DESTDIR)[areas.files.install_fname][end][end][for areas.apache_files]
+ cd [areas.apache_files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR_TOOLS)" ; $(INSTALL_MOD_SHARED_TOOLS) -n [areas.apache_files.name] [areas.apache_files.filename][end]
[if-any areas.extra_install] $(INSTALL_EXTRA_[areas.uppervar])
[end][end][end]
Modified: subversion/branches/ev2-export/build/run_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/run_tests.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/build/run_tests.py (original)
+++ subversion/branches/ev2-export/build/run_tests.py Tue Apr 3 13:32:48 2012
@@ -393,6 +393,10 @@ class TestHarness:
line = prog.stdout.readline()
+ # If we didn't run any tests, still print out the dots
+ if not tests_completed:
+ os.write(sys.stdout.fileno(), '.' * dot_count)
+
prog.wait()
return prog.returncode
Modified: subversion/branches/ev2-export/configure.ac
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/configure.ac?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/configure.ac (original)
+++ subversion/branches/ev2-export/configure.ac Tue Apr 3 13:32:48 2012
@@ -138,7 +138,7 @@ if test "$svn_lib_neon" = "yes"; then
fi
dnl Search for serf as an alternative to neon
-SVN_LIB_SERF(0,7,1)
+SVN_LIB_SERF(1,0,0)
if test "$svn_lib_serf" = "yes"; then
AC_DEFINE([SVN_HAVE_SERF], 1,
@@ -654,6 +654,19 @@ AC_SUBST(SVN_GNOME_KEYRING_INCLUDES)
AC_SUBST(SVN_GNOME_KEYRING_LIBS)
+dnl Ev2 experimental feature ----------------------
+dnl Note: The Ev2 compat code will be built unconditionally, but by providing
+dnl this flag, users can enforce Ev2 compliance for testing purposes
+AC_ARG_ENABLE(ev2-shims,
+ AS_HELP_STRING([--enable-ev2-shims],
+ [Compile with Ev2 translation [EXPERIMENTAL]]),
+ [enable_ev2_shims=$enableval],[enable_ev2_shims=no])
+if test "$enable_ev2_shims" = "yes"; then
+ AC_DEFINE(ENABLE_EV2_SHIMS, 1,
+ [Define to 1 if Ev2 should be interjected into editor stacks.])
+fi
+
+
dnl I18n -------------------
AC_ARG_ENABLE(nls,
Modified: subversion/branches/ev2-export/notes/moves
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/notes/moves?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/notes/moves (original)
+++ subversion/branches/ev2-export/notes/moves Tue Apr 3 13:32:48 2012
@@ -39,29 +39,22 @@ The following columns in the NODES table
moves from copies:
/* Boolean value, specifying if this node was moved here (rather than just
- copied). The source of the move is implied by a different node with
- a moved_to column pointing at this node. */
+ copied). This is set on all the nodes in the moved tree. The source of
+ the move is implied by a different node with a moved_to column pointing
+ at the root node of the moved tree. */
moved_here INTEGER,
/* If the underlying node was moved away (rather than just deleted), this
- specifies the local_relpath of where the BASE node was moved to.
+ specifies the local_relpath of where the node was moved to.
This is set only on the root of a move, and is NULL for all children.
- Note that moved_to never refers to *this* node. It always refers
- to the "underlying" node in the BASE tree. A non-NULL moved_to column
- is only valid in rows where op_depth == 0. */
+ The op-depth of the moved-to node is not recorded. A moved_to path
+ always points at a node within the highest op-depth layer at the
+ destination. This invariant must be maintained by operations which
+ change existing move information. */
moved_to TEXT,
-Some new queries were added which use these columns:
-
- STMT_SELECT_MOVED_FROM_RELPATH
- STMT_UPDATE_MOVED_TO_RELPATH
- STMT_CLEAR_MOVED_TO_RELPATH
- STMT_CLEAR_MOVED_TO_RELPATH_RECURSIVE
- STMT_SELECT_MOVED_HERE_CHILDREN
-
-More queries might be needed (TBD).
-
+Many queries were added or changed to use these columns.
== libsvn_wc ==
@@ -81,6 +74,8 @@ private libsvn_wc API:
the node at the moved_from abspath
More API changes might be needed (TBD).
+In particular, scan_deletion may need to return a list of moves
+in the multi-layer case (http://wiki.apache.org/subversion/MultiLayerMoves)
We might require a working copy upgrade when going from 1.7 to 1.8,
and only allow new move functionality to be used with 1.8 working copies.
Modified: subversion/branches/ev2-export/notes/ra-serf-testing.txt
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/notes/ra-serf-testing.txt?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/notes/ra-serf-testing.txt (original)
+++ subversion/branches/ev2-export/notes/ra-serf-testing.txt Tue Apr 3 13:32:48 2012
@@ -1,3 +1,5 @@
+[ THE CUSTOM TESTING CODE DESCRIBED BELOW WAS REMOVED in r1302567 ]
+
For the 1.7 release, ra_serf grew a new internal feature to "pause"
the parsing of (large) XML response bodies. This file intends to
document the strategy for testing this new feature.
Modified: subversion/branches/ev2-export/notes/subversion-design.html
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/notes/subversion-design.html?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/notes/subversion-design.html (original)
+++ subversion/branches/ev2-export/notes/subversion-design.html Tue Apr 3 13:32:48 2012
@@ -2340,7 +2340,10 @@ write/Makefile:6
<p>Once you've done this, read Jim Blandy's own structural overview,
which explains how nodes and revisions are organized (among other
things) in the filesystem implementation:
- <tt class="filename">subversion/libsvn_fs_base/notes/structure</tt>.</p>
+ <tt class="filename">subversion/libsvn_fs_base/notes/structure</tt>.
+ (Some details in that document are specific to the BDB-based
+ filesystem implementation. Details specific to FSFS are recorded in
+ <tt class="filename">subversion/libsvn_fs_fs/structure</tt>.)</p>
<p>Finally, read the well-documented API in
<tt class="filename">subversion/include/svn_fs.h</tt>.</p>
Modified: subversion/branches/ev2-export/notes/wc-ng/conflict-storage
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/notes/wc-ng/conflict-storage?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/notes/wc-ng/conflict-storage (original)
+++ subversion/branches/ev2-export/notes/wc-ng/conflict-storage Tue Apr 3 13:32:48 2012
@@ -200,7 +200,7 @@ Tree conflicts
Tree conflicts exist on files or directories.
### JAF: And symlinks, I presume - or, if not, why not?
-### stsp: Symlinks are resolved before retreiving conflict information.,
+### stsp: Symlinks are resolved before retreiving conflict information.
The following information is stored if there is a tree conflict on the node:
@@ -212,8 +212,18 @@ The following information is stored if t
LOCAL_CHANGE is the local change which conflicted with the
incoming change during the operation. Possible values are "edit", "add",
-"delete", "rename", "replace", "obstructed", "missing", and "unversioned"
-(### possibly collapse "unversioned" with "obstructed"?).
+"delete", "rename", "replace", "obstructed", "missing", "unversioned",
+"moved-away", "moved-here", and "copied-here".
+
+### possibly collapse "unversioned" with "obstructed"?
+
+### what is "replace"? we should probably have "replace-add",
+### "replace-moved-away", "replace-moved-here", and "replace-copied-here"
+### hrm. this probably isn't the right representation. "replace-add"
+### says how the new node arrived, but not how the original departed.
+### was it a deleted or moved-away? for example, a local-deleted
+### followed by an add, followed by an incoming-delete should probably
+### be deemed "no conflict".
ORIGINAL_NODE_KIND is the kind of the node in the BASE tree.
MINE_NODE_KIND is the kind of the node from the WORKING tree at the
@@ -221,7 +231,9 @@ time the conflict was flagged.
INCOMING_CHANGE is the incoming change which conflicted with the
local change during the operation. Possible values are "edit", "add",
-"delete", "rename", and "replace".
+"delete", "rename", "replace", "moved-away", "moved-here", and
+"copied-here".
+### see concerns above about LOCAL_CHANGE.
The *_SHA1 sum fields are only present if {ORIGINAL,MINE,INCOMING}_NODE_KIND
is "file".
Modified: subversion/branches/ev2-export/subversion/bindings/javahl/README
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/javahl/README?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/javahl/README (original)
+++ subversion/branches/ev2-export/subversion/bindings/javahl/README Tue Apr 3 13:32:48 2012
@@ -5,7 +5,7 @@ JavaHL provides a (mostly native, using
a high level Java API for Subversion, which was originally targeted for
implementors of GUI clients and IDE plug-ins for Subversion. JavaHL
currently provides a minimal-but-complete set of APIs which expose the
-core Subversion C API to Java. It requires a JRE 1.2+ (runtime).
+core Subversion C API to Java. It requires a JRE 1.5+ (runtime).
It is currently quite mature, and can be considered for production use.
@@ -14,7 +14,7 @@ Build system
------------
JavaHL should compile and run under Linux, Win32, and Mac OS X with a
-JDK 1.3+.
+JDK 1.5+.
Its build will produce both a native library (libsvnjavahl-1.so on Unix
or libsvnjavahl-1.dll on Win32) and a platform independent archive of
@@ -62,9 +62,6 @@ Success stories
Subclipse, Eclipse IDE plug-in <http://subclipse.tigris.org/>
-Svn-Up, Swing GUI and plug-in for the IDEA IDE
-<http://svnup.tigris.org/>
-
Why not 100% pure Java?
-----------------------
Modified: subversion/branches/ev2-export/subversion/bindings/swig/perl/native/t/3client.t
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/perl/native/t/3client.t?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/perl/native/t/3client.t (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/perl/native/t/3client.t Tue Apr 3 13:32:48 2012
@@ -58,7 +58,12 @@ my $current_rev = 0;
$SVN::Error::handler = undef;
# Get username we are running as
-my $username = getlogin() || getpwuid($>);
+my $username;
+if ($^O eq 'MSWin32') {
+ $username = getlogin();
+} else {
+ $username = getpwuid($>) || getlogin();
+}
# This is ugly to create the test repo with SVN::Repos, but
# it seems to be the most reliable way.
@@ -337,8 +342,14 @@ is($ctx->blame("$reposurl/foo",'HEAD','H
'author param is expected' .
'value');
ok($date,'date is defined');
- is($line,'foobar',
- 'line is expected value');
+ if ($^O eq 'MSWin32') {
+ #### Why two \r-s?
+ is($line,"foobar\r\r",
+ 'line is expected value');
+ } else {
+ is($line,'foobar',
+ 'line is expected value');
+ }
isa_ok($pool,'_p_apr_pool_t',
'pool param is ' .
'_p_apr_pool_t');
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/client.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/client.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/client.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/client.py Tue Apr 3 13:32:48 2012
@@ -27,4 +27,5 @@ from libsvn.client import *
from svn.core import _unprefix_names
_unprefix_names(locals(), 'svn_client_')
_unprefix_names(locals(), 'SVN_CLIENT_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/core.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/core.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/core.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/core.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,44 @@ from libsvn.core import *
import libsvn.core as _libsvncore
import atexit as _atexit
import sys
+__all__ = [
+ # Symbols that 'import *' used to pull (in 1.7)
+ 'Pool',
+ 'SVNSYNC_PROP_CURRENTLY_COPYING',
+ 'SVNSYNC_PROP_FROM_URL',
+ 'SVNSYNC_PROP_FROM_UUID',
+ 'SVNSYNC_PROP_LAST_MERGED_REV',
+ 'SVNSYNC_PROP_LOCK',
+ 'SVNSYNC_PROP_PREFIX',
+ 'SubversionException',
+ # 'apr_array_header_t',
+ # 'apr_file_open_stderr',
+ # 'apr_file_open_stdout',
+ # 'apr_file_t',
+ # 'apr_hash_t',
+ # 'apr_initialize',
+ # 'apr_pool_clear',
+ # 'apr_pool_destroy',
+ # 'apr_pool_t',
+ # 'apr_terminate',
+ # 'apr_time_ansi_put',
+ # 'run_app',
+
+ # Symbols defined explicitly below.
+ 'SVN_IGNORED_REVNUM',
+ 'SVN_INVALID_REVNUM',
+ 'svn_path_compare_paths',
+ 'svn_mergeinfo_merge',
+ 'svn_mergeinfo_sort',
+ 'svn_rangelist_merge',
+ 'svn_rangelist_reverse',
+ # 'Stream',
+ # 'apr_initialize',
+ # 'apr_terminate',
+ 'svn_pool_create',
+ 'svn_pool_destroy',
+ 'svn_pool_clear',
+]
class SubversionException(Exception):
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/delta.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/delta.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/delta.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/delta.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,7 @@ from libsvn.delta import *
from svn.core import _unprefix_names
_unprefix_names(locals(), 'svn_delta_')
_unprefix_names(locals(), 'svn_txdelta_', 'tx_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
# Force our accessor since it appears that there isn't a more civilized way
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/diff.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/diff.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/diff.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/diff.py Tue Apr 3 13:32:48 2012
@@ -26,4 +26,5 @@
from libsvn.diff import *
from svn.core import _unprefix_names
_unprefix_names(locals(), 'svn_diff_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/fs.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/fs.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/fs.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/fs.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,7 @@ from libsvn.fs import *
from svn.core import _unprefix_names, Pool
_unprefix_names(locals(), 'svn_fs_')
_unprefix_names(locals(), 'SVN_FS_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/ra.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/ra.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/ra.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/ra.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,7 @@ from libsvn.ra import *
from svn.core import _unprefix_names
_unprefix_names(locals(), 'svn_ra_')
_unprefix_names(locals(), 'SVN_RA_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
class Callbacks:
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/repos.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/repos.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/repos.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/repos.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,7 @@ from libsvn.repos import *
from svn.core import _unprefix_names, Pool
_unprefix_names(locals(), 'svn_repos_')
_unprefix_names(locals(), 'SVN_REPOS_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/svn/wc.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/svn/wc.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/svn/wc.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/svn/wc.py Tue Apr 3 13:32:48 2012
@@ -27,6 +27,7 @@ from libsvn.wc import *
from svn.core import _unprefix_names
_unprefix_names(locals(), 'svn_wc_')
_unprefix_names(locals(), 'SVN_WC_')
+__all__ = filter(lambda x: x.lower().startswith('svn_'), locals().keys())
del _unprefix_names
Modified: subversion/branches/ev2-export/subversion/bindings/swig/python/tests/pool.py
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/python/tests/pool.py?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/python/tests/pool.py (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/python/tests/pool.py Tue Apr 3 13:32:48 2012
@@ -195,10 +195,10 @@ class PoolTestCase(unittest.TestCase):
self.assertNone(anonymous_pool_ref())
# Try to cause a segfault using apr_terminate
- apr_terminate()
- apr_initialize()
- apr_terminate()
- apr_terminate()
+ svn.core.apr_terminate()
+ svn.core.apr_initialize()
+ svn.core.apr_terminate()
+ svn.core.apr_terminate()
# Destroy the application pool
svn_pool_destroy(libsvn.core.application_pool)
Modified: subversion/branches/ev2-export/subversion/bindings/swig/ruby/svn/fs.rb
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/ruby/svn/fs.rb?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/ruby/svn/fs.rb (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/ruby/svn/fs.rb Tue Apr 3 13:32:48 2012
@@ -415,7 +415,7 @@ module Svn
ignore_ancestry)
end
- def replay(editor, base_dir=nil, low_water_mark=nil, send_deltas=false,
+ def replay(editor, base_dir=nil, low_water_mark=nil, send_deltas=true,
&callback)
base_dir ||= ""
low_water_mark ||= Core::INVALID_REVNUM
Modified: subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/test_repos.rb
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/test_repos.rb?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/test_repos.rb (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/test_repos.rb Tue Apr 3 13:32:48 2012
@@ -94,7 +94,7 @@ class SvnReposTest < Test::Unit::TestCas
end
def test_create
- tmp_repos_path = File.join(@tmp_path, "repos")
+ tmp_repos_path = File.join(@tmp_path, "repos2")
fs_type = Svn::Fs::TYPE_FSFS
fs_config = {Svn::Fs::CONFIG_FS_TYPE => fs_type}
repos = nil
Modified: subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/util.rb
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/util.rb?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/util.rb (original)
+++ subversion/branches/ev2-export/subversion/bindings/swig/ruby/test/util.rb Tue Apr 3 13:32:48 2012
@@ -37,15 +37,17 @@ module SvnTestUtil
@author = ENV["USER"] || "sample-user"
@password = "sample-password"
@realm = "sample realm"
- @repos_path = "repos"
- @full_repos_path = File.expand_path(@repos_path)
- @repos_uri = "file://#{@full_repos_path.sub(/^\/?/, '/')}"
+
@svnserve_host = "127.0.0.1"
@svnserve_ports = (64152..64282).collect{|x| x.to_s}
- @wc_base_dir = Dir.mktmpdir
- @wc_path = File.join(@wc_base_dir, "wc")
+
+ @tmp_path = Dir.mktmpdir
+ @wc_path = File.join(@tmp_path, "wc")
@full_wc_path = File.expand_path(@wc_path)
- @tmp_path = "tmp"
+ @repos_path = File.join(@tmp_path, "repos")
+ @full_repos_path = File.expand_path(@repos_path)
+ @repos_uri = "file://#{@full_repos_path.sub(/^\/?/, '/')}"
+
@config_path = "config"
@greek = Greek.new(@tmp_path, @wc_path, @repos_uri)
end
@@ -140,7 +142,7 @@ module SvnTestUtil
end
def teardown_wc
- remove_recursively_with_retry(@wc_base_dir)
+ remove_recursively_with_retry(@wc_path)
end
def setup_config
Modified: subversion/branches/ev2-export/subversion/include/private/svn_auth_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_auth_private.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_auth_private.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_auth_private.h Tue Apr 3 13:32:48 2012
@@ -82,36 +82,45 @@ typedef svn_error_t * (*svn_auth__passwo
svn_boolean_t non_interactive,
apr_pool_t *pool);
-/* Common implementation for simple_first_creds and
- windows_simple_first_creds. Uses PARAMETERS, REALMSTRING and the
- simple auth provider's username and password cache to fill a set of
- CREDENTIALS. PASSWORD_GET is used to obtain the password value.
- PASSTYPE identifies the type of the cached password. CREDENTIALS are
- allocated from POOL. */
-svn_error_t *
-svn_auth__simple_first_creds_helper(void **credentials,
- void **iter_baton,
- void *provider_baton,
- apr_hash_t *parameters,
- const char *realmstring,
- svn_auth__password_get_t password_get,
- const char *passtype,
- apr_pool_t *pool);
-
-/* Common implementation for simple_save_creds and
- windows_simple_save_creds. Uses PARAMETERS and REALMSTRING to save
- a set of CREDENTIALS to the simple auth provider's username and
- password cache. PASSWORD_SET is used to store the password.
- PASSTYPE identifies the type of the cached password. Allocates from POOL. */
-svn_error_t *
-svn_auth__simple_save_creds_helper(svn_boolean_t *saved,
- void *credentials,
- void *provider_baton,
- apr_hash_t *parameters,
- const char *realmstring,
- svn_auth__password_set_t password_set,
- const char *passtype,
- apr_pool_t *pool);
+/* Use PARAMETERS and REALMSTRING to set *CREDENTIALS to a set of
+ pre-cached authentication credentials pulled from the simple
+ credential cache store identified by PASSTYPE. PASSWORD_GET is
+ used to obtain the password value. Allocate *CREDENTIALS from
+ POOL.
+
+ NOTE: This function is a common implementation of code used by
+ several of the simple credential providers (the default disk cache
+ mechanism, Windows CryptoAPI, GNOME Keyring, etc.), typically in
+ their "first_creds" implementation. */
+svn_error_t *
+svn_auth__simple_creds_cache_get(void **credentials,
+ void **iter_baton,
+ void *provider_baton,
+ apr_hash_t *parameters,
+ const char *realmstring,
+ svn_auth__password_get_t password_get,
+ const char *passtype,
+ apr_pool_t *pool);
+
+/* Use PARAMETERS and REALMSTRING to save CREDENTIALS in the simple
+ credential cache store identified by PASSTYPE. PASSWORD_SET is
+ used to do the actual storage. Use POOL for necessary allocations.
+ Set *SAVED according to whether or not the credentials were
+ successfully stored.
+
+ NOTE: This function is a common implementation of code used by
+ several of the simple credential providers (the default disk cache
+ mechanism, Windows CryptoAPI, GNOME Keyring, etc.) typically in
+ their "save_creds" implementation. */
+svn_error_t *
+svn_auth__simple_creds_cache_set(svn_boolean_t *saved,
+ void *credentials,
+ void *provider_baton,
+ apr_hash_t *parameters,
+ const char *realmstring,
+ svn_auth__password_set_t password_set,
+ const char *passtype,
+ apr_pool_t *pool);
/* Implementation of svn_auth__password_get_t that retrieves
the plaintext password from CREDS when USERNAME matches the stored
@@ -139,39 +148,45 @@ svn_auth__simple_password_set(svn_boolea
apr_pool_t *pool);
-/* Common implementation for ssl_client_cert_pw_file_first_credentials.
- Uses PARAMETERS, REALMSTRING and the ssl client passphrase auth provider's
- passphrase cache to fill the CREDENTIALS. PASSPHRASE_GET is used to obtain
- the passphrase value. PASSTYPE identifies the type of the cached passphrase.
- CREDENTIALS are allocated from POOL. */
-svn_error_t *
-svn_auth__ssl_client_cert_pw_file_first_creds_helper
- (void **credentials,
- void **iter_baton,
- void *provider_baton,
- apr_hash_t *parameters,
- const char *realmstring,
- svn_auth__password_get_t passphrase_get,
- const char *passtype,
- apr_pool_t *pool);
-
-/* Common implementation for ssl_client_cert_pw_file_save_credentials and
- windows_ssl_client_cert_pw_file_save_credentials. Uses PARAMETERS and
- REALMSTRING to save a set of CREDENTIALS to the ssl client cert auth
- provider's passphrase cache. PASSPHRASE_SET is used to store the
- passphrase. PASSTYPE identifies the type of the cached passphrase.
- Allocates from POOL. */
-svn_error_t *
-svn_auth__ssl_client_cert_pw_file_save_creds_helper
- (svn_boolean_t *saved,
- void *credentials,
- void *provider_baton,
- apr_hash_t *parameters,
- const char *realmstring,
- svn_auth__password_set_t passphrase_set,
- const char *passtype,
- apr_pool_t *pool);
-
+/* Use PARAMETERS and REALMSTRING to set *CREDENTIALS to a set of
+ pre-cached authentication credentials pulled from the SSL client
+ certificate passphrase credential cache store identified by
+ PASSTYPE. PASSPHRASE_GET is used to obtain the passphrase value.
+ Allocate *CREDENTIALS from POOL.
+
+ NOTE: This function is a common implementation of code used by
+ several of the ssl client passphrase credential providers (the
+ default disk cache mechanism, Windows CryptoAPI, GNOME Keyring,
+ etc.), typically in their "first_creds" implementation. */
+svn_error_t *
+svn_auth__ssl_client_cert_pw_cache_get(void **credentials,
+ void **iter_baton,
+ void *provider_baton,
+ apr_hash_t *parameters,
+ const char *realmstring,
+ svn_auth__password_get_t passphrase_get,
+ const char *passtype,
+ apr_pool_t *pool);
+
+/* Use PARAMETERS and REALMSTRING to save CREDENTIALS in the SSL
+ client certificate passphrase credential cache store identified by
+ PASSTYPE. PASSPHRASE_SET is used to do the actual storage. Use
+ POOL for necessary allocations. Set *SAVED according to whether or
+ not the credentials were successfully stored.
+
+ NOTE: This function is a common implementation of code used by
+ several of the simple credential providers (the default disk cache
+ mechanism, Windows CryptoAPI, GNOME Keyring, etc.) typically in
+ their "save_creds" implementation. */
+svn_error_t *
+svn_auth__ssl_client_cert_pw_cache_set(svn_boolean_t *saved,
+ void *credentials,
+ void *provider_baton,
+ apr_hash_t *parameters,
+ const char *realmstring,
+ svn_auth__password_set_t passphrase_set,
+ const char *passtype,
+ apr_pool_t *pool);
/* This implements the svn_auth__password_get_t interface.
Set **PASSPHRASE to the plaintext passphrase retrieved from CREDS;
Modified: subversion/branches/ev2-export/subversion/include/private/svn_cache.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_cache.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_cache.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_cache.h Tue Apr 3 13:32:48 2012
@@ -55,7 +55,7 @@ extern "C" {
* i.e. modify @a data directly and return it in @a *out.
*/
typedef svn_error_t *(*svn_cache__deserialize_func_t)(void **out,
- char *data,
+ void *data,
apr_size_t data_len,
apr_pool_t *result_pool);
@@ -67,7 +67,7 @@ typedef svn_error_t *(*svn_cache__deseri
* not require the whole structure to be processed.
*/
typedef svn_error_t *(*svn_cache__partial_getter_func_t)(void **out,
- const char *data,
+ const void *data,
apr_size_t data_len,
void *baton,
apr_pool_t *result_pool);
@@ -80,7 +80,7 @@ typedef svn_error_t *(*svn_cache__partia
* values must be passed back in @a *data_len and @a *data, respectively.
* Allocations will be done from @a result_pool.
*/
-typedef svn_error_t *(*svn_cache__partial_setter_func_t)(char **data,
+typedef svn_error_t *(*svn_cache__partial_setter_func_t)(void **data,
apr_size_t *data_len,
void *baton,
apr_pool_t *result_pool);
@@ -90,7 +90,7 @@ typedef svn_error_t *(*svn_cache__partia
* function should allocate the serialized value in @a result_pool, set
* @a *data to the serialized value, and set @a *data_len to its length.
*/
-typedef svn_error_t *(*svn_cache__serialize_func_t)(char **data,
+typedef svn_error_t *(*svn_cache__serialize_func_t)(void **data,
apr_size_t *data_len,
void *in,
apr_pool_t *result_pool);
Modified: subversion/branches/ev2-export/subversion/include/private/svn_client_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_client_private.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_client_private.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_client_private.h Tue Apr 3 13:32:48 2012
@@ -37,6 +37,30 @@ extern "C" {
#endif /* __cplusplus */
+/* A location in a repository. */
+typedef struct svn_client__pathrev_t
+{
+ const char *repos_root_url;
+ const char *repos_uuid;
+ svn_revnum_t rev;
+ const char *url;
+} svn_client__pathrev_t;
+
+/* Return a new path-rev structure, allocated in RESULT_POOL,
+ * initialized with deep copies of REPOS_ROOT_URL, REPOS_UUID, REV and URL. */
+svn_client__pathrev_t *
+svn_client__pathrev_create(const char *repos_root_url,
+ const char *repos_uuid,
+ svn_revnum_t rev,
+ const char *url,
+ apr_pool_t *result_pool);
+
+/* Return a deep copy of the path-rev LOC, allocated in RESULT_POOL. */
+svn_client__pathrev_t *
+svn_client__pathrev_dup(const svn_client__pathrev_t *loc,
+ apr_pool_t *result_pool);
+
+
/** Return @c SVN_ERR_ILLEGAL_TARGET if TARGETS contains a mixture of
* URLs and paths; otherwise return SVN_NO_ERROR.
*
@@ -82,6 +106,85 @@ svn_client__youngest_common_ancestor(con
apr_pool_t *result_pool,
apr_pool_t *scratch_pool);
+/* Set *REPOS_ROOT_URL_P, *REPOS_UUID_P, *REV and *URL to the origin of the
+ * WC node at WC_ABSPATH. If the node is a local copy, give the copy-from
+ * location. If the node is locally added or deleted, set *REV and *URL
+ * to SVN_INVALID_REVNUM and NULL respectively, but still give the correct
+ * repository root URL and UUID.
+ *
+ * Any outputs may be NULL if not wanted.
+ */
+svn_error_t *
+svn_client__wc_node_get_origin(const char **repos_root_url_p,
+ const char **repos_uuid_p,
+ svn_revnum_t *rev_p,
+ const char **url_p,
+ const char *wc_abspath,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
+/* A macro to mark sections of code that belong to the 'symmetric merge'
+ * feature while it's still new. */
+#ifdef SVN_DEBUG
+#define SVN_WITH_SYMMETRIC_MERGE
+#endif
+
+#ifdef SVN_WITH_SYMMETRIC_MERGE
+
+/* Details of a symmetric merge. */
+typedef struct svn_client__symmetric_merge_t svn_client__symmetric_merge_t;
+
+/* Find the information needed to merge all unmerged changes from a source
+ * branch into a target branch. The information is the locations of the
+ * youngest common ancestor, merge base, and such like.
+ *
+ * Set *MERGE to the information needed to merge all unmerged changes
+ * (up to SOURCE_REVISION) from the source branch SOURCE_PATH_OR_URL @
+ * SOURCE_REVISION into the target WC at TARGET_WCPATH.
+ */
+svn_error_t *
+svn_client__find_symmetric_merge(svn_client__symmetric_merge_t **merge,
+ const char *source_path_or_url,
+ const svn_opt_revision_t *source_revision,
+ const char *target_wcpath,
+ svn_boolean_t allow_mixed_rev,
+ svn_boolean_t allow_local_mods,
+ svn_boolean_t allow_switched_subtrees,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *result_pool,
+ apr_pool_t *scratch_pool);
+
+/* Perform a symmetric merge.
+ *
+ * Merge according to MERGE into the WC at TARGET_WCPATH.
+ *
+ * The other parameters are as in svn_client_merge4(). IGNORE_ANCESTRY
+ * only controls the diffing of files, it doesn't prevent mergeinfo from
+ * being used.
+ *
+ * ### TODO: There's little point in this function being the only way the
+ * caller can use the result of svn_client__find_symmetric_merge(). The
+ * contents of MERGE should be more public, or there should be other ways
+ * the caller can use it, or these two functions should be combined into
+ * one. I want to make it more public, and also possibly have more ways
+ * to use it in future (for example, do_symmetric_merge_with_step_by_-
+ * step_confirmation).
+ */
+svn_error_t *
+svn_client__do_symmetric_merge(const svn_client__symmetric_merge_t *merge,
+ const char *target_wcpath,
+ svn_depth_t depth,
+ svn_boolean_t ignore_ancestry,
+ svn_boolean_t force,
+ svn_boolean_t record_only,
+ svn_boolean_t dry_run,
+ const apr_array_header_t *merge_options,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+#endif /* SVN_WITH_SYMMETRIC_MERGE */
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
Modified: subversion/branches/ev2-export/subversion/include/private/svn_mergeinfo_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_mergeinfo_private.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_mergeinfo_private.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_mergeinfo_private.h Tue Apr 3 13:32:48 2012
@@ -99,9 +99,10 @@ svn_mergeinfo__remove_empty_rangelists(s
/* Make a shallow (ie, mergeinfos are not duped, or altered at all;
keys share storage) copy of IN_CATALOG in *OUT_CATALOG, removing
- PREFIX_PATH (which is an absolute path) from the beginning of each
- key in the catalog (each of which is also an absolute path). It is
- illegal for any key to not start with PREFIX_PATH. The new hash
+ PREFIX_PATH from the beginning of each key in the catalog.
+ PREFIX_PATH and the keys of IN_CATALOG are absolute 'fspaths',
+ starting with '/'. It is illegal for any key to not start with
+ PREFIX_PATH. The keys of *OUT_CATALOG are relpaths. The new hash
and temporary values are allocated in POOL. (This is useful for
making the return value from svn_ra_get_mergeinfo relative to the
session root, say.) */
Modified: subversion/branches/ev2-export/subversion/include/private/svn_mutex.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_mutex.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_mutex.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_mutex.h Tue Apr 3 13:32:48 2012
@@ -103,13 +103,11 @@ svn_mutex__unlock(svn_mutex__t *mutex,
* @note Prefer using this macro instead of explicit lock aquisition and
* release.
*/
-#define SVN_MUTEX__WITH_LOCK(mutex, expr) \
-do { \
- svn_mutex__t *m = (mutex); \
- svn_error_t *e = svn_mutex__lock(m); \
- if (e) return svn_error_trace(e); \
- e = svn_mutex__unlock(m, (expr)); \
- if (e) return svn_error_trace(e); \
+#define SVN_MUTEX__WITH_LOCK(mutex, expr) \
+do { \
+ svn_mutex__t *svn_mutex__m = (mutex); \
+ SVN_ERR(svn_mutex__lock(svn_mutex__m)); \
+ SVN_ERR(svn_mutex__unlock(svn_mutex__m, (expr))); \
} while (0)
#ifdef __cplusplus
Modified: subversion/branches/ev2-export/subversion/include/private/svn_wc_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/private/svn_wc_private.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/private/svn_wc_private.h (original)
+++ subversion/branches/ev2-export/subversion/include/private/svn_wc_private.h Tue Apr 3 13:32:48 2012
@@ -477,8 +477,9 @@ svn_wc__node_get_url(const char **url,
/**
* Retrieves the origin of the node as it is known in the repository. For
- * added nodes this retrieves where the node is copied from, and the repository
- * location for other nodes.
+ * a copied node this retrieves where the node is copied from, for an added
+ * node this returns NULL/INVALID outputs, and for any other node this
+ * retrieves the repository location.
*
* All output arguments may be NULL.
*
@@ -837,7 +838,7 @@ svn_wc__call_with_write_lock(svn_wc__wit
SVN_ERR(svn_wc__acquire_write_lock(&svn_wc__lock_root_abspath, wc_ctx, \
local_abspath, lock_anchor, \
scratch_pool, scratch_pool)); \
- svn_wc__err1 = svn_error_trace(expr); \
+ svn_wc__err1 = (expr); \
svn_wc__err2 = svn_wc__release_write_lock( \
wc_ctx, svn_wc__lock_root_abspath, scratch_pool); \
SVN_ERR(svn_error_compose_create(svn_wc__err1, svn_wc__err2)); \
Modified: subversion/branches/ev2-export/subversion/include/svn_client.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_client.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_client.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_client.h Tue Apr 3 13:32:48 2012
@@ -1768,6 +1768,30 @@ svn_client_delete(svn_client_commit_info
* @{
*/
+/**
+ * The callback invoked by svn_client_import5() before adding a node to the
+ * list of nodes to be imported.
+ *
+ * @a baton is the value passed to @a svn_client_import5 as filter_baton.
+ *
+ * The callback receives the @a local_abspath for each node and the @a dirent
+ * for it when walking the directory tree. Only the kind of node, including
+ * special status is available in @a dirent.
+ *
+ * Implementations can set @a *filtered to TRUE, to make the import filter the
+ * node and (if the node is a directory) all its descendants.
+ *
+ * @a scratch_pool can be used for temporary allocations.
+ *
+ * @since New in 1.8.
+ */
+typedef svn_error_t *(*svn_client_import_filter_func_t)(
+ void *baton,
+ svn_boolean_t *filtered,
+ const char *local_abspath,
+ const svn_io_dirent2_t *dirent,
+ apr_pool_t *scratch_pool);
+
/** Import file or directory @a path into repository directory @a url at
* head, authenticating with the authentication baton cached in @a ctx,
* and using @a ctx->log_msg_func3/@a ctx->log_msg_baton3 to get a log message
@@ -1823,12 +1847,38 @@ svn_client_delete(svn_client_commit_info
* If @a ignore_unknown_node_types is @c FALSE, ignore files of which the
* node type is unknown, such as device files and pipes.
*
+ * If @a filter_callback is non-NULL, call it for each node that isn't ignored
+ * for other reasons with @a filter_baton, to allow third party to ignore
+ * specific nodes during importing.
+ *
* If @a commit_callback is non-NULL, then for each successful commit, call
* @a commit_callback with @a commit_baton and a #svn_commit_info_t for
* the commit.
*
+ * @since New in 1.8.
+ */
+svn_error_t *
+svn_client_import5(const char *path,
+ const char *url,
+ svn_depth_t depth,
+ svn_boolean_t no_ignore,
+ svn_boolean_t ignore_unknown_node_types,
+ const apr_hash_t *revprop_table,
+ svn_client_import_filter_func_t filter_callback,
+ void *filter_baton,
+ svn_commit_callback2_t commit_callback,
+ void *commit_baton,
+ svn_client_ctx_t *ctx,
+ apr_pool_t *scratch_pool);
+
+/**
+ * Similar to svn_client_import5(), but without support for an optional
+ * @a filter_callback.
+ *
* @since New in 1.7.
+ * @deprecated Provided for backward compatibility with the 1.7 API.
*/
+SVN_DEPRECATED
svn_error_t *
svn_client_import4(const char *path,
const char *url,
Modified: subversion/branches/ev2-export/subversion/include/svn_delta.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_delta.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_delta.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_delta.h Tue Apr 3 13:32:48 2012
@@ -1347,6 +1347,8 @@ typedef svn_error_t *(*svn_delta_path_dr
* Use @a revision as the revision number passed to intermediate
* directory openings.
*
+ * Each path in @a paths is a const char *.
+ *
* Use @a pool for all necessary allocations.
*/
svn_error_t *
Modified: subversion/branches/ev2-export/subversion/include/svn_diff.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_diff.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_diff.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_diff.h Tue Apr 3 13:32:48 2012
@@ -1045,7 +1045,7 @@ typedef struct svn_patch_t {
const char *new_filename;
/**
- * An array containing an svn_diff_hunk_t object for each hunk parsed
+ * An array containing an svn_diff_hunk_t * for each hunk parsed
* from the patch. */
apr_array_header_t *hunks;
Modified: subversion/branches/ev2-export/subversion/include/svn_editor.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_editor.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_editor.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_editor.h Tue Apr 3 13:32:48 2012
@@ -153,6 +153,13 @@ extern "C" {
* "should", "should not", "recommended", "may", and "optional" in this
* document are to be interpreted as described in RFC 2119.
*
+ * @note The editor is *not* reentrant. The receiver should not directly
+ * or indirectly invoke an editor API unless it has been marked as
+ * explicitly supporting reentrancy during a receiver's callback. This
+ * limitation extends to the cancellation callback, too. (This limitation
+ * is due to the scratch_pool shared by all callbacks, and cleared after
+ * each callback; a reentrant call could clear the outer call's pool)
+ *
* \n
* <h3>Life-Cycle</h3>
*
Modified: subversion/branches/ev2-export/subversion/include/svn_props.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_props.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_props.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_props.h Tue Apr 3 13:32:48 2012
@@ -150,10 +150,20 @@ typedef enum svn_prop_kind
svn_prop_regular_kind
} svn_prop_kind_t;
+/** Return the property kind of a property named @a prop_name.
+ *
+ * @since New in 1.8
+ */
+svn_prop_kind_t
+svn_property_kind2(const char *prop_name);
+
/** Return the prop kind of a property named @a prop_name, and
* (if @a prefix_len is non-@c NULL) set @a *prefix_len to the length of
* the prefix of @a prop_name that was sufficient to distinguish its kind.
+ *
+ * @deprecated Provided for backward compatibility with the 1.7 API.
*/
+SVN_DEPRECATED
svn_prop_kind_t
svn_property_kind(int *prefix_len,
const char *prop_name);
Modified: subversion/branches/ev2-export/subversion/include/svn_repos.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_repos.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_repos.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_repos.h Tue Apr 3 13:32:48 2012
@@ -1780,6 +1780,8 @@ svn_repos_get_logs(svn_repos_t *repos,
* set @a *catalog to a catalog of this mergeinfo. @a *catalog will
* never be @c NULL but may be empty.
*
+ * The paths in @a paths, and the keys of @a catalog, start with '/'.
+ *
* @a inherit indicates whether explicit, explicit or inherited, or
* only inherited mergeinfo for @a paths is fetched.
*
Modified: subversion/branches/ev2-export/subversion/include/svn_sorts.h
URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/subversion/include/svn_sorts.h?rev=1308894&r1=1308893&r2=1308894&view=diff
==============================================================================
--- subversion/branches/ev2-export/subversion/include/svn_sorts.h (original)
+++ subversion/branches/ev2-export/subversion/include/svn_sorts.h Tue Apr 3 13:32:48 2012
@@ -112,9 +112,9 @@ svn_sort_compare_revisions(const void *a
/**
- * Compare two @c const char * paths, returning an integer greater
- * than, equal to, or less than 0, using the same comparison rules as
- * are used by svn_path_compare_paths().
+ * Compare two @c const char * paths, @a *a and @a *b, returning an
+ * integer greater than, equal to, or less than 0, using the same
+ * comparison rules as are used by svn_path_compare_paths().
*
* This function is compatible for use with qsort().
*
@@ -125,13 +125,13 @@ svn_sort_compare_paths(const void *a,
const void *b);
/**
- * Compare two @c svn_merge_range_t *'s, returning an integer greater
- * than, equal to, or less than 0 if the first range is greater than,
- * equal to, or less than, the second range.
+ * Compare two @c svn_merge_range_t *'s, @a *a and @a *b, returning an
+ * integer greater than, equal to, or less than 0 if the first range is
+ * greater than, equal to, or less than, the second range.
*
* Both @c svn_merge_range_t *'s must describe forward merge ranges.
*
- * If @a a and @a b intersect then the range with the lower start revision
+ * If @a *a and @a *b intersect then the range with the lower start revision
* is considered the lesser range. If the ranges' start revisions are
* equal then the range with the lower end revision is considered the
* lesser range.