Create branch to work on http://wiki.apache.org/subversion/InRepoAuthz


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414342 13f79535-47bb-0310-9956-ffa450edef68
On the in-repo-authz branch: Add svn_config_parse() for parsing a config file
from a stream.

Note that since the stream code is now separated from the source file code
the filename and line number that errors in config files occur on will be
in separate svn_error_t structures and thusly printed on separate lines by
the command line client.  Error output has been adjusted so the line number
error has "line %d:" now.

* subversion/libsvn_subr/config_file.c
  (svn_config__parse_file): Factor out the processing of the stream out.
  (svn_config__parse_stream): Add.

* subversion/libsvn_subr/config_impl.h
  (svn_config__parse_stream): Add.

* subversion/libsvn_subr/config.c
  (svn_config_parse): Add.

* subversion/libsvn_subr/config-test.c
  (test_stream_interface): Add new test for svn_config_parse().
  (test_funcs): Add test_stream_interface() to list of tests.

* subversion/include/svn_config.h
  (svn_config_parse): Add.



git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414356 13f79535-47bb-0310-9956-ffa450edef68
On the in-repo-authz branch: Add BRANCH-README

* BRANCH-README: Add


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414357 13f79535-47bb-0310-9956-ffa450edef68
On the in-repo-authz branch: Make two functions for dealing with repos relative
urls public APIs.

* subversion/libsvn_client/cmdline.c
  (arg_is_repos_relative_url,resolve_repos_relative_url): Removed
  (svn_client_args_to_target_array2): Use svn_path_is_repos_relative_url() and
    svn_path_resolve_repos_relative_url()

* subversion/libsvn_subr/path.c
  subversion/include/svn_path.h
  (svn_path_is_repos_relative_url,svn_path_resolve_repos_relative_url): Add, they
    are almost exactly the same as the old private functions that used to be in
    cmdline.c

* subversion/libsvn_subr/path-test.c
  (test_path_is_repos_relative_url, test_path_resolve_repos_relative_url): Add.
  (test_funcs): Add test_path_is_repos_relative_url() and
    test_path_resolve_repos_relative_url() to the tests to run.



git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414492 13f79535-47bb-0310-9956-ffa450edef68
On the in-repo-authz branch: Add a svn_repos_authz_read2() API that knows how
to read config files from inside the repo.

* subversion/include/svn_repos.h
  (svn_repos_authz_read): Deprecate.
  (svn_repos_authz_read2): Add

* subversion/libsvn_repos/authz.c
  (svn_repos_authz_read2, authz_retrieve_config, authz_retrieve_config_url): Add
  


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414537 13f79535-47bb-0310-9956-ffa450edef68
On in-authz_repo branch: Switch mod_authz_svn to using svn_repos_authz_read2()

* subversion/mod_authz_svn/mod_authz_svn.c
  (AuthzSVNAccessFile_cmd): Don't adjust the path relative to server root when
    path is a url.
  (get_access_conf): Always generate the repos_path.  In the case of a repo
    relative access file avoid adding the conf root if the path is a url.
    Use svn_repos_authz_read2() instead of svn_repos_authz_read().


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414545 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_repos/authz.c
  (authz_retrieve_config): Fix a comment that had a sentence fragment in it and
    a concern regarding Windows.  There is no issue on Windows, repos_root is
    always internal style and path is a url (or repos relative URL which is
    a URL fragment) and as such uses / as the path seperator.



git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414554 13f79535-47bb-0310-9956-ffa450edef68
On in-repo-authz branch: Update BRANCH-README

* BRANCH-README: Fill in work left to do and some thoughts on tests.


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414561 13f79535-47bb-0310-9956-ffa450edef68
Sync the 'in-repo-authz' branch with recent trunk changes.
(Merged /subversion/trunk:r1414342-r1414568.)


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414569 13f79535-47bb-0310-9956-ffa450edef68
Sync the 'in-repo-authz' branch with recent trunk changes.
(Merged /subversion/trunk:r1414342-r1414853.)



git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1414855 13f79535-47bb-0310-9956-ffa450edef68
Sync the 'in-repo-authz' branch with recent trunk changes.
(Merged /subversion/trunk:r1414854-r1415646)



git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/in-repo-authz@1415649 13f79535-47bb-0310-9956-ffa450edef68
Refactor some test code to make it easier to extend.

* subversion/tests/libsvn_repos/repos-test.c
  (nls_receiver_baton, format_segment, nls_receiver, check_location_segments):
    Add doc strings and constify the expected result pointers.
  (location_segment_test_t): New struct.
  (node_location_segments): Move the test data into an array and iterate
    over it.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1415851 13f79535-47bb-0310-9956-ffa450edef68
Continue documentation of fsfs-reorg tool. The data
placement code is now completed.

* tools/server-side/fsfs-reorg.c
  (add_revisions_pack_heads,
   get_target_offset,
   add_noderev_recursively,
   add_representation_recursively,
   add_noderev_recursively,
   add_revisions_pack_tail,
   reorder_revisions,
   get_fragment_content,
   prepare_repo,
   activate_new_revs,
   print_usage,
   main):  add docstrings and comments

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1415852 13f79535-47bb-0310-9956-ffa450edef68
Implement in ra_serf "send-all" mode support for update-style REPORTs
and their responses.  (Currently disabled by compile-time conditionals.)

(This one goes out to Ivan Zhakov.)

* subversion/libsvn_ra_serf/update.c
  (report_state_e): New state 'TXDELTA'.
  (report_info_t): Add 'svndiff_decoder' and 'base64_decoder' members.
  (report_context_t): Add 'send_all_mode' flag.
  (fetch_file): Don't populate the report_info_t's 'url' member here;
    we'll do that in start_report() instead.
  (start_report): Notice the "send-all" attribute on the
    <update-report> tag, and set the 'send_all_mode' flag accordingly.
    Only expect to fetch file contents for added files when not
    in "send-all" mode.  Handle the <txdelta> tag in "send-all" mode,
    pushing a new TXDELTA state and cranking up the svndiff window
    handling stuff.
  (end_report): When closing opened and added files, calculate the
    report_info_t's 'url' field, and handle "send-all" mode where
    applicable.  Handle the </txdelta> tag by closing up the
    base64-decoding stream. 
  (cdata_report): Handle CDATA for <txdelta> blocks.
  (make_update_reporter): Add (disabled) support for asking the server
    to use "send-all" mode for update REPORT responses.  Also, drop
    the <text-deltas> element into the REPORT request when we don't
    wish to get real text-deltas.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1415864 13f79535-47bb-0310-9956-ffa450edef68
* subversion/svn/conflict-callbacks.c
  (handle_text_conflict): If we're going to clear a pool in the loop, it
    had better be a pool that we own, not the 'scratch_pool' which the
    caller owns.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1415906 13f79535-47bb-0310-9956-ffa450edef68
* subversion/include/svn_wc.h
  (svn_wc_canonicalize_svn_prop_get_file_t,
   svn_wc_canonicalize_svn_prop): Add missing @since. Reference not
     deprecated function.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1416048 13f79535-47bb-0310-9956-ffa450edef68
Simplify a bit more error handling in the property set code in an attempt to
fix the ruby tests, which currently fail on a delete of a property from a
deleted subpath.

* subversion/libsvn_wc/props.c
  (validate_eol_prop_against_file): Always close the stream.
  (propset_walk_cb): Handle the SVN_ERR_WC_PATH_UNEXPECTED_STATUS returned from
    the db apis, instead of an error that can never happen.
  (svn_wc_prop_set4): We don't have to check the status that the db api handles
    for us. Wrap with the expected error kind to make sure the tests and the
    deprecated svn_wc_prop_set3() keep working as expected.


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

* subversion/bindings/swig/perl/native/Base.pm
  (pod): spell certain properly.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1416185 13f79535-47bb-0310-9956-ffa450edef68
Fix a tx delta stream corruption introduced in r1390435:  Even if we don't
use any data from the source window, it may still have content.  We must
specify that in our delta window header to make the receiver advance the
source window pointer correctly.

* subversion/libsvn_delta/svndiff.c
  (send_simple_insertion_window): always encode the source window pos & size

Patch by: lgo

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1416194 13f79535-47bb-0310-9956-ffa450edef68
Finish documentation of fsfs-reorg tool.
Also, simplify code as we go.

* tools/server-side/fsfs-reorg.c
  (get_fragment_content,
   update_noderevs,
   get_content_length,
   move_fragment,
   pack_revisions,
   write_revisions,
   pack_and_write_revisions,
   get_updated_dir,
   update_id,
   update_text): add docstrings and comments
  (diff_write_baton_t,
   diff_write_handler): drop
  (diff_stringbufs): update caller; add docstring and comments

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