* subversion/include/private/svn_client_private.h, subversion/libsvn_client/client.h, subversion/libsvn_client/diff_summarize.c (svn_client__get_diff_summarize_callbacks): Move from a private to a semi-public header file. Remove 'const' from the output parameter.
* subversion/libsvn_client/diff.c (svn_client_diff_summarize2, svn_client_diff_summarize_peg2): Tweak to match that 'const' change.
* subversion/svn/cl.h, subversion/svn/diff-cmd.c (svn_cl__get_diff_summarize): Newly exposed API. (svn_cl__diff): Use it.
Another step in reducing coupling between diff drivers and diff writers.
Let svn_client__arbitrary_nodes_diff() anchor the diff processor API at the requested target paths always, rather than sometimes there and sometimes at the parent of one of them.
Move the responsibility for prefixing diff header paths with the first path's basename in certain cases (when the targets are not both directories) to the caller, where it is more appropriate since it is a presentation issue.
* subversion/libsvn_client/client.h, subversion/libsvn_client/diff_local.c (svn_client__arbitrary_nodes_diff): Always anchor at the requested target paths, even when they are not both directories. Remove the (now unused) 'anchor_at_given_paths' flag and (already unused) 'result_pool' params.
* subversion/libsvn_client/diff.c (do_diff): Determine the prefix for diff header paths here, instead.
* subversion/tests/cmdline/diff_tests.py (diff_arbitrary_files_and_dirs): Extend this case a little, adding a file that is modified and a node that is replaced by a different kind.