------------------------------------------------------------------------ r1493424 | ivan | 2013-06-16 01:54:05 +0400 (Âñ, 16 èþí 2013) | 11 lines Follow-up to 1489203: Remove unnecessary check for branches ancestry from command line client. All required checks are performed in libsvn_client. * subversion/svn/cl.h * subversion/svn/util.c (svn_cl__check_related_source_and_target): Remove * subversion/svn/merge-cmd.c * subversion/svn/mergeinfo-cmd.c (run_merge, svn_cl__mergeinfo): Remove call to svn_cl__check_related_source_and_target(). ------------------------------------------------------------------------ r1493475 | ivan | 2013-06-16 12:23:38 +0400 (Âñ, 16 èþí 2013) | 18 lines Improve 'svn merge' performance over WAN: Use already fetched history-as-mergeinfo data to find youngest common ancestor in automatic merge. * subversion/libsvn_client/client.h (svn_client__get_youngest_common_ancestor): Mention new svn_client__calc_youngest_common_ancestor in docstring. (svn_client__calc_youngest_common_ancestor): New declaration. * subversion/libsvn_client/ra.c (svn_client__calc_youngest_common_ancestor): New. Extracted from svn_client__get_youngest_common_ancestor(). (svn_client__get_youngest_common_ancestor): Use svn_client__calc_youngest_common_ancestor(). * subversion/libsvn_client/merge.c: (find_automatic_merge): Use svn_client__calc_youngest_common_ancestor(). ------------------------------------------------------------------------ r1493703 | rhuijben | 2013-06-17 14:04:38 +0400 (Ïí, 17 èþí 2013) | 15 lines Perform an upgrade notification on every successfull working copy upgrade, instead of only from pre-1.7 working copies. This helps GUI clients to determine if the format bump was successfull. * subversion/libsvn_wc/upgrade.c (svn_wc_upgrade): Update caller. Notify on format bumps withing WC-NG range. * subversion/libsvn_wc/wc_db.c (svn_wc__db_bump_format): Re-order arguments to match common form. Provide optional output argument to tell about an actual format bump. * subversion/libsvn_wc/wc_db.h (svn_wc__db_bump_format): Update prototype. ------------------------------------------------------------------------ r1493720 | danielsh | 2013-06-17 16:05:35 +0400 (Ïí, 17 èþí 2013) | 2 lines * subversion/libsvn_ra/util.c (svn_ra__assert_capable_server): Fix typo in code. ------------------------------------------------------------------------ r1493951 | jcorvel | 2013-06-18 01:40:31 +0400 (Âò, 18 èþí 2013) | 4 lines * tools/client-side/svn-bench/help-cmd.c: Use 'svn-bench' as program name, so 'svn-bench' prints "Type 'svn-bench help' for usage." instead of "Type 'svn help' for usage." ------------------------------------------------------------------------ r1494089 | stsp | 2013-06-18 13:49:14 +0400 (Âò, 18 èþí 2013) | 5 lines Follow-up to r1491816: * subversion/svn/file-merge.c (merge_chunks): Don't modify input arguments when concatenating chunks. ------------------------------------------------------------------------ r1494171 | stsp | 2013-06-18 19:22:42 +0400 (Âò, 18 èþí 2013) | 6 lines * subversion/libsvn_wc/wc_db.c (svn_wc__db_bump_format): Keep *bumped_format as FALSE in case of error, rather than setting it based on the potentially undefined value of *result_format. Most likely not a functional change, since callers shouldn't be using output when this function returns an error. ------------------------------------------------------------------------ r1494223 | danielsh | 2013-06-18 21:37:28 +0400 (Âò, 18 èþí 2013) | 6 lines Disallow 'svnadmin create --fs-type=fsfs --compatible-version=1.0', since 1.0 did not have FSFS. * subversion/svnadmin/svnadmin.c (subcommand_create): Add validation. Note that part of the validation hard-codes the library's default fs-type. ------------------------------------------------------------------------ r1494287 | stefan2 | 2013-06-19 00:32:16 +0400 (Ñð, 19 èþí 2013) | 5 lines Fix a "division by 0" error when upgrading a non-shared repository from a format that supports sharding. * subversion/libsvn_fs_fs/fs_fs.c (upgrade_body): pack revprop shards for sharded repositories only ------------------------------------------------------------------------ r1494298 | stefan2 | 2013-06-19 00:59:07 +0400 (Ñð, 19 èþí 2013) | 12 lines Fix a data loss when 'svnadmin upgrade' gets interrupted after packing the revprops but before bumping the format file. In that case, the non-packed revprops would have already been deleted but the next 'svnadmin upgrade' would drop the packed shard as well and then fail to repack. The fix is to defer the cleanup until after the format bump. * subversion/libsvn_fs_fs/fs_fs.c (upgrade_pack_revprops): don't remove the non-packed shards here ... (upgrade_cleanup_pack_revprops): ... but in this new function (upgrade_body): call the cleanup after the format bump ------------------------------------------------------------------------ r1494318 | stefan2 | 2013-06-19 01:32:04 +0400 (Ñð, 19 èþí 2013) | 4 lines Follow-up to r1494298: actually call the cleanup function * subversion/libsvn_fs_fs/fs_fs.c (upgrade_body): fix copy'n'pasto ------------------------------------------------------------------------ r1494342 | danielsh | 2013-06-19 02:17:09 +0400 (Ñð, 19 èþí 2013) | 3 lines * subversion/tests/svn_test_fs.c (svn_hash.h): Include. (make_fs_config): Add SVN_FS_CONFIG_PRE_1_8_COMPATIBLE to the config hash. ------------------------------------------------------------------------ r1494657 | stsp | 2013-06-19 19:33:10 +0400 (Ñð, 19 èþí 2013) | 8 lines Remove duplicate invocations of the conflict resolver from the update editor. * subversion/libsvn_wc/update_editor.c (mark_directory_edited, mark_file_edited): Don't invoke the conflict resolver here, the close_file() and close_directory() functions take care of this already. ------------------------------------------------------------------------ r1494913 | stefan2 | 2013-06-20 14:31:53 +0400 (×ò, 20 èþí 2013) | 7 lines Fix a severe performance regression in 'svn log': The new log code will run svn_client__repos_location_segments even if we log on the root folder. That triggered a long-standing performance issue in fs_node_origin_rev. This patch fixes the latter. * subversion/libsvn_fs_fs/tree.c (fs_node_origin_rev): special case root node IDs instead of walking ------------------------------------------------------------------------ r1494967 | stefan2 | 2013-06-20 17:02:07 +0400 (×ò, 20 èþí 2013) | 4 lines Attempt a similar fix to BDB as r1494913 provided for FSFS. * subversion/libsvn_fs_base/tree.c (base_node_origin_rev): add efficient shortcut for the root folder ------------------------------------------------------------------------ r1495063 | stsp | 2013-06-20 19:53:32 +0400 (×ò, 20 èþí 2013) | 9 lines * subversion/libsvn_fs_fs/tree.c (cache_lookup): Calculate hash_value in an alternative way on strict-alignment architectures, such as Solaris/sparc. Wrap the current calculation in SVN_UNALIGNED_ACCESS_IS_OK to ensure that it is only used on platforms which support unaligned access. Found by: Rainer Jung Thanks to Sergey Raevskiy for spotting a bug in my initial patch. ------------------------------------------------------------------------ r1495104 | rhuijben | 2013-06-20 21:06:22 +0400 (×ò, 20 èþí 2013) | 71 lines Improve http status checking in ra_serf, by providing a default error for unexpected server error, unexpected client error and unexpected moved status values instead of handling all of the unexpected values as SVN_NO_ERROR. This turns the [[ In file 'D:\Development\SVN\Releases\TortoiseSVN-1.8.0\ext\subversion\subversion\libsvn_client\ra.c' line 647: assertion failed (peg_revnum != SVN_INVALID_REVNUM) ]] into the http error that is causing this problem. Something like: [[ svn: E175002: DAV request failed: Content length required ]] * subversion/libsvn_ra_serf/blame.c (svn_ra_serf__get_file_revs): Update caller. * subversion/libsvn_ra_serf/commit.c (return_response_err): Update caller. * subversion/libsvn_ra_serf/getdate.c (svn_ra_serf__get_dated_revision): Add status check and verify result to make sense. * subversion/libsvn_ra_serf/getlocations.c (svn_ra_serf__get_locations): Update caller. * subversion/libsvn_ra_serf/getlocationsegments.c (svn_ra_serf__get_location_segments): Update caller. * subversion/libsvn_ra_serf/getlocks.c (svn_ra_serf__get_locks): Update caller. * subversion/libsvn_ra_serf/inherited_props.c (svn_ra_serf__get_inherited_props): Update caller. * subversion/libsvn_ra_serf/log.c (svn_ra_serf__get_log): Update caller. * subversion/libsvn_ra_serf/mergeinfo.c (svn_ra_serf__get_mergeinfo): Update caller. Don't drop detailed errors. * subversion/libsvn_ra_serf/options.c (svn_ra_serf__v2_get_youngest_revnum): Update caller. Verify if result makes sense. (svn_ra_serf__v1_get_activity_collection): Update caller. (svn_ra_serf__exchange_capabilities): Update caller. * subversion/libsvn_ra_serf/property.c (svn_ra_serf__wait_for_props): Update caller. * subversion/libsvn_ra_serf/ra_serf.h (svn_ra_serf__error_on_status): Update argument to pass the entire status to allow creating better messages for unknown errors. * subversion/libsvn_ra_serf/replay.c (svn_ra_serf__replay): Update caller. (svn_ra_serf__replay_range): Update caller. * subversion/libsvn_ra_serf/update.c (handle_stream): Update caller. (finish_report): Update caller. * subversion/libsvn_ra_serf/util.c (svn_ra_serf__error_on_status): Extend arguments. Provide specialized error for http status 411 and a generic error for all currently unexpected errors. ------------------------------------------------------------------------ r1495204 | stefan2 | 2013-06-21 01:40:50 +0400 (Ïò, 21 èþí 2013) | 16 lines Follow-up to r1495063: integer overflows result in an inefficient hash function and reduce cache effectiveness. This illustrates what happened before the patch: char c = 99; unsigned hash = 0; hash |= c << 8; /* c << 8 is often 0, actually it's undefined */ On a more general note, you don't want to make it easy for parts of the input to cancel each other out. So, adding (potentially) negative values is a bad thing (strategically). * subversion/libsvn_fs_fs/tree.c (cache_lookup): prevent unnecessary integer overflows in hash function ------------------------------------------------------------------------ r1495209 | stefan2 | 2013-06-21 02:11:31 +0400 (Ïò, 21 èþí 2013) | 10 lines Make the hash function used by the FSFS DAG node cache platform-independent. That should help us reproducing issues detected on "exotic" platforms. * subversion/libsvn_fs_fs/tree.c (cache_lookup): normalize chunked calculation to big endian Patch by: stsp Reverted in r1495256. ------------------------------------------------------------------------ r1495214 | stsp | 2013-06-21 02:17:26 +0400 (Ïò, 21 èþí 2013) | 5 lines Follow-up to r1495209: * subversion/libsvn_fs_fs/tree.c: Include apr_want.h for htonl(). Reverted in r1495256. ------------------------------------------------------------------------ r1495256 | stefan2 | 2013-06-21 04:36:48 +0400 (Ïò, 21 èþí 2013) | 5 lines Effectively revert r1495209 and r1495214. Tune and document the remainder. * subversion/libsvn_fs_fs/tree.c (cache_lookup): turn magic number into a constant; fine-tune iteration latencies; add commentary ------------------------------------------------------------------------ r1495329 | philip | 2013-06-21 12:35:37 +0400 (Ïò, 21 èþí 2013) | 9 lines Fix the svnmucc symlink in svn-tools so it doesn't to link to DESTDIR. The user can configure $(bindir) but $(toolsdir) is always a subdir of that so a relative symlink should be OK. Found by: Nico Kadel-Garcia * Makefile.in (INSTALL_EXTRA_TOOLS): Use a relative symlink. ------------------------------------------------------------------------ r1495428 | danielsh | 2013-06-21 17:25:32 +0400 (Ïò, 21 èþí 2013) | 5 lines * subversion/libsvn_fs_base/bdb/env.c (bdb_error_gatherer): Improve the default error code. This was motivated by the following error (on users@): svnadmin: E000000: bdb: Program version 5.1 doesn't match environment version 4.4 ------------------------------------------------------------------------ r1495432 | danielsh | 2013-06-21 17:37:37 +0400 (Ïò, 21 èþí 2013) | 7 lines * subversion/libsvn_repos/fs-wrap.c (svn_repos__validate_prop): Consider NULL a valid value, to allow deleting non-regular props from historical repositories that have them. Suggested by: Arwin Arni (along with a patch) ------------------------------------------------------------------------ r1495446 | danielsh | 2013-06-21 18:17:41 +0400 (Ïò, 21 èþí 2013) | 2 lines * subversion/libsvn_repos/fs-wrap.c (svn_repos__validate_prop): Clarify a comment. ------------------------------------------------------------------------ r1495805 | stefan2 | 2013-06-23 14:36:19 +0400 (Âñ, 23 èþí 2013) | 7 lines Simplify the hash function used for the DAG node cache. * subversion/libsvn_fs_fs/tree.c (cache_entry_t): peg hash_value to unsigned 32 bits which minimizes the number of casts we have to do (cache_lookup): same here, including FACTOR; drop the chunky alternative to unaligned data access ------------------------------------------------------------------------ r1495850 | lgo | 2013-06-23 21:14:58 +0400 (Âñ, 23 èþí 2013) | 8 lines Fix a crash in TSVN when receiving a property update on a directory with local property modifications. (See: http://svn.haxx.se/dev/archive-2013-06/0543.shtml) * subversion/libsvn_wc/update_editor.c (close_directory): Use eb->cancel_baton instead of eb->conflict_baton for the cancel_baton parameter in the call to svn_wc__conflict_invoke_resolver. ------------------------------------------------------------------------ r1495978 | danielsh | 2013-06-24 14:15:31 +0400 (Ïí, 24 èþí 2013) | 4 lines Silence a compiler warning. * subversion/libsvn_fs_fs/tree.c (cache_lookup): Only declare FACTOR when it is used. ------------------------------------------------------------------------ r1496110 | pburba | 2013-06-24 20:15:27 +0400 (Ïí, 24 èþí 2013) | 6 lines Avoid a segfault in svn_client_log5, see http://svn.haxx.se/dev/archive-2013-06/0522.shtml * subversion/libsvn_client/log.c (run_ra_get_log): bsearch can return NULL, so handle that. ------------------------------------------------------------------------ r1496132 | rhuijben | 2013-06-24 21:40:21 +0400 (Ïí, 24 èþí 2013) | 11 lines Provide a slightly more detectable error code than APR_EGENERAL when a connection fails on opening an ra session. The combination serf/apr should really provide the error stored for the connection (in the sockopt SO_ERROR) instead of this catch all error, to allow users and clients access to more detailed diagnosis. * subversion/libsvn_ra_serf/serf.c (svn_ra_serf__open): Wrap APR_EGENERAL with an error that is diagnosable from code as being network related. ------------------------------------------------------------------------ r1496151 | rhuijben | 2013-06-24 22:29:34 +0400 (Ïí, 24 èþí 2013) | 3 lines * subversion/libsvn_ra_serf/serf.c (svn_ra_serf__open): Following up on r1496132, don't crash on non errors. ------------------------------------------------------------------------ r1496938 | julianfoad | 2013-06-26 17:57:47 +0400 (Ñð, 26 èþí 2013) | 2 lines * subversion/svn/svn.c (svn_cl__cmd_table): Tweak grammar in merge help text, following r1491432. ------------------------------------------------------------------------ r1496957 | stefan2 | 2013-06-26 19:14:43 +0400 (Ñð, 26 èþí 2013) | 4 lines Try a different approach to optimize 'svn log' on the repo root. * subversion/libsvn_client/log.c (svn_client_log5): at repo root, we already know the only location segment ------------------------------------------------------------------------ r1497002 | philip | 2013-06-26 20:50:59 +0400 (Ñð, 26 èþí 2013) | 17 lines When possible pass the stream's file to external diff rather than creating a temporary spool file. Fixes issue 4382. * subversion/include/private/svn_io_private.h (svn_stream__aprfile): New. * subversion/libsvn_subr/stream.c (struct svn_stream_t): Add file member. (svn_stream_create, svn_stream_from_aprfile2): Set file member. (svn_stream__aprfile): New. * subversion/libsvn_client/diff.c (diff_content_changed): Use stream's file if possible. * subversion/svnlook/svnlook.c (print_diff_tree): Use stream's file if possible. ------------------------------------------------------------------------ r1497318 | stsp | 2013-06-27 16:01:33 +0400 (×ò, 27 èþí 2013) | 8 lines Better explain working copy locks in 'svn help status' output. * subversion/svn/svn.c (svn_cl__cmd_table): When describing the third status cloumn, which shows 'L', clearly state the purpose of the working copy write lock. This should avoid confusing with other kinds of locks, such as the ones created with the 'svn lock' command. ------------------------------------------------------------------------ r1497319 | stsp | 2013-06-27 16:11:21 +0400 (×ò, 27 èþí 2013) | 8 lines Better explain exclusive-commit locks in 'svn help status' output. * subversion/svn/svn.c (svn_cl__cmd_table): When describing the sixth status cloumn, which shows local and remove lock tocken state, use wording that is easier to understand for novice users, who might not exactly know what a 'lock token' is, for example. ------------------------------------------------------------------------ r1497551 | gstein | 2013-06-28 00:09:51 +0400 (Ïò, 28 èþí 2013) | 7 lines Fix the Accept-Encoding header format. Reported by: George Schizas * subversion/libsvn_ra_serf/update.c: (setup_update_report_headers): use "," between format types ------------------------------------------------------------------------ r1497804 | danielsh | 2013-06-28 19:13:35 +0400 (Ïò, 28 èþí 2013) | 8 lines Tweak sqlite error messages: put the error code consistently next to the "sqlite:" prefix (except one place where there is no such prefix). * subversion/libsvn_subr/sqlite.c (SQLITE_ERR, SQLITE_ERR_MSG, exec_sql2, svn_sqlite__step): Use 'sqlite[S%d]:' prefix. (init_sqlite): Use square brackets around 'S%d' for consistency. ------------------------------------------------------------------------ r1498136 | brane | 2013-06-30 18:42:05 +0400 (Âñ, 30 èþí 2013) | 11 lines Disable named atomics if APR does not implement memory-mapped files. People still use Subversion on platforms where mmap is not available. See: http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51CE9626.2000201%40gknw.net%3E * subversion/libsvn_subr/named_atomic.c (mutex_initialized, init_thread_mutex, delete_lock_file): Elide when !APR_HAS_MMAP. (svn_named_atomic__is_supported): Return FALSE when !APR_HAS_MMAP. (svn_atomic_namespace__create): Return APR_ENOTIMPL when !APR_HAS_MMAP. ------------------------------------------------------------------------ r1498449 | danielsh | 2013-07-01 17:47:14 +0400 (Ïí, 01 èþë 2013) | 5 lines Break out a helper function. * subversion/libsvn_ra/util.c (svn_ra__assert_mergeinfo_capable_server): Break out some code into.. (get_path): .. this new function. While here, mark a string for translation. ------------------------------------------------------------------------ r1498455 | danielsh | 2013-07-01 17:51:26 +0400 (Ïí, 01 èþë 2013) | 4 lines Fix a segfault in kidney blame. * subversion/libsvn_ra/util.c (svn_ra__assert_capable_server): Handle NULL paths. ------------------------------------------------------------------------ r1498456 | danielsh | 2013-07-01 17:52:50 +0400 (Ïí, 01 èþë 2013) | 5 lines ra_serf: when querying for the 'get-file-revs-reverse' capability, answer 'No' rather than 'Never heard of that one.' * subversion/libsvn_ra_serf/options.c (options_response_handler): Recognise SVN_RA_CAPABILITY_GET_FILE_REVS_REVERSE. ------------------------------------------------------------------------ r1498483 | danielsh | 2013-07-01 18:35:37 +0400 (Ïí, 01 èþë 2013) | 7 lines svn_test: Add a helper function. * subversion/tests/svn_test_fs.h (svn_test__validate_tree): Declare. * subversion/tests/svn_test_fs.c (svn_test__validate_tree): Implement. ------------------------------------------------------------------------ r1498484 | danielsh | 2013-07-01 18:36:40 +0400 (Ïí, 01 èþë 2013) | 8 lines Improve a regression test. * subversion/tests/libsvn_fs/fs-test.c (svn_hash.h): Include. (filename_trailing_newline): Switch from a blacklist approach to to a whitelist approach, for defining backends that don't implement the API correctly. Also extend the test to actually commit the files and dirs, and verify the commit. ------------------------------------------------------------------------ r1498486 | danielsh | 2013-07-01 18:38:27 +0400 (Ïí, 01 èþë 2013) | 4 lines * subversion/tests/libsvn_fs/fs-test.c (filename_trailing_newline): Rename a local variable. Suggested by: stsp ------------------------------------------------------------------------ r1498550 | danielsh | 2013-07-01 20:27:33 +0400 (Ïí, 01 èþë 2013) | 7 lines Fix a client segfault in svn_ra_get_commit_editor3() with a NULL log message. * subversion/libsvn_ra_svn/client.c (ra_svn_commit): Handle a NULL log message. * subversion/libsvn_ra_svn/protocol (commit): Note an API change to do when next revving this protocol command. ------------------------------------------------------------------------ r1498564 | rhuijben | 2013-07-01 20:53:35 +0400 (Ïí, 01 èþë 2013) | 15 lines Allow meta-data only moves to succeed when there is already an unversioned file as the move target. This 'fix-after-move' scenario is exactly one of the scenarios where this option was added for. Found via AnkhSVN user issue. * subversion/libsvn_client/copy.c (verify_wc_dsts): Add metadata_only argument and don't check for local unversioned obstructions if it is set. (verify_wc_srcs_and_dsts): Add metadata_only argument and update caller. (repos_to_wc_copy_locked): Update caller. (try_copy): Update caller. ------------------------------------------------------------------------ r1498851 | rhuijben | 2013-07-02 13:16:55 +0400 (Âò, 02 èþë 2013) | 13 lines In the serf transition based xml parser: provide an explicit error if the root element isn't matched in the transition table. Without this most parsers just return success for every invalid element such as '' when the file contains valid xml. This requires a better (new) error code which I'll add as a separate commit, to allow backporting this. * subversion/libsvn_ra_serf/xml.c (svn_ra_serf__xml_cb_start): Expect transitions from the default state to succeed, by returning an error when it doesn't. ------------------------------------------------------------------------ r1498885 | brane | 2013-07-02 15:37:54 +0400 (Âò, 02 èþë 2013) | 7 lines Fix change initialization in the Ev2 compatibility shims. The shims expect an uninitialized change record's kind to be svn_node_unknown, but it was initialized to zero, which is svn_node_none. * subversion/libsvn_delta/compat.c: (locate_change): Init change->kind explicitly to svn_node_unknown. ------------------------------------------------------------------------ r1498997 | stsp | 2013-07-02 20:18:30 +0400 (Âò, 02 èþë 2013) | 4 lines * subversion/libsvn_ra/util.c (svn_ra__assert_capable_server): Only call get_path() in error case, it's not needed otherwise. ------------------------------------------------------------------------ r1499034 | danielsh | 2013-07-02 21:44:58 +0400 (Âò, 02 èþë 2013) | 4 lines * build/ac-macros/sqlite.m4 (SVN_LIB_SQLITE.--with-sqlite): Look for sqlite-amalgamation in the build dir, too. (SVN_DOWNLOAD_SQLITE): Adjust error message accordingly. ------------------------------------------------------------------------ r1499064 | stsp | 2013-07-02 23:12:34 +0400 (Âò, 02 èþë 2013) | 5 lines Fix issue #4387: Regression: svn merge --record-only errors out on renamed path * subversion/libsvn_client/merge.c (record_tree_conflict): Don't record a conflict during record-only merges. ------------------------------------------------------------------------ r1499095 | stsp | 2013-07-03 00:19:10 +0400 (Ñð, 03 èþë 2013) | 6 lines Fix issue #4388, crash during tree conflict resolution. * subversion/libsvn_wc/wc_db_update_move.c (svn_wc__db_resolve_delete_raise_moved_away): Don't deref old_version unconditionally, as it can be NULL. ------------------------------------------------------------------------ r1499096 | stsp | 2013-07-03 00:22:26 +0400 (Ñð, 03 èþë 2013) | 6 lines * subversion/libsvn_wc/wc_db_update_move.c (svn_wc__db_update_moved_away_conflict_victim): Pre-emptively guard against NULL deref in case either or both old_version and new_version are NULL. Found by code inspection, not sure if a crash can be triggered. See also r1499095 and issue #4388. ------------------------------------------------------------------------ r1499100 | breser | 2013-07-03 00:31:57 +0400 (Ñð, 03 èþë 2013) | 6 lines Add test for config files with UTF-8 Byte Order Mark. * subversion/tests/libsvn_sub/config-test.c (test_ignore_bom, test_funcs): Add new test. ------------------------------------------------------------------------ r1499403 | danielsh | 2013-07-03 17:48:57 +0400 (Ñð, 03 èþë 2013) | 4 lines Follow-up to r1495329: * Makefile.in (INSTALL_EXTRA_TOOLS): Use an absolute symlink instead of a relative ------------------------------------------------------------------------ r1499438 | danielsh | 2013-07-03 19:17:07 +0400 (Ñð, 03 èþë 2013) | 14 lines Block building with BDB 6. * build/ac-macros/berkeley-db.m4 (SVN_LIB_BERKELEY_DB_TRY): Block building with BDB 6, with a comment explaining why. (SVN_LIB_BERKELEY_DB): Document that only 4.x and 5.x are supported. (--with-berkeley-db): Ditto. The help string does not evaluate the $, but that is a preexisting bug that should be fixed separately. * build/generator/gen_win.py (GeneratorBase._find_bdb): Add a comment cautioning against enabling BDB 6. * configure.ac: Define $db_alt_version and use it in an error message. ------------------------------------------------------------------------ r1499447 | danielsh | 2013-07-03 19:43:12 +0400 (Ñð, 03 èþë 2013) | 4 lines * configure.ac: Nuke the warning at the end about not building with BDB, because the BDB backend is deprecated. The warning had a bug: it referred to $with_berkeley_db which is never set. ------------------------------------------------------------------------ r1499460 | danielsh | 2013-07-03 20:20:21 +0400 (Ñð, 03 èþë 2013) | 12 lines configure: Add an opt-in for BDB 6. Review by: stsp (He co-authored the warning text, too.) * build/ac-macros/berkeley-db.m4 (--enable-banging-head-against-wall): New option. (SVN_LIB_BERKELEY_DB_TRY): Grow new parameter, add a possible return value. (SVN_LIB_BERKELEY_DB): Add a new failure mode when bdb6 was found but the opt-in not used. * configure.ac: Add a detailed warning message for "Found, but not opt-in" case. ------------------------------------------------------------------------ r1499483 | breser | 2013-07-03 21:17:24 +0400 (Ñð, 03 èþë 2013) | 5 lines Fix a typo in the config file BOM test. * subversion/tests/libsvn_subr/config-test.c (test_ignore_bom): First char of UTF-8 BOM is 0xEF not 0xEE ------------------------------------------------------------------------ r1499492 | breser | 2013-07-03 21:30:21 +0400 (Ñð, 03 èþë 2013) | 8 lines Fix incorrect conversion of char to int in config file parsing. See: https://www.securecoding.cert.org/confluence/display/seccode/STR34-C.+Cast+characters+to+unsigned+char+before+converting+to+larger+integer+sizes * subversion/libsvn_subr/config_file.c (parser_getc, parser_getc_plain): Before converting char to int cast to unsigned char. ------------------------------------------------------------------------ r1499496 | breser | 2013-07-03 21:42:42 +0400 (Ñð, 03 èþë 2013) | 9 lines Allow config files to have a UTF-8 BOM at the start. * subversion/libsvn_subr/config_file.c (skip_bom): New function to skip a UTF-8 BOM. (svn_config__parse_stream): Call skip_bom() at start of parsing. * subversion/tests/libsvn_subr/config-test.c (test_funcs): Mark test_ignore_bom as passing. ------------------------------------------------------------------------ r1499498 | breser | 2013-07-03 21:50:46 +0400 (Ñð, 03 èþë 2013) | 6 lines Clean up some style nits in skip_bom(). * subversion/libsvn_subr/config_file.c (skip_bom): Remove some unnecessary syntax that I thought I'd removed before committing r1499496. ------------------------------------------------------------------------ r1499727 | danielsh | 2013-07-04 15:45:20 +0400 (×ò, 04 èþë 2013) | 18 lines Follow-up to r1498550: widely document the implementation detail that r1498550 relies on, and elevate it to a protocol promise. No functional change (comment changes only). Suggested by: philip * subversion/libsvn_ra_svn/client.c (ra_svn_commit): Extend documentation of the LOG_MSG manipulation. * subversion/libsvn_ra_svn/protocol (commit): Specify the behaviour of the server when both LOGMSG and REVPROP-TABLE are present. I verified (by code inspection) that 1.5.x@HEAD behaves that way, so presumably everything in [1.5.0, trunk@HEAD]. * subversion/svnserve/serve.c (commit): Point to the new protocol promise. ------------------------------------------------------------------------ r1500074 | danielsh | 2013-07-05 21:21:09 +0400 (Ïò, 05 èþë 2013) | 7 lines Properly format the error message during unintended switches. * subversion/libsvn_client/cmdline/switch.c (switch_internal): Use local style for paths when formatting the "no common ancestry" error message. Patch by: Evgeny Kotkov ------------------------------------------------------------------------ r1500175 | danielsh | 2013-07-06 03:57:53 +0400 (Ñá, 06 èþë 2013) | 4 lines Followup to r1499034: * build/ac-macros/sqlite.m4 (SVN_DOWNLOAD_SQLITE): Don't print the same path twice. ------------------------------------------------------------------------ r1500226 | brane | 2013-07-06 12:19:06 +0400 (Ñá, 06 èþë 2013) | 10 lines Fix a thinko in the Ev2 shims that caused the driver to prepend a "/" to copyfrom paths without considering that they might be URLs already. The bug was triggered by running the tests for the Ev2 commit editor in JavaHL via http://. * subversion/libsvn_delta/compat.c (apply_change): Try to make an FS path (starting with "/") from the copyfrom path only when the editor baton does not contain a proper reposiutory root URL. ------------------------------------------------------------------------ r1500680 | stsp | 2013-07-08 16:07:35 +0400 (Ïí, 08 èþë 2013) | 9 lines Use local style for paths when formatting error messages from the 'svn diff --old A --new B' commands. Follow-up to r1310291. * subversion/libsvn_client/diff_local.c (svn_client__arbitrary_nodes_diff): Use local style for paths when formatting the "not the same node kind" and "not a file or directory" messages. Patch by: Evgeny Kotkov ------------------------------------------------------------------------ r1500695 | stsp | 2013-07-08 16:37:07 +0400 (Ïí, 08 èþë 2013) | 8 lines Rename --enable-banging-head-against-wall to --enable-bdb6. I still like the former name for this option, however using a clear name will help packagers and people trying to read packaging scripts, and that's more important than making a joke. * build/ac-macros/berkeley-db.m4 configure.ac: Rename --enable-banging-head-against-wall to --enable-bdb6. ------------------------------------------------------------------------ r1500762 | stsp | 2013-07-08 18:29:04 +0400 (Ïí, 08 èþë 2013) | 13 lines Prevent the GPG Agent password store from overriding other password stores even though no usable GPG Agent is running. * subversion/libsvn_subr/gpg_agent.c (find_running_gpg_agent): New helper function that finds a running GPG Agent. This code was split out from the upper half of ... (password_get_gpg_agent): ... this function. (password_set_gpg_agent): Don't unconditionally set *done to TRUE. While it is correct that we don't need to explicitly store the password in the agent, this function must check whether a usable GPG Agent exists. Otherwise, users might be left with no usable password store, since the gpg-agent store wrongly claims that the password was saved, when it actually wasn't. ------------------------------------------------------------------------ r1500799 | stsp | 2013-07-08 19:34:55 +0400 (Ïí, 08 èþë 2013) | 7 lines * subversion/libsvn_subr/gpg_agent.c (password_set_gpg_agent): Don't require GPG_TTY to be set in the environment. This variable is only needed in some GPG Agent configurations, and we should allow other configurations to work as well. For example, a GUI app might talk to GPG agent without a TTY. Apparently, this is the case on Mac OS X, according to Ben Reser. ------------------------------------------------------------------------ r1500801 | stsp | 2013-07-08 19:37:28 +0400 (Ïí, 08 èþë 2013) | 5 lines * subversion/libsvn_subr/gpg_agent.c (password_get_gpg_agent): Don't require GPG_TTY and TERM to be set in the environment. These variables are only needed in some GPG Agent configurations. See also r1500799. ------------------------------------------------------------------------ r1500802 | stsp | 2013-07-08 19:41:01 +0400 (Ïí, 08 èþë 2013) | 3 lines * subversion/libsvn_subr/gpg_agent.c (password_set_gpg_agent): Remove unused variable. ------------------------------------------------------------------------ r1500904 | breser | 2013-07-08 23:40:29 +0400 (Ïí, 08 èþë 2013) | 5 lines swig-pl: Fix typo introduced in r1490721. * subversion/bindings/swig/perl/native/Client.pm ($revision): s/alos/also/ ------------------------------------------------------------------------ r1500928 | danielsh | 2013-07-09 00:25:22 +0400 (Âò, 09 èþë 2013) | 5 lines * build/ac-macros/berkeley-db.m4: Change --disable-bdb6 to --enable-bdb6 in the docstring, for consistency with every other helpstring in our configure. Found by: breser