German translations update - complete

* subversion/po/de.po
  complete translations, including long help outputs



git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443272 13f79535-47bb-0310-9956-ffa450edef68
When merging a replacement, don't try the add part if the delete part failed
with a tree conflict. This resolves issue #4011.

* subversion/libsvn_client/merge.c
  (merge_file_opened,
   merge_dir_opened): Update action earlier to avoid recording edit on adds.
       Skip adds when the matching delete was a tree conflict.

* subversion/tests/cmdline/merge_tree_conflict_tests.py
  (merge_replace_on_del_fails): Remove XFail marker.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443275 13f79535-47bb-0310-9956-ffa450edef68
* subversion/tests/cmdline/svntest/verify.py
  (ExpectedOutput): Don't support 'actual' being 'None', as it is an
    unhelpful special case.
  (compare_and_display_lines): Same.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443276 13f79535-47bb-0310-9956-ffa450edef68
Remove the support in the test suite's ExpectedOutput class for ignoring
lines that match a regular expression.

The support is rather limited (and, I think, actually broken in the general
case), and it is getting in the way of generalizing the matcher classes.
This was added in r998644 for an svnrdump test, and that is still the only
user, so make that test ignore those lines itself.

* subversion/tests/cmdline/svnrdump_tests.py
  (run_dump_test): Remove the lines that we don't expect to match, instead
    of asking compare_and_display_lines() to do so.

* subversion/tests/cmdline/svntest/verify.py
  (ExpectedOutput, UnorderedOutput): Remove the matches_except() methods and
    the 'except_re' parameter to the matches() method.
  (RegexOutput, UnorderedRegexOutput): Remove the (unimplemented)
    matches_except() methods.
  (compare_and_display_lines): Remove the 'except_re' parameter.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443279 13f79535-47bb-0310-9956-ffa450edef68
Separate the setup of the deeptree tests from the actions file in the test
suite. This cleans up the code and avoids loading 1000 lines of python on
almost every test invocation when running tests parallel.

* subversion/tests/cmdline/merge_tree_conflict_tests.py
  (imports): Add deeptrees.
  (*): s/svntest.actions.deep/svntest.deeptrees.deep/
       s/svntest.actions.Deep/svntest.deeptrees.Deep/

* subversion/tests/cmdline/svntest/actions.py
  Remove all deeptrees code. Copy Item abbreviation as that is being used
  in the actions code.

* subversion/tests/cmdline/svntest/deeptrees.py
  Copied from actions.py. Remove actions.py code, but import everything from
  actions.

* subversion/tests/cmdline/switch_tests.py
  (*): s/svntest.actions.deep/svntest.deeptrees.deep/
       s/svntest.actions.Deep/svntest.deeptrees.Deep/

* subversion/tests/cmdline/update_tests.py
  (*): s/svntest.actions.deep/svntest.deeptrees.deep/
       s/svntest.actions.Deep/svntest.deeptrees.Deep/


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443282 13f79535-47bb-0310-9956-ffa450edef68
Update expected test test results on another issue #2282 or tree conflict test.

* subversion/tests/cmdline/merge_tree_conflict_tests.py
  (tree_conflicts_on_merge_local_ci_5_1): Update revisions to match output and
    the status to what the comment in this function says it should be:
      no deletes, just conflicts!

* subversion/tests/cmdline/svntest/deeptrees.py
  (deep_trees_run_tests_scheme_for_merge): Pass --allow-mixed-revisions, as
    these tests are about tree conflicts, not detecting mixed revision
    problems.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443290 13f79535-47bb-0310-9956-ffa450edef68
When displaying expected and actual output of a test failure, print the
lines via the logger object for consistency with other output, and prefix
them with an additional vertical bar for visual clarity.

* subversion/tests/cmdline/svntest/verify.py
  (display_lines): Print via the logger; add a '| ' prefix.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443295 13f79535-47bb-0310-9956-ffa450edef68
In preparation for resolving #3806, consolidate the tree conflict handling
code in the merge handling.

* subversion/include/private/svn_wc_private.h
  (svn_wc__add_tree_conflict): Document specific error behavior.

* subversion/libsvn_client/merge.c
  (make_conflict_versions): Use scratch/result pool.
  (make_tree_conflict): Remove function. Fold into only caller.
  (tree_conflict): Remove function. Fold into record_tree_conflict.

  (mark_dir_edited,
   mark_file_edited): Update caller.

  (merge_file_changed): Update caller. Reduce lifetime to that of the
    libsvn_wc merge call.
  (merge_file_added): Remove exising conflict case. Handled in merge_file_open.
  (merge_file_deleted): Update caller and comment.

  (merge_dir_changed): Update caller. Reduce lifetime to that of the
    libsvn_wc merge call.

  (merge_dir_deleted): Update caller and add comment.

* subversion/libsvn_wc/tree_conflicts.c
  (svn_wc__add_tree_conflict): Return a less fatal error on this error
    condition. Adding a conflict on top of another conflict is not a
    corruption, but an api-user error.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443383 13f79535-47bb-0310-9956-ffa450edef68
Define two macros that should make using our most common type of apr_hash_t *
instances much easier.

* subversion/include/svn_hash.h
  (svn_hash_gets,
   svn_hash_sets): New macros.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443387 13f79535-47bb-0310-9956-ffa450edef68
In the merge code: following up on r1443387, remove all now unneeded usages of
APR_HASH_KEY_STRING.

Also remove static helper function contains_path() which is now mostly a
local copy of svn_hash_gets().

* subversion/libsvn_client/merge.c
  (store_path): use svn_hash_*s().
  (contains_path): Remove function.

  (split_mergeinfo_on_revision,
   filter_self_referential_mergeinfo,
   prepare_merge_props_changed,
   record_update_delete,
   merge_file_opened,
   merge_file_added,
   merge_dir_opened,
   merge_dir_added,
   verify_touched_by_del_check,
   merge_dir_deleted,
   filter_merged_revisions,
   filter_merged_revisions,
   calculate_remaining_ranges,
   find_gaps_in_merge_source_history,
   update_wc_mergeinfo,
   record_skips_in_mergeinfo,
   remove_children_with_deleted_mergeinfo,
   pre_merge_status_cb,
   get_wc_explicit_mergeinfo_catalog,
   get_wc_explicit_mergeinfo_catalog,
   filter_natural_history_from_mergeinfo,
   do_file_merge,
   log_find_operative_subtree_revs,
   flag_subtrees_needing_mergeinfo,
   record_mergeinfo_for_dir_merge,
   record_mergeinfo_for_added_subtrees,
   log_noop_revs,
   mergeinfo_in_catalog,
   log_find_operative_revs,
   find_unmerged_mergeinfo,
   calculate_left_hand_side): Cleanup hash usage.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443394 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_client/merge.c
  (check_moved_here): Remove unused function.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443429 13f79535-47bb-0310-9956-ffa450edef68
Resolve issue #3806, "incoming replacements on local deletes produce
inconsistent tree conflicts".

* subversion/libsvn_client/merge.c
  (check_moved_away): Remove function.
  (record_tree_conflict): Specialize delete and add tree conflicts for moves.
    Store installed conflict in parent directory baton to allow specializing
    later. Make the notify optional.

  (mark_dir_edited,
   mark_file_edited): Remove tree conflict specializing here. Update caller.

  (merge_file_opened): Handle incoming replacement conflicts. Update the
    existing delete conflicts if necessary. Don't notify when overwriting the
    conflict.

  (merge_file_deleted): Update caller.

  (merge_dir_opened): Handle incoming replacement conflicts. Update the
    existing delete conflicts if necessary. Don't notify when overwriting the
    conflict.

  (merge_dir_deleted): Update caller.

* subversion/tests/cmdline/merge_tree_conflict_tests.py
  (merge_replace_causes_tree_conflict2): Remove XFail and update expected
    results for slight output changes.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443451 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_client/merge.c
  (record_tree_conflict): Store a path that is less likely to break down.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443453 13f79535-47bb-0310-9956-ffa450edef68
Tweak the recording of merge tree conflicts to produce the right details when
a merge replaces a directory with a file, or the other way around.

* subversion/libsvn_client/merge.c
  (record_tree_conflict): Copy left_source from the old conflict if one exists.
  (merge_file_opened): Always replace the conflict from this function, for
    replacement conflicts, just like merge_dir_opened.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443470 13f79535-47bb-0310-9956-ffa450edef68
Clean up the test suite's display_lines() function a bit.

* subversion/tests/cmdline/svntest/actions.py
  (setup_pristine_greek_repository): Remove the display_lines() call here,
    because it was unexecutable: run_svn() would have done so and raised
    an exception if there was any error.

* subversion/tests/cmdline/svntest/verify.py
  (display_lines_diff): New function, extracted from display_lines().
  (display_lines): Don't pretend to know about different kinds of data, and
    don't display a diff. Just display the data and labels that the caller
    provides.
  (ExpectedOutput, RegexOutput,
   UnorderedOutput, UnorderedRegexOutput,
   verify_exit_code): Adjust callers.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443474 13f79535-47bb-0310-9956-ffa450edef68
Following up on r1443451, make the path stored for local-moved-away tree
conflicts no longer required for conflicts raised by merge operations.
(In other words: only required for update and switch.)

Merge doesn't have the power to look in the deeper layers of WC-NG,
nor do we intend to expose them to libsvn_client.

* subversion/include/private/svn_wc_private.h
  (svn_wc__add_tree_conflict): Update comment. Remove argument.

* subversion/libsvn_client/merge.c
  (record_tree_conflict): Update caller.

* subversion/libsvn_wc/conflicts.c
  (svn_wc__conflict_skel_add_tree_conflict): Only store moved away
    path when provided and valid for this state.
  (svn_wc__conflict_read_tree_conflict): Allow reading just the path,
    and handle move conflicts without path

* subversion/libsvn_wc/tree_conflicts.c
  (svn_wc__add_tree_conflict): Verify requirements for new in 1.8 values.
    Always pass NULL for path to svn_wc__conflict_skel_add_tree_conflict.

* subversion/tests/libsvn_wc/conflict-data-test.c
  (test_read_write_tree_conflicts): Update caller.

* tools/dev/svnraisetreeconflict/svnraisetreeconflict.c
  (raise_tree_conflict): Update caller.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443492 13f79535-47bb-0310-9956-ffa450edef68
Fix a simple to trigger, but never reported segfault in the auth helper code.

* subversion/include/svn_auth.h
  (SVN_AUTH_PARAM_STORE_PLAINTEXT_PASSWORDS,
   SVN_AUTH_PARAM_DONT_STORE_SSL_CLIENT_CERT_PP,
   SVN_AUTH_PARAM_STORE_SSL_CLIENT_CERT_PP_PLAINTEXT): Mark as new in 1.6.

* subversion/libsvn_subr/simple_providers.c
  (svn_auth__simple_creds_cache_set): If nobody has set
     SVN_AUTH_PARAM_STORE_PLAINTEXT_PASSWORDS (introduced in 1.6),
     we shouldn't segfault.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443556 13f79535-47bb-0310-9956-ffa450edef68
* subversion/tests/libsvn_subr/auth-test.c
  (test_auth_clear): New function. This triggers the issue fixed in r1443556.
  (test_funcs): Add test_auth_clear.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443562 13f79535-47bb-0310-9956-ffa450edef68
Attempt to fix the fact that PROPFIND wasn't able to reveal a redirect
URL in its error messages and that the rest of ra_serf was throwing
away valuable URL information in such redirect responses, while still
preserving a workaround introduced in r1351138 for code.google.com's
semi-butchering of Location URLs.

* subversion/libsvn_ra_serf/util.c
  (response_get_location): Return the canonicalized Location header,
    in full, instead of only the path portion thereof.

* subversion/libsvn_ra_serf/property.c
  (svn_ra_serf__wait_for_props): Pass handler->location to
    svn_ra_serf__error_on_status(), since we have it handy and all.

* subversion/libsvn_ra_serf/commit.c
  (checkout_node): Work around a bug in code.google.com's CHECKOUT
    responses by using only the path portion of the Location header
    when constructing working URLs here.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443578 13f79535-47bb-0310-9956-ffa450edef68
* build.conf
  (auth-test): Add direct dependency on apr.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1443589 13f79535-47bb-0310-9956-ffa450edef68