subversion

Checkout Tools
  • last updated 1 hour ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

Changeset 1464995 is being indexed.

Revert r1464774. Was a temporary changed to deal with delayed publication

of 1.7.9.

'svnadmin info': sketch the public API.

Declare the new APIs:

* subversion/include/svn_fs.h

(svn_fs_info, svn_fs_info_t, svn_fs_info_dup): New.

* subversion/include/svn_repos.h

(svn_repos_info, svn_repos_info_t, svn_repos_info_dup): New.

(svn_repos_capabilities): New.

And provide "Not implemented" definitions:

* subversion/libsvn_fs/fs-loader.c

(svn_fs_info, svn_fs_info_dup): Dummy implementations.

* subversion/libsvn_repos/repos.c

(svn_repos_info, svn_repos_info_dup): Dummy implementations.

(svn_repos_capabilities): Dummy implementation.

Don't allow externals to be deleted with 'svn rm' under any circumstances.

File externals could be deleted with the --force or --keep-local options.

Found by: Florin <support@syncrosvnclient.com>

* subversion/libsvn_client/delete.c

(check_external): New helper function which raises an error if the path

about to be deleted is an external. Split out of ...

(can_delete_node): ... this function, which isn't called in case the

--force or --kee-local options are used.

(svn_client__wc_delete, svn_client__wc_delete_many): Unconditionally call

the check_external() helper function before calling can_delete_node().

Make "svnadmin create --fs-type=bdb" warn about the BDB back-end deprecation.

* subversion/svnadmin/svnadmin.c (subcommand_create): Print a warning to stderr

if the requested filesystem type is "bdb".

* subversion/tests/cmdline/svntest/main.py (create_repos): Expect the output

of "svnadmin create" to contain that warning.

Follow-up to r1464137:

* subversion/libsvn_repos/load-fs-vtable.c

(close_revision): Remove an unneeded initialization.

Add SWIG python support for svn_repos_freeze.

* subversion/include/svn_repos.h

(typedef svn_repos_freeze_func_t): New.

(svn_repos_freeze): Use typedef.

* subversion/libsvn_repos/repos.c

(struct freeze_baton_t, svn_repos_freeze): Use typedef.

* subversion/svnadmin/svnadmin.c

(freeze_body): Add comment.

* subversion/bindings/swig/include/svn_types.swg

(svn_repos_freeze_func_t): New.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_repos_freeze_func): New.

* subversion/bindings/swig/python/tests/repository.py

(setUp): Store repository path.

(freeze_body): New callback.

(test_freeze): New test.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_c_strings_to_list): Fix reference counting.

Extend a swig-py test.

* subversion/bindings/swig/python/tests/client.py

(proplist_receiver_trunk, proplist_receiver_dir1): Change scope.

(test_inherited_props): Verify callbacks are called.

Fix some reference counting bugs in the SWIG Python bindings.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_propinheriteditemarray_to_dict,

svn_swig_py_proparray_to_dict,

svn_swig_py_locationhash_to_dict): Add missing Py_DECREF.

Add SWIG python support for inherited properties with svn_client_propget5

and svn_client_proplist4.

* subversion/bindings/swig/include/svn_containers.swg:

(OUTPUT_OF_PROP_INHERITED_ITEM): New.

* subversion/bindings/swig/include/svn_types.swg

(svn_proplist_receiver2_t): New.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_propinheriteditemarray_to_dict,

svn_swig_py_proplist_receiver2): New.

* subversion/bindings/swig/python/tests/client.py

(test_inherited_props): New.

Merging from r1457676 into verify-keep-going branch.
  1. … 252 more files in changeset.
* publish/download/download.html: Fix subversion-deps* sha1sums.

* publish/index.html,

publish/news.html: Use the permanent ASF mail archives for 1.6.21 and 1.7.9 news.

* contrib/server-side/svncutter/svncutter:

(log): Fix a small but fatal bug in error reporting.

* publish/index.html,

publish/news.html

publish/site-nav.html: Put the update argument on the download link for today

to avoid mirroring issue.

* publish/security/index.html: Add security issues fixed by 1.6.21 and 1.7.9

to the list of security issues.

Sleep for timestamps even if using commit times as timestamps.

Before r1463721, 'revert' did not sleep if using commit times, while

'checkout' and 'update' and 'switch' would sleep regardless. r1463721 made

all of those operations omit the sleep if using commit times, but Philip and

Ben discussed and pointed out that the commit time could still be within the

timestamp resolution and so that could be unsafe. Therefore we will sleep

anyway, in all of those operations, to be safe.

(The commit time could also be *after* the local time because of clock skew,

which adds the possibility that the sleep takes us *into* an unsafe time

period, but we're not trying to address that problem here.)

Found by: breser

* subversion/libsvn_client/revert.c

(svn_client_revert2): Sleep regardless of use-commit-times.

* subversion/libsvn_client/switch.c

(switch_internal): Sleep regardless of use-commit-times.

* subversion/libsvn_client/update.c

(update_internal): Sleep regardless of use-commit-times. (Checkout also

uses this code.)

* publish/index.html,

publish/news.html: Set the announcement links to svn.haxx.se for now.

Update site for 1.6.21 and 1.7.9 release, including the security

advisories fixed by those releases.

* publish/news.html: Add news item for 1.6.21 and 1.7.9 and fix end

div comment on 1.6.20.

* publish/index.html: Add news item for 1.6.21 and 1.7.9 and fix end

div comment on 1.6.20 and remove old news items.

* publish/docs/release-notes/release-history.html: Add 1.6.21 and 1.7.9.

* publish/download/download.html: Updated supported to 1.6.21 and version

to 1.7.9. Update checksums for 1.6.21 and 1.7.9.

* publish/security/CVE-2013-1845-advisory.txt,

publish/security/CVE-2013-1846-advisory.txt,

publish/security/CVE-2013-1847-advisory.txt,

publish/security/CVE-2013-1849-advisory.txt,

publish/security/CVE-2013-1884-advisory.txt: Add new files.

A late minute API change: instead of introducing the "templated"

svn_ra_svn_write_templated_cmd, introduce an explicit API function

with fully typed parameter lists for each svn:// command.

Please note that only the way to express the API changed while the

API itself is still the same. It's basically much safer to use

and extend now.

* subversion/include/svn_ra_svn.h

(svn_ra_svn_cmd_t,

svn_ra_svn_write_templated_cmd): drop that API from 1.8

(svn_ra_svn_write_cmd): update deprecation statement

(svn_ra_svn_write_cmd_target_rev,

svn_ra_svn_write_cmd_open_root,

svn_ra_svn_write_cmd_delete_entry,

svn_ra_svn_write_cmd_add_dir,

svn_ra_svn_write_cmd_open_dir,

svn_ra_svn_write_cmd_change_dir_prop,

svn_ra_svn_write_cmd_close_dir,

svn_ra_svn_write_cmd_absent_dir,

svn_ra_svn_write_cmd_add_file,

svn_ra_svn_write_cmd_open_file,

svn_ra_svn_write_cmd_change_file_prop,

svn_ra_svn_write_cmd_close_file,

svn_ra_svn_write_cmd_absent_file,

svn_ra_svn_write_cmd_apply_textdelta,

svn_ra_svn_write_cmd_textdelta_chunk,

svn_ra_svn_write_cmd_textdelta_end,

svn_ra_svn_write_cmd_close_edit,

svn_ra_svn_write_cmd_abort_edit,

svn_ra_svn_write_cmd_set_path,

svn_ra_svn_write_cmd_delete_path,

svn_ra_svn_write_cmd_link_path,

svn_ra_svn_write_cmd_finish_report,

svn_ra_svn_write_cmd_abort_report,

svn_ra_svn_write_cmd_reparent,

svn_ra_svn_write_cmd_get_latest_rev,

svn_ra_svn_write_cmd_get_dated_rev,

svn_ra_svn_write_cmd_change_rev_prop2,

svn_ra_svn_write_cmd_change_rev_prop,

svn_ra_svn_write_cmd_rev_proplist,

svn_ra_svn_write_cmd_rev_prop,

svn_ra_svn_write_cmd_get_file,

svn_ra_svn_write_cmd_update,

svn_ra_svn_write_cmd_switch,

svn_ra_svn_write_cmd_status,

svn_ra_svn_write_cmd_diff,

svn_ra_svn_write_cmd_check_path,

svn_ra_svn_write_cmd_stat,

svn_ra_svn_write_cmd_get_file_revs,

svn_ra_svn_write_cmd_lock,

svn_ra_svn_write_cmd_unlock,

svn_ra_svn_write_cmd_get_lock,

svn_ra_svn_write_cmd_get_locks,

svn_ra_svn_write_cmd_replay,

svn_ra_svn_write_cmd_replay_range,

svn_ra_svn_write_cmd_get_deleted_rev,

svn_ra_svn_write_cmd_get_iprops,

svn_ra_svn_write_cmd_finish_replay): provide one function for each

svn:// protocol command

* subversion/libsvn_ra_svn/marshal.c

(vwrite_tuple_start_list,

vwrite_tuple_end_list): drop

(write_tuple_cstring,

write_tuple_cstring_opt,

write_tuple_string,

write_tuple_string_opt,

write_tuple_start_list,

write_tuple_end_list,

write_tuple_word,

write_tuple_word_opt,

write_tuple_revision,

write_tuple_revision_opt,

write_tuple_number,

write_tuple_boolean,

write_tuple_depth): duplicates of the vwrite_* functions but with typed

parameters instead of a va_list

(write_cmd_add_node,

write_cmd_open_node,

write_cmd_change_node_prop,

write_cmd_absent_node): renamed from vwrite* but with proper parameter lists

(vwrite_cmd_open_root,

vwrite_cmd_delete_entry,

vwrite_cmd_add_dir,

vwrite_cmd_open_dir,

vwrite_cmd_change_dir_prop,

vwrite_cmd_absent_dir,

vwrite_cmd_add_file,

vwrite_cmd_open_file,

vwrite_cmd_change_file_prop,

vwrite_cmd_close_file,

vwrite_cmd_absent_file,

vwrite_cmd_textdelta_chunk,

vwrite_cmd_apply_textdelta,

vwrite_cmd_no_op,

vwrite_cmd_set_path,

vwrite_cmd_link_path,

vwrite_cmd_change_rev_prop2,

vwrite_cmd_change_rev_prop,

vwrite_cmd_rev_prop,

vwrite_cmd_get_file,

vwrite_cmd_update,

vwrite_cmd_switch,

vwrite_cmd_status,

vwrite_cmd_diff,

vwrite_cmd_check_path,

vwrite_cmd_stat,

vwrite_cmd_get_file_revs,

vwrite_cmd_lock,

vwrite_cmd_unlock,

vwrite_cmd_get_locks,

vwrite_cmd_replay,

vwrite_cmd_replay_range,

vwrite_cmd_get_deleted_rev,

vwrite_cmd_get_iprops): adapt and move to new command implementations

(vwrite_tuple): update

(vwrite_tuple_func,

cmd_template_t,

cmd_templates,

svn_ra_svn_write_templated_cmd): drop them

(svn_ra_svn_write_cmd_target_rev,

svn_ra_svn_write_cmd_open_root,

svn_ra_svn_write_cmd_delete_entry,

svn_ra_svn_write_cmd_add_dir,

svn_ra_svn_write_cmd_open_dir,

svn_ra_svn_write_cmd_change_dir_prop,

svn_ra_svn_write_cmd_close_dir,

svn_ra_svn_write_cmd_absent_dir,

svn_ra_svn_write_cmd_add_file,

svn_ra_svn_write_cmd_open_file,

svn_ra_svn_write_cmd_change_file_prop,

svn_ra_svn_write_cmd_close_file,

svn_ra_svn_write_cmd_absent_file,

svn_ra_svn_write_cmd_apply_textdelta,

svn_ra_svn_write_cmd_textdelta_chunk,

svn_ra_svn_write_cmd_textdelta_end,

svn_ra_svn_write_cmd_close_edit,

svn_ra_svn_write_cmd_abort_edit,

svn_ra_svn_write_cmd_set_path,

svn_ra_svn_write_cmd_delete_path,

svn_ra_svn_write_cmd_link_path,

svn_ra_svn_write_cmd_finish_report,

svn_ra_svn_write_cmd_abort_report,

svn_ra_svn_write_cmd_reparent,

svn_ra_svn_write_cmd_get_latest_rev,

svn_ra_svn_write_cmd_get_dated_rev,

svn_ra_svn_write_cmd_change_rev_prop2,

svn_ra_svn_write_cmd_change_rev_prop,

svn_ra_svn_write_cmd_rev_proplist,

svn_ra_svn_write_cmd_rev_prop,

svn_ra_svn_write_cmd_get_file,

svn_ra_svn_write_cmd_update,

svn_ra_svn_write_cmd_switch,

svn_ra_svn_write_cmd_status,

svn_ra_svn_write_cmd_diff,

svn_ra_svn_write_cmd_check_path,

svn_ra_svn_write_cmd_stat,

svn_ra_svn_write_cmd_get_file_revs,

svn_ra_svn_write_cmd_lock,

svn_ra_svn_write_cmd_unlock,

svn_ra_svn_write_cmd_get_lock,

svn_ra_svn_write_cmd_get_locks,

svn_ra_svn_write_cmd_replay,

svn_ra_svn_write_cmd_replay_range,

svn_ra_svn_write_cmd_get_deleted_rev,

svn_ra_svn_write_cmd_get_iprops,

svn_ra_svn_write_cmd_finish_replay): implement using write_* functions

* subversion/libsvn_ra_svn/client.c

(ra_svn_set_path,

ra_svn_delete_path,

ra_svn_link_path,

ra_svn_abort_report,

ra_svn_reparent,

ra_svn_rev_proplist,

ra_svn_rev_prop,

ra_svn_get_file,

ra_svn_update,

ra_svn_switch,

ra_svn_status,

ra_svn_diff,

ra_svn_check_path,

ra_svn_stat,

ra_svn_lock_compat,

ra_svn_get_lock,

ra_svn_get_locks,

ra_svn_replay,

ra_svn_replay_range,

ra_svn_get_deleted_rev,

ra_svn_get_inherited_props): update to use the new explicit API

* subversion/libsvn_ra_svn/editorp.c

(check_for_error_internal,

ra_svn_target_rev,

ra_svn_open_root,

ra_svn_delete_entry,

ra_svn_add_dir,

ra_svn_open_dir,

ra_svn_close_dir,

ra_svn_absent_dir,

ra_svn_add_file,

ra_svn_open_file,

ra_svn_close_file,

ra_svn_absent_file,

ra_svn_close_edit,

ra_svn_abort_edit): update to use the new explicit API

* subversion/svnserve/serve.c

(replay_one_revision): update to use the new explicit API

Followup to r1464679: forcibly break some code which is #define'd away, but

won't compile if uncommented.

* tools/client-side/svn-bench/client_errors.h,

* subversion/svn/client_errors.h:

Break the unused SVN_ERROR_BUILD_ARRAY mode by adding an #error directive.

Followup to r1464667: note a duplication.

* subversion/libsvn_subr/error.c (struct err_defn),

* subversion/tests/libsvn_subr/error-code-test.c (struct err_defn):

Cross-reference these to each other.

(We could make SVN_ERROR_BUILD_ARRAY define the type (in the svn_* namespace).)

* subversion/tests/libsvn_subr/error-code-test.c

(err_defn): Following up on r1464570, follow struct layout change in error.c

Adjust the CVSSv2 entry based on feedback from Daniel Shahaf.

* publish/faq.html

(cvssv2): Adjust link text not to have leading whitespace, remove the

word numerical since it was redundant.

Adjust the naming of svn_version.h.dist to allow multiple releases at the same

time.

* tools/dist/release.py

(roll_tarballs,move_to_dist): Include the version number in the

svn_version.h.dist file, e.g. svn_version.h.dist-1.6.21

Patch by: danielsh

* subversion/bindings/cxxhl/include/svncxxhl.hpp

* subversion/bindings/cxxhl/include/svncxxhl/exception.hpp

* subversion/bindings/cxxhl/include/svncxxhl/tristate.hpp

* subversion/bindings/cxxhl/include/svncxxhl/_compat.hpp

(svn:eol-style): Set native.

Set svn:eol-style native on several new files.

* subversion/bindings/cxxhl/src/exception.cpp

* subversion/bindings/cxxhl/src/tristate.cpp

* subversion/bindings/cxxhl/tests/test_exception.cpp

* subversion/bindings/swig/python/tests/checksum.py

* subversion/bindings/javahl/native/DiffOptions.h

* subversion/bindings/javahl/native/DiffOptions.cpp

* subversion/bindings/javahl/native/ReposFreezeAction.cpp

* subversion/bindings/javahl/native/org_apache_subversion_javahl_types_VersionExtended.cpp

* subversion/bindings/javahl/native/ReposFreezeAction.h

* subversion/bindings/javahl/native/VersionExtended.h

* subversion/bindings/javahl/native/VersionExtended.cpp

* subversion/libsvn_ra/deprecated.h

Set svn:eol-style native. No text changes.

* subversion/libsvn_wc/diff.h

Set svn:eol-style native. All lines updated to update eol.

Factor out some duplicate code in find_last_merged_location(). No logical

change.

* subversion/libsvn_client/merge.c

(short_circuit_mergeinfo_log): New.

(find_last_merged_location): Call new helper.

* subversion/svn/file-merge.c

(prepare_line_for_display): Try to fix signed/unsigned comparison warning

seen in the windows buildbot logs.

Follow-up to r1464570.

* subversion/tests/libsvn_subr/error-test.c

(test_error_symbolic_name): Fix typo in comment.