Checkout Tools
  • last updated 8 hours ago
Constraints: committers
Constraints: files
Constraints: dates

Changeset 869500 is being indexed.

* subversion/libsvn_ra_neon/session.c

(get_server_settings): Apply http-proxy-exceptions only to

proxy-specific config options; use non-proxy-specific global

defaults regardless of the exceptions setting.

* subversion/libsvn_ra_neon/session.c

(get_server_settings): Bring docstring up-to-date with respect to

r29421 and fix reference to "neon_auto_protocols" parameter.

Fix coding style.

* subversion/bindings/swig/ruby/test/test_core.rb

(SvnCoreTest#test_mergerange_equality): Don't omit parentheses.

* subversion/libsvn_ra_neon/session.c (get_server_settings): Fix to

allow per-group "http-auth-types" settings (existing code was simply

retrieving the global setting twice, presumably a copy'n'paste-o).

* subversion/libsvn_ra_neon/session.c (svn_ra_neon__open) [SVN_NEON_0_27]:

Set connection timeout along with read timeout.

Enable PKCS#11 (smartcard) support with neon 0.28:

* subversion/libsvn_ra_neon/session.c [SVN_NEON_0_28]: Include


(cleanup_p11provider, client_ssl_pkcs11_pin_entry): New functions.

(get_server_settings): Add and handle the pk11_provider parameter.

(svn_ra_neon__open): Fetch the PKCS#11 provider from the config

file; if specified, initialize and set up the provider and PIN

callback for both sessions, along with the cleanup.

* subversion/libsvn_ra_neon/ra_neon.h: Add p11pin_iterstate field to

svn_ra_neon__session_t structure.

* subversion/include/svn_config.h: Add ssl-pkcs11-provider option.

* subversion/libsvn_subr/config_file.c (svn_config_ensure): Document

new ssl-pkcs11-provider config option.

Follow up to r29374. "Merge the mergeinfo-api-cleanup branch to trunk."

* subversion/bindings/swig/core.i

(%apply apr_hash_t *MERGEINFO): Apply typemap to parameters named


(%apply apr_hash_t *MERGEINFO_HASH): Apply typemap to parameters named


* subversion/bindings/swig/svn_ra.i

(%apply apr_hash_t *MERGEINFO_HASH): Removed.

* subversion/bindings/swig/svn_fs.i

* subversion/bindings/swig/svn_repos.i

(%apply apr_hash_t *HASH_CSTRING): Removed.

* subversion/bindings/swig/ruby/test/test_repos.rb

* subversion/bindings/swig/ruby/test/test_fs.rb

(SvnReposTest#test_mergeinfo): Expected result is now a mergeinfo instead of

a string.

* subversion/bindings/swig/ruby/test/test_core.rb

(SvnCoreTest#test_mergerange_equality): New test

* subversion/bindings/swig/ruby/svn/core.rb

(Svn::Core::MergeRange#==): New method.

(Svn::Core::MergeInfo#to_s): Use Core.mergeinfo_to_string() instead of


(Svn::Core::RangeList#to_s): Use Core.rangelist_to_string() instead of


Change the format of the revprops block sent in svnserve for

replay-range so that the discard-rest-of-edit-after-error loop at the

bottom of svn_ra_svn_drive_editor2 doesn't choke on them.

This incompatible change must be backported to 1.5 or reverted on


* subversion/libsvn_ra_svn/client.c

(ra_svn_replay_range): Read tuple with "revprops" word at front.

* subversion/svnserve/serve.c

(replay_range): Write "revprops" at the beginning of tuple.

* subversion/libsvn_ra_svn/protocol

(replay-range): Add "revprops" word.

Fix a potential hang in svnserve/ra_svn.

The specific case that triggered this was running svnsync replaying

from a 1.4.x svnserve, and doing a SIGINT. Generally, the "failure"

in the pipelined editor written from the client to the server happened

"too late" for the server to abort the edit.

Found by: lgo

* subversion/libsvn_ra_svn/editorp.c

(svn_ra_svn_drive_editor2): If we sent an error to the other side,

consider a "success" from the other side to be the end of the

commands to discard, as well as an "abort-edit".

* subversion/libsvn_repos/log.c:

Update a couple of spots to use svn_mergeinfo_t

Fix the null digest detection in fsfsverify, and implement it in a way that

preserves the digest for output.

* contrib/server-side/


(Rep.__init__): Don't reset the digest.

(Rep.verify): Don't compare the md5 digest if the NULL digest was recorded in

the node rev.

Follow-up to r29414: fix a copy-and-paste-o.

* tools/server-side/

(_parse_get_file): Call the right handler.

Change property listing action in the SVN-ACTION DAV logging names to

match the svnserve command set. Specifically, remove the prop-list

command; add "props" and "text" flags to the get-dir action; and

create a get-file action like the get-dir one. mod_dav_svn never logs

a "get-file P rR text" action, but that's OK.

(See also r29412.)

* subversion/mod_dav_svn/deadprops.c

(db_first_name): Change "prop-list" SVN-ACTION to "get-dir props" or

"get-file props".

* subversion/mod_dav_svn/repos.c

(do_walk): Add "text" to get-dir SVN-ACTION.

* tools/server-side/

Update docstring.

(_parse_get_dir): Adjust.

(_parse_get_file): New.

(_parse_prop_list): Remove.

* tools/server-side/

(TestCase.get_dir_or_file): Extract from test_get_dir.

(TestCase.test_get_dir): Now a wrapper around get_dir_or_file.

(TestCase.test_get_file): New.

(TestCase.test_prop_list): Remove.

(Test.handle_get_dir): Adjust.

(Test.handle_get_file): New.

(Test.handle_prop_list): Remove.

* subversion/libsvn_ra_serf/replay.c: Fix typo in comment.
Change some of the SVN-ACTION DAV logging names to match the svnserve

command set.


- 1.5 already contains backwards-incompatible changes to the logging

format; this (if it gets backported) is a reasonable time to make

other bikesheddy changes.

- The svnserve command set is a good vocabulary for svn operational

actions; there's no reason to have a second vocabulary that is

mostly but not entirely the same.

- When svnserve grows logging, it would make sense to use its command

set as the vocabulary; making these format changes would allow the

two servers to share the same log format.

The specific changes made:

list-dir => get-dir

revprop-change => change-rev-prop

revprop-list => rev-proplist

blame => get-file-revs

remote-status => status

diff-or-merge => diff

(I would also like to get rid of prop-list, and in exchange add

props?/text? fields to get-dir and a new get-file.)

(It may also be worth logging get-locations and

get-location-segments, especially given that the latter has

complicated performance characteristics.)

* subversion/mod_dav_svn/deadprops.c

(save_value): revprop-change => change-rev-prop

(db_first-name): revprop-list => rev-proplist

* subversion/mod_dav_svn/reports/file-revs.c

(dav_svn__file_revs_report): blame => get-file-revs

* subversion/mod_dav_svn/reports/update.c

(dav_svn__update_report): diff-or-merge => diff

* subversion/mod_dav_svn/repos.c

(do_walk): list-dir => get-dir

* tools/server-side/

Update docstring; adjust everywhere.

* tools/server-side/

Adjust everywhere.

Documentation fixes only:

* subversion/libsvn_wc/update_editor.c

(struct file_baton): Document that propchanges member is never null;

clarify what new_text_base_path actually is.

Polish translation update.

* subversion/po/pl.po: Polish translation update.

* subversion/libsvn_fs_fs/tree.c

(fs_get_mergeinfo): Fix a typo in a message.

* www/faq.html (cvs2svn): Link to list of cvs2svn features.

* www/faq.html (cvs2svn): Remove obsolete FUD from this entry.

Suggested by: mhagger

* subversion/po/nb.po: make locale-gnu-po-update at r29405.

Reverting r29404. Obviously my SVK mirror is completely hosed at this

point. Sorry for the noise!

  1. … 86 more files in changeset.
An accidental commit, reverted in r29405.

    • ?
    • ?
    • ?
  1. … 86 more files in changeset.
Fix one comment buglet and one error-return-neglected buglet, both

found during the audit described in issue #3102.

* subversion/mod_dav_svn/reports/get-locks.c

(dav_svn__get_locks_report): Fix inaccurate (cut-and-pasted?) comment.

* subversion/mod_dav_svn/reports/replay.c

(dav_svn__replay_report): Check for error when flushing the brigade.

* STATUS: Nominate r29379 and r29401.

Follow-up to r29379: Define SVN_NEON_0_28 also in Windows.

* build/generator/

(get_win_defines): Introduce definition of SVN_NEON_0_28.

* STATUS: Nominate and vote for r29399, in the mergeinfo capabilities group.

* subversion/libsvn_ra_svn/client.c

(open_session): The repository capabilities list is optional in the

protocol; therefore, check if repos_caplist is NULL before using it.

Found by: arfrever

Switch to using a new mergeinfo API type; no functional change.

* subversion/libsvn_repos/log.c

(get_combined_mergeinfo): Use svn_mergeinfo_catalog_t, not apr_hash_t.

Use one of the new mergeinfo API types in code that was written before

the type was invented but merged to trunk after.

* subversion/libsvn_repos/repos.c

(svn_repos_has_capability): Use svn_mergeinfo_catalog_t, not apr_hash_t.

* subversion/libsvn_ra_serf/serf.c

(svn_ra_serf__has_capability): Same.

* subversion/libsvn_ra_neon/session.c

(svn_ra_neon__has_capability): Same.