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

Changeset 1445516 is being indexed.

Use SVN_TEST_ASSERT_ERROR macro rather than coding the error comparison.

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

(test_svn_subst_translate_string2): Use macro.

* subversion/tests/libsvn_wc/db-test.c

(test_getting_info): Use macro.

* subversion/tests/libsvn_wc/op-depth-test.c

(test_op_revert, copy_wc_wc_server_excluded, layered_moved_to,

update_within_move): Use macro.

* subversion/tests/libsvn_wc/pristine-store-test.c

(pristine_write_read, reject_mismatching_text): Use macro.

  1. … 3 more files in changeset.
Coding style patch: in logical expressions, instead of comparing

with arithmetic constants use boolean operations. I.e. replace

<expr> == TRUE with <expr> and

<expr> == FALSE with !<expr>

* subversion/libsvn_delta/svndiff.c

(send_simple_insertion_window,

window_handler): change condition style

* subversion/libsvn_fs_base/fs.c

(svn_fs_base__clean_logs): ditto

* subversion/libsvn_fs_fs/fs_fs.c

(representation_string,

create_rep_state_body,

build_rep_list): ditto

* subversion/libsvn_ra_serf/locks.c

(handle_lock): ditto

* subversion/libsvn_ra_serf/property.c

(create_propfind_body): same here,

* subversion/libsvn_ra_serf/update.c

(cancel_fetch,

handle_fetch,

end_report,

finish_report): here,

* subversion/libsvn_ra_serf/util.c

(svn_ra_serf__handle_xml_parser): here,

* subversion/libsvn_ra_svn/client.c

(optbool_to_tristate): here,

* subversion/libsvn_repos/authz.c

(authz_parse_section): and here.

* subversion/libsvn_repos/fs-wrap.c

(svn_repos__validate_prop): here as well

* subversion/libsvn_subr/cmdline.c

(svn_cmdline_create_auth_baton): and here

* subversion/libsvn_subr/deprecated.c

(print_command_info): here

* subversion/libsvn_subr/opt.c

(print_command_info2): more of the same

* subversion/libsvn_subr/subst.c

(translate_chunk): ditto

* subversion/libsvn_subr/win32_crashrpt.c

(write_var_values,

svn__unhandled_exception_filter): ditto

* subversion/svn/svn.c

(sub_main): ditto

* subversion/svnsync/svnsync.c

(filter_props): and more of the

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

(test_readonly): same thing

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

(test21): ditto

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

(test_svn_subst_translate_string2_null_encode): here

* subversion/tests/libsvn_wc/db-test.c

(test_getting_info,

test_working_info): and here

* tools/client-side/svn-bench/svn-bench.c

(sub_main): and finally here

  1. … 21 more files in changeset.
Add a 'properties' output parameter to most of the WC DB functions that read

node info from a layer:

svn_wc__db_base_get_info_internal()

svn_wc__db_base_get_info()

svn_wc__db_depth_get_info()

svn_wc__db_read_pristine_info()

svn_wc__db_read_info() -- NOT YET

The aim is to regularize the APIs by getting the props along with other info

about a node. This should allow the documentation and the implementation to

become more consistent than the separate APIs we currently have for reading

the props alone -- for example, there is currently no API to read the props

for a node at a given depth.

The new 'props' output does not replace the 'had_props' boolean output which

remains available for callers that just need to test for the presence of

properties, since that is quicker.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_base_get_info,

svn_wc__db_read_pristine_info): Add a 'props' output parameter.

* subversion/libsvn_wc/wc_db_private.h

(svn_wc__db_base_get_info_internal,

svn_wc__db_depth_get_info): Add a 'props' output parameter.

* subversion/libsvn_wc/wc_db.c

(svn_wc__db_base_get_info_internal,

svn_wc__db_base_get_info,

svn_wc__db_depth_get_info): Add a 'props' output parameter.

(...everywhere...): Track the change: pass NULL.

* subversion/libsvn_wc/adm_crawler.c,

subversion/libsvn_wc/adm_files.c,

subversion/libsvn_wc/ambient_depth_filter_editor.c,

subversion/libsvn_wc/conflicts.c,

subversion/libsvn_wc/diff_editor.c,

subversion/libsvn_wc/diff_local.c,

subversion/libsvn_wc/entries.c,

subversion/libsvn_wc/externals.c,

subversion/libsvn_wc/info.c,

subversion/libsvn_wc/node.c,

subversion/libsvn_wc/status.c,

subversion/libsvn_wc/update_editor.c,

subversion/libsvn_wc/util.c,

subversion/libsvn_wc/wc_db_update_move.c,

subversion/libsvn_wc/workqueue.c

(...everywhere...): Track the change: pass NULL.

* subversion/tests/libsvn_wc/db-test.c

(test_getting_info): Test the new parameter (just a tiny bit).

(...everywhere...): Track the change: pass NULL.

  1. … 18 more files in changeset.
Make retrieving the BASE properties on a node that doesn't have properties,

because it has some not-present state an error.

* subversion/libsvn_wc/wc-queries.sql

(STMT_SELECT_BASE_PROPS): Also select presence.

* subversion/libsvn_wc/wc_db.c

(svn_wc__db_base_get_props): In the no-properties case check the presence

and return an error instead of an empty hash for presence values that don't

have properties.

* subversion/tests/libsvn_wc/db-test.c

(validate_node): Don't retrieve properties for not present nodes.

  1. … 2 more files in changeset.
Standardize the naming of the recorded size and time variable names.

No functional changes.

* subversion/libsvn_wc/adm_ops.c

(revert_restore): Rename local variable.

* subversion/libsvn_wc/entries.c

(db_node_t): Rename variables in struct.

(insert_node,

write_entry): Update users.

* subversion/libsvn_wc/props.c

(do_propset): Update comment.

* subversion/libsvn_wc/status.c

(read_info,

assemble_status): Update struct usage.

* subversion/libsvn_wc/update_editor.c

(svn_wc_add_repos_file4): Update comment.

* subversion/libsvn_wc/wc_db.c

(read_info): Rename argument in prototype.

(insert_base_node): Rename variable.

(record_baton_t): Add comment. Use proper variable names.

(db_record_fileinfo,

svn_wc__db_global_record_fileinfo,

set_props_txn): Update baton usage.

(remove_node_txn): Rename variable.

(read_info,

svn_wc__db_read_info_internal,

svn_wc__db_read_info): Rename argument.

(read_children_info): Update struct usage.

(has_local_mods): Rename variable.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_read_info): Rename argument and update documentation.

(svn_wc__db_info_t): Rename variable.

(svn_wc__db_global_record_fileinfo): Rename arguments and update

documentation.

* subversion/libsvn_wc/workqueue.h

(svn_wc__wq_build_file_install): Update documentation.

* subversion/tests/libsvn_wc/db-test.c

(test_working_info): Rename a few variables.

  1. … 8 more files in changeset.
* subversion/tests/libsvn_wc/db-test.c

(test_working_info): Test a tiny bit more.

* subversion/tests/libsvn_wc/db-test.c

(test_getting_info): Test a tiny bit more.

Make the update editor also handle inherited property updates on switched

files, like how it handles them on directories.

* subversion/libsvn_wc/update_editor.c

(close_file): Add iprop handling, like in close_directory.

* subversion/libsvn_wc/wc_db.c

(svn_wc__db_base_add_file,

svn_wc__db_base_add_symlink): Forward iprops.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_base_add_file,

svn_wc__db_base_add_symlink): Add new_iprops argument.

* subversion/tests/libsvn_wc/db-test.c

(test_inserting_nodes): Update caller.

  1. … 3 more files in changeset.
* subversion/tests/libsvn_wc/db-test.c,

subversion/tests/libsvn_wc/entries-compat.c

(create_open): Don't auto-upgrade working copies in these tests to avoid

accidentally upgrading the parent WC.

  1. … 1 more file in changeset.
Merge the inheritable-props branch back to trunk.

See http://svn.haxx.se/dev/archive-2012-09/0177.shtml

  1. … 68 more files in changeset.
Bump the working copy format to 30 and adjust various bits and pieces

to cope with the effects. This bump enables the following schema changes:

- new NODES index for move information

- new PRISTINE index for md5_checksum

- activate skel-based conflict storage

- rename "absent" presence to "server-excluded"

The bump has been discussed in this dev@ thread:

http://svn.haxx.se/dev/archive-2012-09/0239.shtml

* subversion/libsvn_wc/wc-metadata.sql

(): Stop referring to "absent" as a presence, say "server-excluded" instead.

(STMT_UPGRADE_TO_30): Add "absent" -> "server-excluded" upgrade statement.

* subversion/libsvn_wc/wc.h

(SVN_WC__VERSION): Bump to 30.

* subversion/libsvn_wc/wc_db.c

(presence_map): Rename "absent" to "server-excluded".

* subversion/tests/cmdline/resolve_tests.py

(prop_conflict_resolution): Remove XFail marker for this issue #3707 test.

This test is passing now and this issue is resolved.

* subversion/tests/libsvn_wc/db-test.c

(TESTING_DATA): Rename "absent" to "server-excluded".

(test_getting_info, test_inserting_nodes): Adjust references to "absent"

in comments.

* subversion/tests/libsvn_wc/entries-compat.c

(TESTING_DATA): Rename "absent" to "server-excluded".

* subversion/tests/libsvn_wc/op-depth-test.c

(test_copy_of_deleted): Change comments referring to "absent" presence.

(copy_wc_wc_absent): Rename to ...

(copy_wc_wc_server_excluded): ... this, and also adjust database fields.

(test_funcs): Track above rename.

  1. … 6 more files in changeset.
* subversion/libsvn_wc/update_editor.c

(add_directory): Update caller.

* subversion/libsvn_wc/wc_db.c

(insert_base_baton_t): Add delete_working bool.

(insert_base_node): Add delete_working support.

(svn_wc__db_base_add_file): Add new flags. Move skels to end.

svn_wc__db_base_add_symlink): Make arguments match _file variant.

(svn_wc__db_temp_op_remove_working): Remove functions.

(svn_wc__db_op_begin_update): Add flags.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_base_add_file): Add flags.

(svn_wc__db_base_add_symlink): Add flags.

(svn_wc__db_temp_op_remove_working): Remove function.

(svn_wc__db_op_begin_update): Add flags.

* subversion/tests/libsvn_wc/db-test.c

(test_inserting_nodes): Update caller.

  1. … 3 more files in changeset.
Following up on the recent introduction of the conflict skel as in-memory

conflict exchange, we can now just install the conflict data from the

conflict skel instead of installing a workqueue item that will perform

that change later.

* subversion/libsvn_wc/conflicts.c

(svn_wc__conflict_skel_is_complete): Operate on const skel.

(svn_wc__conflict_create_markers): Stop creating conflict install wq items.

Note a specific corner case that needs further review.

Store the right path as property conflict marker file.

* subversion/libsvn_wc/conflicts.h

(svn_wc__conflict_skel_is_complete): Mark skel argument as const.

* subversion/libsvn_wc/externals.c

(close_file): Pass conflict.

* subversion/libsvn_wc/merge.c

(svn_wc_merge5): Pass conflict or install conflict directly before running

the wq. (Should move to single operation)

* subversion/libsvn_wc/props.c

(svn_wc__perform_props_merge): Pass conflict.

* subversion/libsvn_wc/update_editor.c

(close_directory,

close_file): Pass conflict.

* subversion/libsvn_wc/wc_db.c

(insert_working_baton_t): Add conflict.

(mark_conflict): Add prototype.

(insert_base_node,

insert_working_node): Enable installing conflict.

(svn_wc__db_external_add_file): Pass conflict.

(svn_wc__db_op_copy_dir,

svn_wc__db_op_copy_file,

svn_wc__db_op_copy_symlink,

set_props_txn): Remove assertion. Pass conflict.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_external_add_file): Add conflict argument.

* subversion/libsvn_wc/workqueue.c

(svn_wc__wq_tmp_build_set_text_conflict_markers,

svn_wc__wq_tmp_build_set_property_conflict_marker): Remove function.

* subversion/libsvn_wc/workqueue.h

(svn_wc__wq_tmp_build_set_text_conflict_markers,

svn_wc__wq_tmp_build_set_property_conflict_marker): Remove function.

* subversion/tests/libsvn_wc/db-test.c

(test_externals_store): Update caller.

  1. … 10 more files in changeset.
Reintegrate the multi-layer-move branch. This stores NODES.moved_to

in WORKING nodes and will break any working copy moves recorded by

older 1.8 clients transforming the moves into copies+deletes.

  1. … 5 more files in changeset.
Change the scan_deletion function so that BASE_DEL_ABSPATH doesn't

depend on NODES.moved_to. This fixes one regression test.

Note: NODES.moved_to was never set in 1.7 so this means that

scan_deletion reports the same BASE_DEL_ABSPATH as 1.7 (apart

from artificial test cases).

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_scan_addition): Tweak docstring.

* subversion/libsvn_wc/wc_db.c

(scan_deletion_txn): Don't use moved_to to set BASE_DEL_ABSPATH.

* subversion/tests/cmdline/copy_tests.py

(three_nested_moves): Remove XFAIL.

* subversion/tests/libsvn_wc/db-test.c

(test_scan_deletion): Adjust BASE_DEL_ABSPATH expectations.

  1. … 3 more files in changeset.
Followup to r1181800 by removing the svn_wc__db_kind_t type and replacing it

with the now-public svn_kind_t. This just affects the internals of libsvn_wc,

not any of the public, or quasi-public APIs.

* subversion/tests/libsvn_wc/:

s/svn_wc__db_kind_/svn_kind_/

  1. … 31 more files in changeset.
Fixed version of the change originally committed in r1152345 and

reverted again in r1152348:

Extend svn_wc__db_scan_deletion() to return the moved-to path of

of a moved node, if requested, in MOVED_TO_ABSPATH.

This function previously returned the op-root of the copied-half of the

move as MOVED_TO_ABSPATH, but (luckily) none of the callers requested it.

Return the op-root in a new output parameter COPY_OP_ROOT_ABSPATH instead.

* subversion/libsvn_wc/wc_db.c

(scan_deletion_baton_t): Add COPY_OP_ROOT_RELPATH.

(scan_deletion_txn): If the node has been moved-away, compute

and return the moved-to relpath as well as the the op-root of

the copied-half of the move.

Also, do not assert that every node being moved has a BASE.

This isn't true for sequences like: mv A B; mv B/f B/e;

In the second move, B/f has no BASE because it is part of the

copied-half B of the first move.

(scan_deletion): Add new output parameter COPY_OP_ROOT_RELPATH and

pass it into the scan_deletion baton.

(get_info_for_copy, read_url_txn, svn_wc__db_global_relocate): Update

scan_deletion() callers, passing NULL for COPY_OP_ROOT_RELPATH.

(svn_wc__db_scan_deletion): Add new output parameter COPY_OP_ROOT_ABSPATH.

Convert relative paths in moved-to information provided by scan_deletion()

into absolute paths, and return them.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_scan_deletion): Add COPY_OP_ROOT_ABSPATH parameter and update

the docstring.

* subversion/libsvn_wc/wc-queries.sql

(STMT_SELECT_DELETION_INFO): Get moved-to information from the BASE since

it is stored there as of r1152410.

* subversion/libsvn_wc/node.c

(svn_wc__internal_get_repos_info, svn_wc__node_get_deleted_ancestor,

svn_wc__internal_get_commit_base_rev, svn_wc__internal_node_get_schedule):

Update callers, passing NULL for COPY_OP_ROOT_ABSPATH.

* subversion/libsvn_wc/entries.c

(get_info_for_deleted, read_one_entry): Update callers, passing NULL

for COPY_OP_ROOT_ABSPATH.

* subversion/libsvn_wc/info.c

(build_info_for_node): Update caller, passing NULL for COPY_OP_ROOT_ABSPATH.

* subversion/tests/libsvn_wc/db-test.c

(TESTING_DATA): Put moved-to data into BASE layer. Add some missing

move-target nodes that are needed by scan_deletion() to properly resolve

moved-to information.

(test_scan_deletion): Update callers, verify COPY_OP_ROOT_ABSPATH where

a move is being resolved, else pass NULL for COPY_OP_ROOT_ABSPATH.

  1. … 6 more files in changeset.
Whoops, revert the just-committed r1152345, it wasn't quite ready yet.

  1. … 5 more files in changeset.
[ Note from the future: This change wasn't actually ready for commit yet.

It was reverted in r1152348, and a fixed version was committed in r1152436. ]

Extend svn_wc__db_scan_deletion() to return the moved-to path of

of a moved node, if requested, in MOVED_TO_ABSPATH.

This function already returned the op-root of the copied-half of the move

as MOVED_TO_ABSPATH, but (luckily) none of the callers requested it.

Return this op-root in a new output parameter COPY_OP_ROOT_ABSPATH instead.

Nothing uses the moved-to output parameters yet, so this is no functional

change.

* subversion/libsvn_wc/wc_db.c

(scan_deletion_baton_t): Add COPY_OP_ROOT_RELPATH.

(scan_deletion_txn): If the node has been moved-away, compute

and return the moved-to relpath as well as the the op-root of

the copied-half of the move.

Also, do not assert that every node being moved has a BASE.

This isn't true for sequences like: mv A B; mv B/f B/e;

In the second move, B/f has no BASE because it is part of the

copied-half B of the first move.

(scan_deletion): Add new output parameter COPY_OP_ROOT_RELPATH and

pass it into the scan_deletion baton.

(get_info_for_copy, read_url_txn, svn_wc__db_global_relocate): Update

scan_deletion() callers, passing NULL for COPY_OP_ROOT_RELPATH.

(svn_wc__db_scan_deletion): Add new output parameter COPY_OP_ROOT_ABSPATH.

Convert relative paths in moved-to information provided by scan_deletion()

into absolute paths, and return them.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_scan_deletion): Add COPY_OP_ROOT_ABSPATH parameter and update

the docstring.

* subversion/libsvn_wc/node.c

(svn_wc__internal_get_repos_info, svn_wc__node_get_deleted_ancestor,

svn_wc__internal_get_commit_base_rev, svn_wc__internal_node_get_schedule):

Update callers, passing NULL for COPY_OP_ROOT_ABSPATH.

* subversion/libsvn_wc/entries.c

(get_info_for_deleted, read_one_entry): Update callers, passing NULL

for COPY_OP_ROOT_ABSPATH.

* subversion/libsvn_wc/info.c

(build_info_for_node): Update caller, passing NULL for COPY_OP_ROOT_ABSPATH.

* subversion/tests/libsvn_wc/db-test.c

(test_scan_deletion): Update callers, passing NULL for COPY_OP_ROOT_ABSPATH.

  1. … 5 more files in changeset.
Make svn_wc__db_scan_addition() provide information about the local source

of a move for nodes with a 'moved-here' status.

Some future callers will only want to act on the op-roots involved in

a move, e.g. the commit code detecting whether both halfs of a move

are among the commit targets.

Other future callers might want to act directly on children of the op-roots,

e.g. code performing automatic tree conflict resolution.

So scan_addition() provides both the moved_from abspath and the abspath of

the operation root of the delete-half of the move. This should satisfy

either use case to some degree. It might not be the optimal solution

for all use cases but won't hurt, either.

* subversion/libsvn_wc/wc_db.c

(svn_wc__db_scan_addition, scan_addition): New output parameters

MOVED_FROM_ABSPATH and DELETE_OP_ROOT_ABSPATH.

(get_moved_from_info): New helper function which computes values for

above new output parameters.

(scan_addition_baton_t): Add MOVED_FROM_ABSPATH and DELETE_OP_ROOT_ABSPATH.

(scan_addition_txn): Run get_moved_from_info() for 'moved-here' nodes.

(get_info_for_copy, read_url_txn, svn_wc__db_global_relocate): Update

scan_addition() calls.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_scan_addition): Update declaration and docstring.

* subversion/libsvn_wc/wc-queries.sql

(STMT_SELECT_MOVED_FROM_RELPATH): New query which selects the 'moved-from'

path corresponding to a 'moved-here' node.

* subversion/tests/libsvn_wc/db-test.c

(TESTING_DATA): Create another row for the delete-half of a move.

svn_wc__db_scan_addition() now treats a move without a delete-half

as if it was a normal a copy. (We've been recording delete-halfs

since r1151166.)

(test_scan_addition): Check for moved-from information scan_addition()

now returns for 'moved-here' nodes.

The remaining items list updated callers of svn_wc__db_scan_addition().

All of them pass NULL for the new output parameters.

* subversion/libsvn_wc/props.c

(svn_wc__get_pristine_props): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/adm_ops.c

(check_can_add_to_parent): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/adm_crawler.c

(svn_wc_restore, report_revisions_and_depths,

svn_wc_crawl_revisions5): Update svn_wc__db_scan_addition() calls.

* subversion/libsvn_wc/diff_local.c

(file_diff): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/diff_editor.c

(file_diff, report_wc_file_as_added,

close_file): Update svn_wc__db_scan_addition() calls.

* subversion/libsvn_wc/adm_files.c

(svn_wc__internal_ensure_adm): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/update_editor.c

(create_tree_conflict, add_directory,

add_file): Update svn_wc__db_scan_addition() calls.

* subversion/libsvn_wc/info.c

(build_info_for_node): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/copy.c

(copy_or_move): Update svn_wc__db_scan_addition() calls.

* subversion/libsvn_wc/status.c

(get_repos_root_url_relpath): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/lock.c

(child_is_disjoint): Update svn_wc__db_scan_addition() call.

* subversion/libsvn_wc/entries.c

(get_info_for_deleted,

read_one_entry): Update svn_wc__db_scan_addition() calls.

* subversion/libsvn_wc/node.c

(svn_wc__internal_get_repos_info, svn_wc__node_get_repos_relpath,

svn_wc__internal_get_copyfrom_info, svn_wc__internal_get_commit_base_rev,

svn_wc__internal_get_origin): Update svn_wc__db_scan_addition() calls.

  1. … 16 more files in changeset.
Rename svn_wc__db_base_add_absent_node() to svn_wc__db_base_add_excluded_node()

for consistency.

* subversion/tests/libsvn_wc/db-test.c

(test_inserting_nodes, test_pdh): Update callers.

* subversion/libsvn_wc/crop.c

(svn_wc_exclude): Another caller.

* subversion/libsvn_wc/update_editor.c

(absent_node): Another caller. The term 'absent' is hardcoded in the

svn_delta_editor_t interface, so we won't be renaming 'absent' to

'server-excluded' above here.

* subversion/libsvn_wc/wc_db.c,

subversion/libsvn_wc/wc_db.h

(svn_wc__db_base_add_absent_node): Rename this ...

(svn_wc__db_base_add_excluded_node): ... to this. Also fix a small error

in the docstring.

  1. … 4 more files in changeset.
As a follow-up to r1138871, rename status_unauthz again (formerly

status_absent), this time to status_server_excluded.

See for related discussion this post and follow-ups:

From: C. Michael Pilato

To: dev@

Subject: Re: svn commit: r1138871 - in /subversion/trunk/subversion:

include/private/ libsvn_client/ libsvn_wc/ tests/libsvn_wc/

Message-ID: <4E0346D4.4040400@collab.net>

http://svn.haxx.se/dev/archive-2011-06/0727.shtml

Suggested by: julianfoad

(the new name 'server-excluded')

* subversion/include/private/svn_wc_private.h

(svn_wc__node_is_status_unauthz): Rename to...

(svn_wc__node_is_status_server_excluded): ... this, and rename the

'is_unauthz' output parameter to 'is_server_excluded'.

* subversion/tests/libsvn_wc/db-test.c,

subversion/libsvn_wc/props.c,

subversion/libsvn_wc/adm_ops.c,

subversion/libsvn_wc/adm_crawler.c,

subversion/libsvn_wc/conflicts.c,

subversion/libsvn_wc/crop.c,

subversion/libsvn_wc/diff_editor.c

subversion/libsvn_wc/adm_files.c,

subversion/libsvn_wc/update_editor.c,

subversion/libsvn_wc/info.c,

subversion/libsvn_wc/copy.c,

subversion/libsvn_wc/ambient_depth_filter_editor.c,

subversion/libsvn_wc/status.c,

subversion/libsvn_wc/lock.c,

subversion/libsvn_wc/entries.c,

subversion/libsvn_wc/wc_db.c,

subversion/libsvn_wc/wc_db.h,

subversion/libsvn_wc/node.c,

subversion/libsvn_wc/cleanup.c,

subversion/libsvn_wc/workqueue.c,

subversion/libsvn_client/copy.c,

(test_getting_info, validate_node, test_inserting_nodes, test_pdh,

svn_wc__perform_props_merge, svn_wc__get_pristine_props, svn_wc_delete4,

check_can_add_to_parent, revert_restore, report_revisions_and_depths,

recursive_resolve_conflict, crop_children, svn_wc_exclude, svn_wc_crop_tree2,

walk_local_nodes_diff, report_wc_directory_as_added,

svn_wc__text_base_path_to_read, svn_wc__get_pristine_contents,

IS_NODE_PRESENT, check_tree_conflict, delete_entry, absent_node,

svn_wc__check_wc_root, build_info_for_entry, copy_versioned_dir,

svn_wc_copy3, make_file_baton, open_root, delete_entry, open_directory,

get_dir_status, internal_status, svn_wc__internal_check_wc, adm_available,

read_one_entry, write_entry, kind_map, insert_base_node,

add_absent_excluded_not_present_node, svn_wc__db_base_add_absent_node,

db_op_copy, db_op_copy_shadowed_layer, check_replace_txn,

bump_node_revision, bump_revisions_post_update, svn_wc__db_node_hidden,

svn_wc__db_status_t, svn_wc__db_base_add_symlink,

svn_wc__db_op_set_tree_conflict, convert_db_kind_to_node_kind,

walker_helper, svn_wc__internal_walk_children,

svn_wc__node_is_status_absent, svn_wc__internal_node_get_schedule,

svn_wc__check_for_obstructions, repair_timestamps, remove_base_node,

repos_to_wc_copy_locked): Rename things as follows:

status_unauthz -> status_server_excluded; is_unauthz -> is_server_excluded

  1. … 21 more files in changeset.
As part of internal API cleanup, and in the name of code clarity,

rename svn_wc__db_status_absent to svn_wc__db_status_unauthz (not

authorized), because this is what 'absent' really means. Now there

is less potential for confusing 'absent' with 'not-present' and 'excluded'.

Discussed on IRC with Julian and Bert (not on dev@, but I still wanted

to mention that this wasn't just my own idea).

We considered postponing this step to post-1.7 but Bert pointed out

that doing so would unnecessarily make backport merges harder.

But note that this does not rename all occurrences of the term 'absent'

so we'll have to live with historical baggage in some function names,

comments, etc.

Neither does this change the wc.db schema. But I think it would be good

to rename the NODES presence value "absent" to "unauthz" as well in a

separate step (including a format bump).

Suggested by: julianfoad

(the new name 'unauthz')

* subversion/include/private/svn_wc_private.h

(svn_wc__node_is_status_absent): Rename to...

(svn_wc__node_is_status_unauthz): ... this, and rename the 'is_absent'

output parameter to 'is_unauthz'.

* subversion/tests/libsvn_wc/db-test.c,

subversion/libsvn_wc/props.c,

subversion/libsvn_wc/adm_ops.c,

subversion/libsvn_wc/adm_crawler.c,

subversion/libsvn_wc/conflicts.c,

subversion/libsvn_wc/crop.c,

subversion/libsvn_wc/diff_editor.c

subversion/libsvn_wc/adm_files.c,

subversion/libsvn_wc/update_editor.c,

subversion/libsvn_wc/info.c,

subversion/libsvn_wc/copy.c,

subversion/libsvn_wc/ambient_depth_filter_editor.c,

subversion/libsvn_wc/status.c,

subversion/libsvn_wc/lock.c,

subversion/libsvn_wc/entries.c,

subversion/libsvn_wc/wc_db.c,

subversion/libsvn_wc/wc_db.h,

subversion/libsvn_wc/node.c,

subversion/libsvn_wc/cleanup.c,

subversion/libsvn_wc/workqueue.c,

subversion/libsvn_client/copy.c,

(test_getting_info, validate_node, test_inserting_nodes, test_pdh,

svn_wc__perform_props_merge, svn_wc__get_pristine_props, svn_wc_delete4,

check_can_add_to_parent, revert_restore, report_revisions_and_depths,

recursive_resolve_conflict, crop_children, svn_wc_exclude, svn_wc_crop_tree2,

walk_local_nodes_diff, report_wc_directory_as_added,

svn_wc__text_base_path_to_read, svn_wc__get_pristine_contents,

IS_NODE_PRESENT, check_tree_conflict, delete_entry, absent_node,

svn_wc__check_wc_root, build_info_for_entry, copy_versioned_dir,

svn_wc_copy3, make_file_baton, open_root, delete_entry, open_directory,

get_dir_status, internal_status, svn_wc__internal_check_wc, adm_available,

read_one_entry, write_entry, kind_map, insert_base_node,

add_absent_excluded_not_present_node, svn_wc__db_base_add_absent_node,

db_op_copy, db_op_copy_shadowed_layer, check_replace_txn,

bump_node_revision, bump_revisions_post_update, svn_wc__db_node_hidden,

svn_wc__db_status_t, svn_wc__db_base_add_symlink,

svn_wc__db_op_set_tree_conflict, convert_db_kind_to_node_kind,

walker_helper, svn_wc__internal_walk_children,

svn_wc__node_is_status_absent, svn_wc__internal_node_get_schedule,

svn_wc__check_for_obstructions, repair_timestamps, remove_base_node,

repos_to_wc_copy_locked): Rename things as follows:

status_absent -> status_unauthz; is_absent -> is_unauthz

  1. … 21 more files in changeset.
The semi-annual trailing whitespace cleansing ritual.

* everywhere:

for extsn in c h cpp java py pl rb; do

sed -i -e 's/[ \t]*$//' `find . -name "*.$extsn" | xargs grep '[ \t]$' -l`

done

  1. … 144 more files in changeset.
Following up on r1094146, remove an unused argument from

svn_wc__db_base_get_info().

* subversion/libsvn_wc/adm_crawler.c

(svn_wc_crawl_revisions5): Update caller.

* subversion/libsvn_wc/ambient_depth_filter_editor.c

(ambient_read_info): Update caller.

* subversion/libsvn_wc/diff_editor.c

(get_pristine_file): Update caller.

* subversion/libsvn_wc/diff_local.c

(file_diff): Update caller.

* subversion/libsvn_wc/entries.c

(get_info_for_deleted,

read_one_entry): Update caller.

* subversion/libsvn_wc/externals.c

(open_file): Update caller.

(svn_wc__crawl_file_external): Update caller.

* subversion/libsvn_wc/info.c

(build_info_for_entry): Update caller.

* subversion/libsvn_wc/node.c

(get_base_rev,

svn_wc__node_get_pre_ng_status_data,

svn_wc__internal_get_commit_base_rev,

svn_wc__node_get_lock_info,

svn_wc__internal_get_origin,

svn_wc__node_get_commit_status): Update caller.

* subversion/libsvn_wc/status.c

(read_info): Update caller.

* subversion/libsvn_wc/update_editor.c

(open_root,

create_tree_conflict,

delete_entry,

open_directory,

close_directory,

open_file,

close_edit,

make_editor): Update caller.

* subversion/libsvn_wc/wc_db.c

(base_get_info,

svn_wc__db_base_get_info): Remove argument.

(insert_external_node,

get_info_for_copy,

remove_node_txn,

read_url_txn,

svn_wc__db_global_relocate,

determine_repos_info,

bump_node_revision,

bump_revisions_post_update,

lock_add_txn,

lock_remove_txn,

svn_wc__db_scan_base_repos,

scan_addition_txn,

end_directory_update,

has_switched_subtrees): Update caller.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_base_get_info): Remove argument and documentation of argument.

* subversion/libsvn_wc/workqueue.c

(remove_base_node,

run_base_remove): Update caller.

* subversion/tests/libsvn_wc/db-test.c

(test_getting_info,

validate_node): Update caller.

  1. … 13 more files in changeset.
Allow the operation to fetch a workqueue item to mark a previous item

completed. This removes one database transaction for every processed

workqueue item.

* subversion/libsvn_wc/lock.c

(pool_cleanup_locked): Update caller.

* subversion/libsvn_wc/wc_db.c

(wq_fetch_next_baton_t): New struct.

(wq_fetch_next): New function.

(svn_wc__db_wq_fetch): Rename to ...

(svn_wc__db_wq_fetch_next): ... this and call wq_fetch_next,

inside a transaction to fetch and complete items.

(svn_wc__db_wq_completed): Remove function.

* subversion/libsvn_wc/wc_db.h

(svn_wc__db_wq_fetch): Rename to ...

(svn_wc__db_wq_fetch_next): ... this and update documentation.

* subversion/libsvn_wc/workqueue.c

(svn_wc__wq_run): Update caller.

* subversion/tests/libsvn_wc/db-test.c

(test_work_queue): Update caller.

  1. … 4 more files in changeset.
Factor out a test function for creating a fake WC DB.

* subversion/tests/libsvn_wc/utils.h,

subversion/tests/libsvn_wc/utils.c

(svn_test__create_fake_wc): New function, factored out from two places.

* subversion/tests/libsvn_wc/db-test.c

(create_fake_wc): Remove.

(create_open): Use svn_test__create_fake_wc() instead of create_fake_wc().

* subversion/tests/libsvn_wc/entries-compat.c

(make_one_db): Remove.

(create_fake_wc): Use svn_test__create_fake_wc() instead of make_one_db().

* build.conf

(db-test, entries-compat-test): Add 'utils.c' to sources and

'libsvn_client' to libs.

  1. … 4 more files in changeset.
Remove all the conditional code for pre-EXTERNALS table support.

* subversion/libsvn_wc/wc.h

(SVN_WC__HAS_EXTERNALS_STORE): Remove

* subversion/libsvn_wc/util.c

(svn_wc__status2_from_3): Remove conditional code.

* subversion/libsvn_wc/status.c

(handle_externals): Remove.

(get_dir_status, svn_wc_get_status_editor5,

svn_wc__internal_walk_status): Remove conditional code.

* subversion/libsvn_wc/upgrade.c

(svn_wc__upgrade_sdb): Remove conditional.

* subversion/libsvn_wc/wc_db_pristine.c

(get_pristine_fname): Remove conditional.

* subversion/tests/libsvn_wc/db-test.c

(test_externals_store): Remove conditional code.

  1. … 5 more files in changeset.
Make all WC test programs use svn_wc__db_util_open_db() instead of calling

svn_sqlite__open() directly, to ensure that the SQLite user-defined function

'relpath_depth' gets installed in the DB connection. That function will be

needed by the validation triggers in wc-checks.c as soon as we activate

them.

* subversion/libsvn_wc/wc_db_private.h,

subversion/libsvn_wc/wc_db_util.c

(svn_wc__db_util_open_db): Add an optional parameter to specify the list

of statements to prepare instead of the default set. Write a doc string.

* subversion/libsvn_wc/wc_db.c

(create_db): Update the call to svn_wc__db_util_open_db().

[Accidentally missed in this commit; committed in r1127902.]

* subversion/libsvn_wc/wc_db_wcroot.c

(svn_wc__db_wcroot_parse_local_abspath): Same.

* subversion/tests/libsvn_wc/db-test.c

(create_fake_wc): Call svn_wc__db_wcroot_parse_local_abspath() instead of

svn_sqlite__open().

* subversion/tests/libsvn_wc/entries-compat.c

(make_one_db): Same.

* subversion/tests/libsvn_wc/op-depth-test.c

(open_wc_db): Same.

  1. … 5 more files in changeset.
* subversion/tests/libsvn_wc/db-test.c

(create_fake_wc): Use abspaths, and so avoid re-constructing a path that

the only caller was constructing anyway.

(create_open): Adjust caller.