Jon Foster <Jon.Foster@cabot.co.uk>
r943619 | cmpilato | 2010-05-12 13:28:19 -0500 (Wed, 12 May 2010)
Fix issue #3637. This introduces a new syntax for 'svnsync sync' and
'svnsync copy-revprops', plus a new --revision (-r) option for use
with 'svnsync copy-revprops'.
* subversion/svnsync/main.c
(svnsync_cmd_table): Update usage messages for 'sync' and
'copy-revprops' subcommands. Add support for '-r' to
'copy-revprops'.
(svnsync_options): Add '--revision (-r)' option.
(opt_baton_t): Add 'start_rev' and 'end_rev' parameters.
(open_source_session): Now accept a 'from_url' parameter, which is
the preferred URL to use to open from_session.
(do_synchronize, do_copy_revprops): Update call to
open_source_session(), using baton-provided 'from_url' (if any).
(synchronize_cmd): Allow a second command-line argument, the source
URL. If we get one, validate it and pass it to
make_subcommand_baton().
(resolve_revnums): New, broken out from copy_revprops_cmd().
(copy_revprops_cmd): Determine which syntax is in use: the one where
the second command-line argument is the source URL, or the one where
it's a revision/range. If the former, validate the source URL and
pass it to make_subcommand_baton().
(main): Initialize new revision opt_baton members, and parse
'--revision (-r)' options.
* subversion/tests/cmdline/svnsync_tests.py
(run_sync): Add 'source_url' optional parameter. Callers updated.
(run_copy_revprops): Add 'source_url' parameter. Callers updated.
(run_test): Pass 'repo_url' to run_sync() and run_copy_revprops().
Suggested by: Jon Foster <Jon.Foster{_AT_}cabot.co.uk>
r927222 | rdonch | 2010-03-24 18:29:20 -0500 (Wed, 24 Mar 2010)
SWIG/Python: enable callback functions to return Subversion errors (by
throwing a SubversionException).
* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c:
(callback_exception_error): Extend to check for a SubversionException
and attempt to translate it into an svn_error_t*.
* subversion/bindings/swig/python/tests/repository.py:
(SubversionRepositoryTestCase.test_cease_invocation): New test for
the above functionality.
Patch by: Alexey Neyman <stilor@att.net>
me
Review by: Jon Foster <Jon.Foster@cabot.co.uk>
r910212 | stsp | 2010-02-15 06:57:18 -0600 (Mon, 15 Feb 2010)
Add a --disable-locking option to svnsync.
The built-in locking of svnsync has a known race condition (see issue #3546).
This option allows those who'd rather use an external locking mechaninism
(such as tools like flock and lockfile) to disable svnsync's internal locking
entirely. This avoids associated network overhead, and stale locks in case the
network connection drops unexpectedly.
* subversion/svnsync/main.c
(svnsync__opt): Add svnsync_opt_disable_locking.
(svnsync_cm): Enable the new --disable-locking option for the
init, sync, and copy-revprops subcommands.
(svnsync_options): Document --disable-locking option.
(opt_baton_t): New field 'disable_locking'.
(initialize_cmd, synchronize_cmd, copy_revprops_cmd): Don't use
locking if the --disable-locking option was passed.
(main): Pass the --disable-locking option into the opt baton.
Patch by: Jon Foster <Jon.Foster@cabot.co.uk>
me
r884900 | julianfoad | 2009-11-27 09:58:52 -0600 (Fri, 27 Nov 2009)
* subversion/svnsync/main.c
(svnsync_options): Remove stray newline after --config-option help text.
Patch by: Jon Foster <jon.foster{_AT_}cabot.co.uk>
r884842 | stsp | 2009-11-27 05:58:41 -0600 (Fri, 27 Nov 2009)
Fix a bug in svnsync causing stale sync-locks on mirror repositories.
* subversion/svnsync/main.c
(get_lock): The lock attempt is done in iteration N, and success is
checked in iteration N+1. Prevent the case where svnsync attempts
to take the lock in the very last iteration, doesn't check for
success, and ends up erroring out, leaving behind a stale lock.
Found by: Jon Foster <Jon.Foster@cabot.co.uk>
Based on patch by: philip
r850071 | sussman | 2004-06-14 23:14:53 -0500 (Mon, 14 Jun 2004)
Cleanup warnings in svn-push.c.
Patch by: Mark Benedetto King <mbk@lowlatency.com>
Jon Foster <jon@jon-foster.co.uk>
* contrib/client-side/svn-push/svn-push.c
Add #include <svn_cmdline.h>
(my_commit_callback): Replace %i with %SVN_REVNUM_T_FMT.
(new_change_file_prop): Make static.
(new_change_dir_prop): Make static.
(do_job): Make delta_editor const, in order to respect
the interface to ra->get_commit_editor(). Introduce
new variable, "my_delta_editor", to hold the locally
modified editor. Conditionally compile the declaration
of the authentication related local variables, since
their references are only conditionally compiled.
(main): Remove an unused local variable.