Checkout Tools
  • last updated 5 hours ago
Constraints: committers
Constraints: files
Constraints: dates
A little house-cleaning (more wouldn't hurt, but this is a start):

* contrib/client-side/: Putting multi-file tools into their own

subdirs, and do same with editor tools.

* Adjust SVN_CONFIG_SCRIPT paths for above.

* build.conf: Likewise adjust mucc path.

  1. … 39 more files in changeset.
More bug fixes for MUCC, and some tweaks to its test/exercise script.

* contrib/client-side/mucc.c

(get_operation): Make operation kinds default to 'svn_node_dir' (for

the sake getting OP_OPEN to work as expected).

(execute): Correct the total bustedness of the "mv" operation

handling I committed recently.

* contrib/client-side/

Update this test script to use -U (for shorter command-lines) and to

use MUCC to do the initial file and directory creation that it

didn't used to be able to do.

  1. … 1 more file in changeset.
* contrib/client-side/mucc.c

(build): Tighten up the check for copies so we don't try to operate

on a URL string that's NULL.

Teach MUCC to honor a global base revision, the revision that it

believes to be the youngest in the target repository. When provided,

all operations will be commits against the base revision, which allows

better out-of-dateness checking to happen. Also, this means the 'put'

operation (which alone had support for this already) doesn't need its

own revision parameter.

* contrib/client-side/mucc.c

(drive): When opening a file, use the effective 'head' revision.

(get_operation): Set the 'rev' member to SVN_INVALID_REVNUM by default.

(execute): Add 'base_revision' parameter which, when provided, is

what the program thinks of as "head". When calling build() for a

'put' operation, don't bother passing a revision number.

(build): Stop setting extra unused fields in the operation

structure. Don't allow a copy source revision that's younger than

the base revision.

(usage): Note support for new --revision (-r) option, and note new

REV-less syntax for 'put'.

(main): Handle new --revision (-r) option, and adjust argument

parsing for new REV-less syntax for 'put'. Update call to


Fix some buglets in MUCC's handling of the new(er) 'put' operation.

* contrib/client-side/mucc.c

(action_code_t): New, just struct action's inline enum broken out.

(drive): Rework this function to deal with opens of files.

(build): Add 'action' parameter. Trying to derive actions from

multiple input variable states is whack. Move 'src_file'

parameter "down" by one. Rework this thing to pay attention to

the new 'action' parameter, and fix 'put' operations (which can be

adds, replacements, or modifies/opens).

(execute): Update calls to build().

Allow users to provide the more conventional "-" (instead of "STDIN")

argument to request reading from stdin.

* contrib/client-side/mucc.c

(usage): Update to reflect to the new special-case.

(main): Use svn_stringbuf_from_file2(), which Knows About These Things.

* contrib/client-side/mucc.c (main): Canonicalize the user-provided root URL.

MUCC: Implement the open_tmp_file() RA callback so "put" doesn't crash

against http:// URLs.

* contrib/client-side/mucc.c

(open_tmp_file): New.

(ra_callbacks): Set RA callback vtable member 'open_tmp_file' to

our new open_tmp_file() function.

Ahem. Fix some indentation busted by r23384.
* contrib/client-side/mucc.c

Global search-and-replace of "post" with "put". Also...

(main): Fix a conditional that was referencing uninitialized variables.

* contrib/client-side/mucc.c (usage): Minor tweak to reveal what 'mucc' means.
Add 'post' action to MUCC.

* subversion/contrib/client-side/mucc.c

(): Added/tweaked comments throughout this file.

(get_operation): Use apr_pcalloc() instead of apr_palloc().

(struct operation): Add new 'src_file' member.

(usage): Note new 'post' action.

(drive): Handle new post operations.

(build): Add new 'src_file' parameter. Callers updated. Recognize

new post actions, and build the operation accordingly.

(struct action): Add new enum value ACTION_POST. Rename 'url' array

to 'path' (users updated).

(execute): Handle new ACTION_POST action.

* contrib/client-side/mucc.c (usage): Re-work the usage message.
* contrib/client-side/mucc.c (usage, main): Add new --extra-args (-X) option.
* contrib/client-side/mucc (main): Just some formatting tweaks.
Add "mkdir" support to MUCC.

* contrib/client-side/mucc.c

(build): Add some commentary about how actions are derived from the

input parameters. Interpret (valid-URL, invalid-REVNUM) as a directory

creation (mkdir) operation.

(struct action): Add ACTION_MKDIR (for "mkdir").

(usage): Note new "mkdir" operation.

(main): Handle new "mkdir" operation.

Add a new --root-url (-U) option to MUCC to minimize the action syntax

and repetition.

* contrib/client-side/mucc.c

(usage, main): Add support for new --root-url (-U) option.

Make MUCC a little more flexible, able to take advantage of the

various auth providers that Subversion supplies instead of being

limited to only the one's it implements for itself.

* contrib/client-side/mucc.c

(username_prompt, simple_prompt, prompt_for_creds): Removed as unused.

(ra_callbacks): Add 'username' and 'password' params. Use

svn_cmdline_setup_auth_baton() instead of plugging in custom providers.

(execute): Add 'username' and 'password' params, passed to ra_callbacks().

(main): Handle new --username (-u) and --password (-p) arguments,

and update call to execute().

(usage): Document new --username and --password arguments.

* contrib/client-side/mucc.c

Add comment on how to build this client.

Suggested by: glasser

Found by: Troy Curtis Jr <>

Many spelling fixes, mostly in comments (the only two that affect code

are listed below).

Patch by: Martin A. Brooks <>

* subversion/tests/cmdline/

(cat_nonexistent_file): Renamed from cat_nonexistant_file.

(test_list): Adjust for above.

* subversion/tests/cmdline/

(export_nonexistent_file): Renamed from export_nonexistant_file.

(test_list): Adjust for above.

  1. … 16 more files in changeset.
Enable two build generator include dep warnings that I recently added disabled.

Add comment explaining their purpose.

Consistify usage of #include <foo.h> vs. "foo.h" throughout the project.

* build/generator/ Enable warnings, add comment.

* build/generator/

* subversion/libsvn_fs_base/lock.c:

* subversion/include/svn_ra_svn.h:

* subversion/libsvn_subr/xml.c:

* subversion/libsvn_subr/io.c:

* subversion/libsvn_subr/nls.c:

* subversion/libsvn_subr/date.c:

* subversion/libsvn_subr/config_win.c:

* subversion/bindings/java/javahl/native/SVNClient.cpp:

* subversion/bindings/java/javahl/native/Prompter.cpp:

* subversion/bindings/java/javahl/native/Targets.cpp:

* subversion/bindings/java/javahl/native/Notify.h:

* subversion/bindings/java/javahl/native/EnumMapper.h:

* subversion/bindings/java/javahl/native/Outputer.h:

* subversion/bindings/java/javahl/native/Notify2.h:

* subversion/bindings/java/javahl/native/BlameCallback.h:

* subversion/bindings/java/javahl/native/Revision.h:

* subversion/bindings/java/javahl/native/Pool.cpp:

* subversion/bindings/java/javahl/native/SVNClient.h:

* subversion/bindings/java/javahl/native/Prompter.h:

* subversion/bindings/java/javahl/native/JNIUtil.cpp:

* subversion/bindings/java/javahl/native/Inputer.h:

* subversion/bindings/java/javahl/native/BlameCallback.cpp:

* subversion/bindings/java/javahl/native/CommitMessage.cpp:

* subversion/bindings/swig/include/svn_global.swg:

* subversion/bindings/swig/svn_delta.i:

* subversion/mod_dav_svn/mod_dav_svn.c:

* subversion/tests/libsvn_wc/translate-test.c:

* subversion/tests/libsvn_subr/opt-test.c:

* subversion/tests/libsvn_subr/stream-test.c:

* subversion/tests/libsvn_subr/path-test.c:

* subversion/libsvn_ra_svn/cram.c:

* subversion/libsvn_ra_svn/ra_svn.h:

* subversion/libsvn_delta/cancel.c:

* subversion/svnserve/serve.c:

* subversion/libsvn_fs_fs/lock.c:

* contrib/client-side/svn-push/svn-push.c:

* contrib/client-side/mucc.c:

Consistify #includes.

  1. … 37 more files in changeset.
Fix --enable-dso builds by removing some svn_fs_initialize calls, thus

reverting part of r14067. The programs affected are single-threaded so

the fallback initialisation will be sufficient in practice.

* subversion/clients/cmdline/main.c (main): Remove svn_fs_initialize call.

* subversion/svnversion/main.c (main): ditto

* contrib/client-side/mucc.c (init): ditto

* contrib/client-side/svn-push/svn-push.c (main): ditto

  1. … 3 more files in changeset.
Add calls from command-line programs to svn_fs_initialize() to make

the issue #2265 fix more robust. Not yet handled: mod_dav_svn.

* subversion/svnadmin/main.c (main): Add initialization call.

* subversion/look/main.c (main): Add initialization call.

* subversion/clients/cmdline/main.c (main): Add initialization call.

* subversion/svndumpfilter/main.c (main): Add initialization call.

* subversion/svnserve/main.c (main): Add initialization call.

* contrib/client-side/svn-push/svn-push.c (main): Add initialization call.

* contrib/client-side/mucc.c (init): Add initialization call.

* tools/examples/svnput.c (main): Add initialization call.

* tools/examples/getlocks_test.c (main): Add initialization call.

* tools/examples/headrev.c (main): Add initialization call.

* tools/examples/minimal_client.c (main): Add initialization call.

  1. … 11 more files in changeset.
A command line client that combines multiple mv, cp and rm URL commands

into a single commit.

* build.conf: Add mucc.

* contrib/client-side: Tweak svn:ignore.

* contrib/client-side/mucc.c: New file.

* contrib/client-side/ New file.

  1. … 3 more files in changeset.