GME  13
svn_wc.h
Go to the documentation of this file.
00001 
00070 #ifndef SVN_WC_H
00071 #define SVN_WC_H
00072 
00073 #include <apr.h>
00074 #include <apr_pools.h>
00075 #include <apr_tables.h>
00076 #include <apr_hash.h>
00077 #include <apr_time.h>
00078 #include <apr_file_io.h>
00079 
00080 #include "svn_types.h"
00081 #include "svn_string.h"
00082 #include "svn_checksum.h"
00083 #include "svn_io.h"
00084 #include "svn_delta.h"     /* for svn_stream_t */
00085 #include "svn_opt.h"
00086 #include "svn_ra.h"        /* for svn_ra_reporter_t type */
00087 
00088 #ifdef __cplusplus
00089 extern "C" {
00090 #endif /* __cplusplus */
00091 
00092 
00098 const svn_version_t *
00099 svn_wc_version(void);
00100 
00101 
00125 #define SVN_WC_TRANSLATE_FROM_NF                 0x00000000
00126 
00132 #define SVN_WC_TRANSLATE_TO_NF                   0x00000001
00133 
00139 #define SVN_WC_TRANSLATE_FORCE_EOL_REPAIR        0x00000002
00140 
00142 #define SVN_WC_TRANSLATE_NO_OUTPUT_CLEANUP       0x00000004
00143 
00148 #define SVN_WC_TRANSLATE_FORCE_COPY              0x00000008
00149 
00155 #define SVN_WC_TRANSLATE_USE_GLOBAL_TMP          0x00000010
00156 
00179 typedef struct svn_wc_context_t svn_wc_context_t;
00180 
00200 svn_error_t *
00201 svn_wc_context_create(svn_wc_context_t **wc_ctx,
00202                       const svn_config_t *config,
00203                       apr_pool_t *result_pool,
00204                       apr_pool_t *scratch_pool);
00205 
00206 
00212 svn_error_t *
00213 svn_wc_context_destroy(svn_wc_context_t *wc_ctx);
00214 
00215 
00237 typedef struct svn_wc_adm_access_t svn_wc_adm_access_t;
00238 
00239 
00284 SVN_DEPRECATED
00285 svn_error_t *
00286 svn_wc_adm_open3(svn_wc_adm_access_t **adm_access,
00287                  svn_wc_adm_access_t *associated,
00288                  const char *path,
00289                  svn_boolean_t write_lock,
00290                  int levels_to_lock,
00291                  svn_cancel_func_t cancel_func,
00292                  void *cancel_baton,
00293                  apr_pool_t *pool);
00294 
00300 SVN_DEPRECATED
00301 svn_error_t *
00302 svn_wc_adm_open2(svn_wc_adm_access_t **adm_access,
00303                  svn_wc_adm_access_t *associated,
00304                  const char *path,
00305                  svn_boolean_t write_lock,
00306                  int levels_to_lock,
00307                  apr_pool_t *pool);
00308 
00316 SVN_DEPRECATED
00317 svn_error_t *
00318 svn_wc_adm_open(svn_wc_adm_access_t **adm_access,
00319                 svn_wc_adm_access_t *associated,
00320                 const char *path,
00321                 svn_boolean_t write_lock,
00322                 svn_boolean_t tree_lock,
00323                 apr_pool_t *pool);
00324 
00341 SVN_DEPRECATED
00342 svn_error_t *
00343 svn_wc_adm_probe_open3(svn_wc_adm_access_t **adm_access,
00344                        svn_wc_adm_access_t *associated,
00345                        const char *path,
00346                        svn_boolean_t write_lock,
00347                        int levels_to_lock,
00348                        svn_cancel_func_t cancel_func,
00349                        void *cancel_baton,
00350                        apr_pool_t *pool);
00351 
00358 SVN_DEPRECATED
00359 svn_error_t *
00360 svn_wc_adm_probe_open2(svn_wc_adm_access_t **adm_access,
00361                        svn_wc_adm_access_t *associated,
00362                        const char *path,
00363                        svn_boolean_t write_lock,
00364                        int levels_to_lock,
00365                        apr_pool_t *pool);
00366 
00374 SVN_DEPRECATED
00375 svn_error_t *
00376 svn_wc_adm_probe_open(svn_wc_adm_access_t **adm_access,
00377                       svn_wc_adm_access_t *associated,
00378                       const char *path,
00379                       svn_boolean_t write_lock,
00380                       svn_boolean_t tree_lock,
00381                       apr_pool_t *pool);
00382 
00407 SVN_DEPRECATED
00408 svn_error_t *
00409 svn_wc_adm_open_anchor(svn_wc_adm_access_t **anchor_access,
00410                        svn_wc_adm_access_t **target_access,
00411                        const char **target,
00412                        const char *path,
00413                        svn_boolean_t write_lock,
00414                        int levels_to_lock,
00415                        svn_cancel_func_t cancel_func,
00416                        void *cancel_baton,
00417                        apr_pool_t *pool);
00418 
00430 SVN_DEPRECATED
00431 svn_error_t *
00432 svn_wc_adm_retrieve(svn_wc_adm_access_t **adm_access,
00433                     svn_wc_adm_access_t *associated,
00434                     const char *path,
00435                     apr_pool_t *pool);
00436 
00446 SVN_DEPRECATED
00447 svn_error_t *
00448 svn_wc_adm_probe_retrieve(svn_wc_adm_access_t **adm_access,
00449                           svn_wc_adm_access_t *associated,
00450                           const char *path,
00451                           apr_pool_t *pool);
00452 
00478 SVN_DEPRECATED
00479 svn_error_t *
00480 svn_wc_adm_probe_try3(svn_wc_adm_access_t **adm_access,
00481                       svn_wc_adm_access_t *associated,
00482                       const char *path,
00483                       svn_boolean_t write_lock,
00484                       int levels_to_lock,
00485                       svn_cancel_func_t cancel_func,
00486                       void *cancel_baton,
00487                       apr_pool_t *pool);
00488 
00495 SVN_DEPRECATED
00496 svn_error_t *
00497 svn_wc_adm_probe_try2(svn_wc_adm_access_t **adm_access,
00498                       svn_wc_adm_access_t *associated,
00499                       const char *path,
00500                       svn_boolean_t write_lock,
00501                       int levels_to_lock,
00502                       apr_pool_t *pool);
00503 
00511 SVN_DEPRECATED
00512 svn_error_t *
00513 svn_wc_adm_probe_try(svn_wc_adm_access_t **adm_access,
00514                      svn_wc_adm_access_t *associated,
00515                      const char *path,
00516                      svn_boolean_t write_lock,
00517                      svn_boolean_t tree_lock,
00518                      apr_pool_t *pool);
00519 
00520 
00532 SVN_DEPRECATED
00533 svn_error_t *
00534 svn_wc_adm_close2(svn_wc_adm_access_t *adm_access,
00535                   apr_pool_t *scratch_pool);
00536 
00543 SVN_DEPRECATED
00544 svn_error_t *
00545 svn_wc_adm_close(svn_wc_adm_access_t *adm_access);
00546 
00551 SVN_DEPRECATED
00552 const char *
00553 svn_wc_adm_access_path(const svn_wc_adm_access_t *adm_access);
00554 
00559 SVN_DEPRECATED
00560 apr_pool_t *
00561 svn_wc_adm_access_pool(const svn_wc_adm_access_t *adm_access);
00562 
00570 SVN_DEPRECATED
00571 svn_boolean_t
00572 svn_wc_adm_locked(const svn_wc_adm_access_t *adm_access);
00573 
00589 svn_error_t *
00590 svn_wc_locked2(svn_boolean_t *locked_here,
00591                svn_boolean_t *locked,
00592                svn_wc_context_t *wc_ctx,
00593                const char *local_abspath,
00594                apr_pool_t *scratch_pool);
00595 
00602 SVN_DEPRECATED
00603 svn_error_t *
00604 svn_wc_locked(svn_boolean_t *locked,
00605               const char *path,
00606               apr_pool_t *pool);
00607 
00608 
00624 #define SVN_WC_ADM_DIR_NAME   ".svn"
00625 
00626 
00638 svn_boolean_t
00639 svn_wc_is_adm_dir(const char *name, apr_pool_t *pool);
00640 
00641 
00651 const char *
00652 svn_wc_get_adm_dir(apr_pool_t *pool);
00653 
00654 
00668 svn_error_t *
00669 svn_wc_set_adm_dir(const char *name,
00670                    apr_pool_t *pool);
00671 
00688 typedef svn_error_t *(*svn_wc_external_update_t)(void *baton,
00689                                                  const char *local_abspath,
00690                                                  const svn_string_t *old_val,
00691                                                  const svn_string_t *new_val,
00692                                                  svn_depth_t depth,
00693                                                  apr_pool_t *scratch_pool);
00694 
00707 typedef struct svn_wc_traversal_info_t svn_wc_traversal_info_t;
00708 
00709 
00716 SVN_DEPRECATED
00717 svn_wc_traversal_info_t *
00718 svn_wc_init_traversal_info(apr_pool_t *pool);
00719 
00743 SVN_DEPRECATED
00744 void
00745 svn_wc_edited_externals(apr_hash_t **externals_old,
00746                         apr_hash_t **externals_new,
00747                         svn_wc_traversal_info_t *traversal_info);
00748 
00749 
00773 SVN_DEPRECATED
00774 void
00775 svn_wc_traversed_depths(apr_hash_t **depths,
00776                         svn_wc_traversal_info_t *traversal_info);
00777 
00778 
00789 typedef struct svn_wc_external_item2_t
00790 {
00796   const char *target_dir;
00797 
00800   const char *url;
00801 
00805   svn_opt_revision_t revision;
00806 
00810   svn_opt_revision_t peg_revision;
00811 
00812 } svn_wc_external_item2_t;
00813 
00828 svn_error_t *
00829 svn_wc_external_item2_create(svn_wc_external_item2_t **item,
00830                              apr_pool_t *pool);
00831 
00839 SVN_DEPRECATED
00840 svn_error_t *
00841 svn_wc_external_item_create(const svn_wc_external_item2_t **item,
00842                             apr_pool_t *pool);
00843 
00850 svn_wc_external_item2_t *
00851 svn_wc_external_item2_dup(const svn_wc_external_item2_t *item,
00852                           apr_pool_t *pool);
00853 
00861 typedef struct svn_wc_external_item_t
00862 {
00864   const char *target_dir;
00865 
00867   const char *url;
00868 
00870   svn_opt_revision_t revision;
00871 
00872 } svn_wc_external_item_t;
00873 
00882 SVN_DEPRECATED
00883 svn_wc_external_item_t *
00884 svn_wc_external_item_dup(const svn_wc_external_item_t *item,
00885                          apr_pool_t *pool);
00886 
00914 svn_error_t *
00915 svn_wc_parse_externals_description3(apr_array_header_t **externals_p,
00916                                     const char *parent_directory,
00917                                     const char *desc,
00918                                     svn_boolean_t canonicalize_url,
00919                                     apr_pool_t *pool);
00920 
00931 SVN_DEPRECATED
00932 svn_error_t *
00933 svn_wc_parse_externals_description2(apr_array_header_t **externals_p,
00934                                     const char *parent_directory,
00935                                     const char *desc,
00936                                     apr_pool_t *pool);
00937 
00946 SVN_DEPRECATED
00947 svn_error_t *
00948 svn_wc_parse_externals_description(apr_hash_t **externals_p,
00949                                    const char *parent_directory,
00950                                    const char *desc,
00951                                    apr_pool_t *pool);
00952 
00954 
00955 
00979 typedef enum svn_wc_notify_action_t
00980 {
00982   svn_wc_notify_add = 0,
00983 
00985   svn_wc_notify_copy,
00986 
00988   svn_wc_notify_delete,
00989 
00991   svn_wc_notify_restore,
00992 
00994   svn_wc_notify_revert,
00995 
00997   svn_wc_notify_failed_revert,
00998 
01000   svn_wc_notify_resolved,
01001 
01003   svn_wc_notify_skip,
01004 
01006   svn_wc_notify_update_delete,
01007 
01009   svn_wc_notify_update_add,
01010 
01012   svn_wc_notify_update_update,
01013 
01015   svn_wc_notify_update_completed,
01016 
01018   svn_wc_notify_update_external,
01019 
01021   svn_wc_notify_status_completed,
01022 
01024   svn_wc_notify_status_external,
01025 
01027   svn_wc_notify_commit_modified,
01028 
01030   svn_wc_notify_commit_added,
01031 
01033   svn_wc_notify_commit_deleted,
01034 
01036   svn_wc_notify_commit_replaced,
01037 
01039   svn_wc_notify_commit_postfix_txdelta,
01040 
01042   svn_wc_notify_blame_revision,
01043 
01045   svn_wc_notify_locked,
01046 
01048   svn_wc_notify_unlocked,
01049 
01051   svn_wc_notify_failed_lock,
01052 
01054   svn_wc_notify_failed_unlock,
01055 
01057   svn_wc_notify_exists,
01058 
01060   svn_wc_notify_changelist_set,
01061 
01063   svn_wc_notify_changelist_clear,
01064 
01068   svn_wc_notify_changelist_moved,
01069 
01072   svn_wc_notify_merge_begin,
01073 
01076   svn_wc_notify_foreign_merge_begin,
01077 
01079   svn_wc_notify_update_replace,
01080 
01082   svn_wc_notify_property_added,
01083 
01085   svn_wc_notify_property_modified,
01086 
01088   svn_wc_notify_property_deleted,
01089 
01091   svn_wc_notify_property_deleted_nonexistent,
01092 
01094   svn_wc_notify_revprop_set,
01095 
01097   svn_wc_notify_revprop_deleted,
01098 
01100   svn_wc_notify_merge_completed,
01101 
01105   svn_wc_notify_tree_conflict,
01106 
01109   svn_wc_notify_failed_external,
01110 
01112   svn_wc_notify_update_started,
01113 
01116   svn_wc_notify_update_skip_obstruction,
01117 
01121   svn_wc_notify_update_skip_working_only,
01122 
01125   svn_wc_notify_update_skip_access_denied,
01126 
01129   svn_wc_notify_update_external_removed,
01130 
01133   svn_wc_notify_update_shadowed_add,
01134 
01137   svn_wc_notify_update_shadowed_update,
01138 
01141   svn_wc_notify_update_shadowed_delete,
01142 
01144   svn_wc_notify_merge_record_info,
01145 
01148   svn_wc_notify_upgraded_path,
01149 
01152   svn_wc_notify_merge_record_info_begin,
01153 
01156   svn_wc_notify_merge_elide_info,
01157 
01160   svn_wc_notify_patch,
01161 
01164   svn_wc_notify_patch_applied_hunk,
01165 
01168   svn_wc_notify_patch_rejected_hunk,
01169 
01172   svn_wc_notify_patch_hunk_already_applied,
01173 
01177   svn_wc_notify_commit_copied,
01178 
01182   svn_wc_notify_commit_copied_replaced,
01183 
01187   svn_wc_notify_url_redirect,
01188 
01191   svn_wc_notify_path_nonexistent,
01192 
01195   svn_wc_notify_exclude,
01196 
01199   svn_wc_notify_failed_conflict,
01200 
01203   svn_wc_notify_failed_missing,
01204 
01207   svn_wc_notify_failed_out_of_date,
01208 
01211   svn_wc_notify_failed_no_parent,
01212 
01215   svn_wc_notify_failed_locked,
01216 
01219   svn_wc_notify_failed_forbidden_by_server,
01220 
01223   svn_wc_notify_skip_conflicted,
01224 
01227   svn_wc_notify_update_broken_lock,
01228 
01231   svn_wc_notify_failed_obstruction,
01232 
01237   svn_wc_notify_conflict_resolver_starting,
01238 
01243   svn_wc_notify_conflict_resolver_done,
01244 
01248   svn_wc_notify_left_local_modifications,
01249 
01252   svn_wc_notify_foreign_copy_begin,
01253 
01258   svn_wc_notify_move_broken
01259 
01260 } svn_wc_notify_action_t;
01261 
01262 
01264 typedef enum svn_wc_notify_state_t
01265 {
01266   svn_wc_notify_state_inapplicable = 0,
01267 
01269   svn_wc_notify_state_unknown,
01270 
01272   svn_wc_notify_state_unchanged,
01273 
01275   svn_wc_notify_state_missing,
01276 
01278   svn_wc_notify_state_obstructed,
01279 
01281   svn_wc_notify_state_changed,
01282 
01284   svn_wc_notify_state_merged,
01285 
01287   svn_wc_notify_state_conflicted,
01288 
01290   svn_wc_notify_state_source_missing
01291 
01292 } svn_wc_notify_state_t;
01293 
01299 typedef enum svn_wc_notify_lock_state_t
01300 {
01301   svn_wc_notify_lock_state_inapplicable = 0,
01302 
01303   svn_wc_notify_lock_state_unknown,
01304 
01306   svn_wc_notify_lock_state_unchanged,
01307 
01309   svn_wc_notify_lock_state_locked,
01310 
01312   svn_wc_notify_lock_state_unlocked
01313 
01314 } svn_wc_notify_lock_state_t;
01315 
01342 typedef struct svn_wc_notify_t {
01343 
01348   const char *path;
01349 
01351   svn_wc_notify_action_t action;
01352 
01354   svn_node_kind_t kind;
01355 
01358   const char *mime_type;
01359 
01363   const svn_lock_t *lock;
01364 
01369   svn_error_t *err;
01370 
01372   svn_wc_notify_state_t content_state;
01373 
01375   svn_wc_notify_state_t prop_state;
01376 
01378   svn_wc_notify_lock_state_t lock_state;
01379 
01387   svn_revnum_t revision;
01388 
01391   const char *changelist_name;
01392 
01398   svn_merge_range_t *merge_range;
01399 
01402   const char *url;
01403 
01408   const char *path_prefix;
01409 
01412   const char *prop_name;
01413 
01417   apr_hash_t *rev_props;
01418 
01423   svn_revnum_t old_revision;
01424 
01429   /* @{ */
01430   svn_linenum_t hunk_original_start;
01431   svn_linenum_t hunk_original_length;
01432   svn_linenum_t hunk_modified_start;
01433   svn_linenum_t hunk_modified_length;
01434   /* @} */
01435 
01438   svn_linenum_t hunk_matched_line;
01439 
01442   svn_linenum_t hunk_fuzz;
01443 
01444   /* NOTE: Add new fields at the end to preserve binary compatibility.
01445      Also, if you add fields here, you have to update svn_wc_create_notify
01446      and svn_wc_dup_notify. */
01447 } svn_wc_notify_t;
01448 
01460 svn_wc_notify_t *
01461 svn_wc_create_notify(const char *path,
01462                      svn_wc_notify_action_t action,
01463                      apr_pool_t *pool);
01464 
01476 svn_wc_notify_t *
01477 svn_wc_create_notify_url(const char *url,
01478                          svn_wc_notify_action_t action,
01479                          apr_pool_t *pool);
01480 
01486 svn_wc_notify_t *
01487 svn_wc_dup_notify(const svn_wc_notify_t *notify,
01488                   apr_pool_t *pool);
01489 
01505 typedef void (*svn_wc_notify_func2_t)(void *baton,
01506                                       const svn_wc_notify_t *notify,
01507                                       apr_pool_t *pool);
01508 
01515 typedef void (*svn_wc_notify_func_t)(void *baton,
01516                                      const char *path,
01517                                      svn_wc_notify_action_t action,
01518                                      svn_node_kind_t kind,
01519                                      const char *mime_type,
01520                                      svn_wc_notify_state_t content_state,
01521                                      svn_wc_notify_state_t prop_state,
01522                                      svn_revnum_t revision);
01523 
01526 
01575 typedef enum svn_wc_conflict_action_t
01576 {
01577   svn_wc_conflict_action_edit,    
01578   svn_wc_conflict_action_add,     
01579   svn_wc_conflict_action_delete,  
01580   svn_wc_conflict_action_replace  
01582 } svn_wc_conflict_action_t;
01583 
01584 
01589 typedef enum svn_wc_conflict_reason_t
01590 {
01592   svn_wc_conflict_reason_edited,
01594   svn_wc_conflict_reason_obstructed,
01596   svn_wc_conflict_reason_deleted,
01598   svn_wc_conflict_reason_missing,
01600   svn_wc_conflict_reason_unversioned,
01602   svn_wc_conflict_reason_added,
01604   svn_wc_conflict_reason_replaced,
01606   svn_wc_conflict_reason_moved_away,
01608   svn_wc_conflict_reason_moved_here
01609 
01610 } svn_wc_conflict_reason_t;
01611 
01612 
01618 typedef enum svn_wc_conflict_kind_t
01619 {
01621   svn_wc_conflict_kind_text,
01623   svn_wc_conflict_kind_property,
01625   svn_wc_conflict_kind_tree
01626 } svn_wc_conflict_kind_t;
01627 
01628 
01633 typedef enum svn_wc_operation_t
01634 {
01635   svn_wc_operation_none = 0,
01636   svn_wc_operation_update,
01637   svn_wc_operation_switch,
01638   svn_wc_operation_merge
01639 
01640 } svn_wc_operation_t;
01641 
01642 
01659 typedef struct svn_wc_conflict_version_t
01660 {
01665   const char *repos_url;
01666 
01668   svn_revnum_t peg_rev;
01669 
01671    /* ### should have been called repos_relpath, but we can't change this. */
01672   const char *path_in_repos;
01676   svn_node_kind_t node_kind;
01677 
01680   const char *repos_uuid;
01681 
01682   /* @todo Add metadata about a local copy of the node, if and when
01683    * we store one. */
01684 
01685   /* Remember to update svn_wc_conflict_version_create() and
01686    * svn_wc_conflict_version_dup() in case you add fields to this struct. */
01687 } svn_wc_conflict_version_t;
01688 
01704 svn_wc_conflict_version_t *
01705 svn_wc_conflict_version_create2(const char *repos_root_url,
01706                                 const char *repos_uuid,
01707                                 const char *repos_relpath,
01708                                 svn_revnum_t revision,
01709                                 svn_node_kind_t kind,
01710                                 apr_pool_t *result_pool);
01711 
01718 SVN_DEPRECATED
01719 svn_wc_conflict_version_t *
01720 svn_wc_conflict_version_create(const char *repos_url,
01721                                const char *path_in_repos,
01722                                svn_revnum_t peg_rev,
01723                                svn_node_kind_t node_kind,
01724                                apr_pool_t *pool);
01725 
01731 svn_wc_conflict_version_t *
01732 svn_wc_conflict_version_dup(const svn_wc_conflict_version_t *version,
01733                             apr_pool_t *pool);
01734 
01754 typedef struct svn_wc_conflict_description2_t
01755 {
01757   const char *local_abspath;
01758 
01761   svn_node_kind_t node_kind;
01762 
01764   svn_wc_conflict_kind_t kind;
01765 
01768   const char *property_name;
01769 
01772   svn_boolean_t is_binary;
01773 
01777   const char *mime_type;
01778 
01781   svn_wc_conflict_action_t action;
01782 
01786   svn_wc_conflict_reason_t reason;
01787 
01810   const char *base_abspath;  /* common ancestor of the two files being merged */
01811 
01813   /* ### BH: For properties this field contains the reference to
01814              the property rejection (.prej) file */
01815   const char *their_abspath;
01816 
01818   const char *my_abspath;
01819 
01821   const char *merged_file;
01822 
01826   svn_wc_operation_t operation;
01827 
01829   const svn_wc_conflict_version_t *src_left_version;
01830 
01832   const svn_wc_conflict_version_t *src_right_version;
01833 
01834   /* Remember to adjust svn_wc__conflict_description2_dup()
01835    * if you add new fields to this struct. */
01836 } svn_wc_conflict_description2_t;
01837 
01838 
01845 typedef struct svn_wc_conflict_description_t
01846 {
01848   const char *path;
01849 
01852   svn_node_kind_t node_kind;
01853 
01855   svn_wc_conflict_kind_t kind;
01856 
01859   const char *property_name;
01860 
01863   svn_boolean_t is_binary;
01864 
01868   const char *mime_type;
01869 
01876   svn_wc_adm_access_t *access;
01877 
01880   svn_wc_conflict_action_t action;
01881 
01885   svn_wc_conflict_reason_t reason;
01886 
01902   const char *base_file;     /* common ancestor of the two files being merged */
01903 
01905   const char *their_file;
01906 
01908   const char *my_file;
01909 
01911   const char *merged_file;
01912 
01918   svn_wc_operation_t operation;
01919 
01922   svn_wc_conflict_version_t *src_left_version;
01923 
01926   svn_wc_conflict_version_t *src_right_version;
01927 
01928 } svn_wc_conflict_description_t;
01929 
01945 svn_wc_conflict_description2_t *
01946 svn_wc_conflict_description_create_text2(const char *local_abspath,
01947                                          apr_pool_t *result_pool);
01948 
01949 
01956 SVN_DEPRECATED
01957 svn_wc_conflict_description_t *
01958 svn_wc_conflict_description_create_text(const char *path,
01959                                         svn_wc_adm_access_t *adm_access,
01960                                         apr_pool_t *pool);
01961 
01976 svn_wc_conflict_description2_t *
01977 svn_wc_conflict_description_create_prop2(const char *local_abspath,
01978                                          svn_node_kind_t node_kind,
01979                                          const char *property_name,
01980                                          apr_pool_t *result_pool);
01981 
01988 SVN_DEPRECATED
01989 svn_wc_conflict_description_t *
01990 svn_wc_conflict_description_create_prop(const char *path,
01991                                         svn_wc_adm_access_t *adm_access,
01992                                         svn_node_kind_t node_kind,
01993                                         const char *property_name,
01994                                         apr_pool_t *pool);
01995 
02012 svn_wc_conflict_description2_t *
02013 svn_wc_conflict_description_create_tree2(
02014   const char *local_abspath,
02015   svn_node_kind_t node_kind,
02016   svn_wc_operation_t operation,
02017   const svn_wc_conflict_version_t *src_left_version,
02018   const svn_wc_conflict_version_t *src_right_version,
02019   apr_pool_t *result_pool);
02020 
02021 
02028 SVN_DEPRECATED
02029 svn_wc_conflict_description_t *
02030 svn_wc_conflict_description_create_tree(
02031   const char *path,
02032   svn_wc_adm_access_t *adm_access,
02033   svn_node_kind_t node_kind,
02034   svn_wc_operation_t operation,
02035   /* non-const */ svn_wc_conflict_version_t *src_left_version,
02036   /* non-const */ svn_wc_conflict_version_t *src_right_version,
02037   apr_pool_t *pool);
02038 
02039 
02045 svn_wc_conflict_description2_t *
02046 svn_wc__conflict_description2_dup(
02047   const svn_wc_conflict_description2_t *conflict,
02048   apr_pool_t *result_pool);
02049 
02050 
02055 typedef enum svn_wc_conflict_choice_t
02056 {
02059   svn_wc_conflict_choose_postpone,
02060 
02065   svn_wc_conflict_choose_base,            
02066   svn_wc_conflict_choose_theirs_full,     
02067   svn_wc_conflict_choose_mine_full,       
02068   svn_wc_conflict_choose_theirs_conflict, 
02069   svn_wc_conflict_choose_mine_conflict,   
02070   svn_wc_conflict_choose_merged,          
02072   /* @since New in 1.8. */
02073   svn_wc_conflict_choose_unspecified      
02075 } svn_wc_conflict_choice_t;
02076 
02077 
02088 typedef struct svn_wc_conflict_result_t
02089 {
02092   svn_wc_conflict_choice_t choice;
02093 
02098   const char *merged_file;
02099 
02103   svn_boolean_t save_merged;
02104 
02105 } svn_wc_conflict_result_t;
02106 
02107 
02119 svn_wc_conflict_result_t *
02120 svn_wc_create_conflict_result(svn_wc_conflict_choice_t choice,
02121                               const char *merged_file,
02122                               apr_pool_t *pool);
02123 
02124 
02151 typedef svn_error_t *(*svn_wc_conflict_resolver_func2_t)(
02152   svn_wc_conflict_result_t **result,
02153   const svn_wc_conflict_description2_t *description,
02154   void *baton,
02155   apr_pool_t *result_pool,
02156   apr_pool_t *scratch_pool);
02157 
02158 
02166 typedef svn_error_t *(*svn_wc_conflict_resolver_func_t)(
02167   svn_wc_conflict_result_t **result,
02168   const svn_wc_conflict_description_t *description,
02169   void *baton,
02170   apr_pool_t *pool);
02171 
02175 
02199 typedef struct svn_wc_diff_callbacks4_t
02200 {
02206   svn_error_t *(*file_opened)(svn_boolean_t *tree_conflicted,
02207                               svn_boolean_t *skip,
02208                               const char *path,
02209                               svn_revnum_t rev,
02210                               void *diff_baton,
02211                               apr_pool_t *scratch_pool);
02212 
02230   svn_error_t *(*file_changed)(svn_wc_notify_state_t *contentstate,
02231                                svn_wc_notify_state_t *propstate,
02232                                svn_boolean_t *tree_conflicted,
02233                                const char *path,
02234                                const char *tmpfile1,
02235                                const char *tmpfile2,
02236                                svn_revnum_t rev1,
02237                                svn_revnum_t rev2,
02238                                const char *mimetype1,
02239                                const char *mimetype2,
02240                                const apr_array_header_t *propchanges,
02241                                apr_hash_t *originalprops,
02242                                void *diff_baton,
02243                                apr_pool_t *scratch_pool);
02244 
02264   svn_error_t *(*file_added)(svn_wc_notify_state_t *contentstate,
02265                              svn_wc_notify_state_t *propstate,
02266                              svn_boolean_t *tree_conflicted,
02267                              const char *path,
02268                              const char *tmpfile1,
02269                              const char *tmpfile2,
02270                              svn_revnum_t rev1,
02271                              svn_revnum_t rev2,
02272                              const char *mimetype1,
02273                              const char *mimetype2,
02274                              const char *copyfrom_path,
02275                              svn_revnum_t copyfrom_revision,
02276                              const apr_array_header_t *propchanges,
02277                              apr_hash_t *originalprops,
02278                              void *diff_baton,
02279                              apr_pool_t *scratch_pool);
02280 
02292   svn_error_t *(*file_deleted)(svn_wc_notify_state_t *state,
02293                                svn_boolean_t *tree_conflicted,
02294                                const char *path,
02295                                const char *tmpfile1,
02296                                const char *tmpfile2,
02297                                const char *mimetype1,
02298                                const char *mimetype2,
02299                                apr_hash_t *originalprops,
02300                                void *diff_baton,
02301                                apr_pool_t *scratch_pool);
02302 
02306   svn_error_t *(*dir_deleted)(svn_wc_notify_state_t *state,
02307                               svn_boolean_t *tree_conflicted,
02308                               const char *path,
02309                               void *diff_baton,
02310                               apr_pool_t *scratch_pool);
02321   svn_error_t *(*dir_opened)(svn_boolean_t *tree_conflicted,
02322                              svn_boolean_t *skip,
02323                              svn_boolean_t *skip_children,
02324                              const char *path,
02325                              svn_revnum_t rev,
02326                              void *diff_baton,
02327                              apr_pool_t *scratch_pool);
02328 
02340   svn_error_t *(*dir_added)(svn_wc_notify_state_t *state,
02341                             svn_boolean_t *tree_conflicted,
02342                             svn_boolean_t *skip,
02343                             svn_boolean_t *skip_children,
02344                             const char *path,
02345                             svn_revnum_t rev,
02346                             const char *copyfrom_path,
02347                             svn_revnum_t copyfrom_revision,
02348                             void *diff_baton,
02349                             apr_pool_t *scratch_pool);
02350 
02360   svn_error_t *(*dir_props_changed)(svn_wc_notify_state_t *propstate,
02361                                     svn_boolean_t *tree_conflicted,
02362                                     const char *path,
02363                                     svn_boolean_t dir_was_added,
02364                                     const apr_array_header_t *propchanges,
02365                                     apr_hash_t *original_props,
02366                                     void *diff_baton,
02367                                     apr_pool_t *scratch_pool);
02368 
02376   svn_error_t *(*dir_closed)(svn_wc_notify_state_t *contentstate,
02377                              svn_wc_notify_state_t *propstate,
02378                              svn_boolean_t *tree_conflicted,
02379                              const char *path,
02380                              svn_boolean_t dir_was_added,
02381                              void *diff_baton,
02382                              apr_pool_t *scratch_pool);
02383 
02384 } svn_wc_diff_callbacks4_t;
02385 
02386 
02394 typedef struct svn_wc_diff_callbacks3_t
02395 {
02397   svn_error_t *(*file_changed)(svn_wc_adm_access_t *adm_access,
02398                                svn_wc_notify_state_t *contentstate,
02399                                svn_wc_notify_state_t *propstate,
02400                                svn_boolean_t *tree_conflicted,
02401                                const char *path,
02402                                const char *tmpfile1,
02403                                const char *tmpfile2,
02404                                svn_revnum_t rev1,
02405                                svn_revnum_t rev2,
02406                                const char *mimetype1,
02407                                const char *mimetype2,
02408                                const apr_array_header_t *propchanges,
02409                                apr_hash_t *originalprops,
02410                                void *diff_baton);
02411 
02414   svn_error_t *(*file_added)(svn_wc_adm_access_t *adm_access,
02415                              svn_wc_notify_state_t *contentstate,
02416                              svn_wc_notify_state_t *propstate,
02417                              svn_boolean_t *tree_conflicted,
02418                              const char *path,
02419                              const char *tmpfile1,
02420                              const char *tmpfile2,
02421                              svn_revnum_t rev1,
02422                              svn_revnum_t rev2,
02423                              const char *mimetype1,
02424                              const char *mimetype2,
02425                              const apr_array_header_t *propchanges,
02426                              apr_hash_t *originalprops,
02427                              void *diff_baton);
02428 
02430   svn_error_t *(*file_deleted)(svn_wc_adm_access_t *adm_access,
02431                                svn_wc_notify_state_t *state,
02432                                svn_boolean_t *tree_conflicted,
02433                                const char *path,
02434                                const char *tmpfile1,
02435                                const char *tmpfile2,
02436                                const char *mimetype1,
02437                                const char *mimetype2,
02438                                apr_hash_t *originalprops,
02439                                void *diff_baton);
02440 
02443   svn_error_t *(*dir_added)(svn_wc_adm_access_t *adm_access,
02444                             svn_wc_notify_state_t *state,
02445                             svn_boolean_t *tree_conflicted,
02446                             const char *path,
02447                             svn_revnum_t rev,
02448                             void *diff_baton);
02449 
02451   svn_error_t *(*dir_deleted)(svn_wc_adm_access_t *adm_access,
02452                               svn_wc_notify_state_t *state,
02453                               svn_boolean_t *tree_conflicted,
02454                               const char *path,
02455                               void *diff_baton);
02456 
02458   svn_error_t *(*dir_props_changed)(svn_wc_adm_access_t *adm_access,
02459                                     svn_wc_notify_state_t *propstate,
02460                                     svn_boolean_t *tree_conflicted,
02461                                     const char *path,
02462                                     const apr_array_header_t *propchanges,
02463                                     apr_hash_t *original_props,
02464                                     void *diff_baton);
02465 
02467   svn_error_t *(*dir_opened)(svn_wc_adm_access_t *adm_access,
02468                              svn_boolean_t *tree_conflicted,
02469                              const char *path,
02470                              svn_revnum_t rev,
02471                              void *diff_baton);
02472 
02474   svn_error_t *(*dir_closed)(svn_wc_adm_access_t *adm_access,
02475                              svn_wc_notify_state_t *contentstate,
02476                              svn_wc_notify_state_t *propstate,
02477                              svn_boolean_t *tree_conflicted,
02478                              const char *path,
02479                              void *diff_baton);
02480 
02481 } svn_wc_diff_callbacks3_t;
02482 
02490 typedef struct svn_wc_diff_callbacks2_t
02491 {
02493   svn_error_t *(*file_changed)(svn_wc_adm_access_t *adm_access,
02494                                svn_wc_notify_state_t *contentstate,
02495                                svn_wc_notify_state_t *propstate,
02496                                const char *path,
02497                                const char *tmpfile1,
02498                                const char *tmpfile2,
02499                                svn_revnum_t rev1,
02500                                svn_revnum_t rev2,
02501                                const char *mimetype1,
02502                                const char *mimetype2,
02503                                const apr_array_header_t *propchanges,
02504                                apr_hash_t *originalprops,
02505                                void *diff_baton);
02506 
02508   svn_error_t *(*file_added)(svn_wc_adm_access_t *adm_access,
02509                              svn_wc_notify_state_t *contentstate,
02510                              svn_wc_notify_state_t *propstate,
02511                              const char *path,
02512                              const char *tmpfile1,
02513                              const char *tmpfile2,
02514                              svn_revnum_t rev1,
02515                              svn_revnum_t rev2,
02516                              const char *mimetype1,
02517                              const char *mimetype2,
02518                              const apr_array_header_t *propchanges,
02519                              apr_hash_t *originalprops,
02520                              void *diff_baton);
02521 
02523   svn_error_t *(*file_deleted)(svn_wc_adm_access_t *adm_access,
02524                                svn_wc_notify_state_t *state,
02525                                const char *path,
02526                                const char *tmpfile1,
02527                                const char *tmpfile2,
02528                                const char *mimetype1,
02529                                const char *mimetype2,
02530                                apr_hash_t *originalprops,
02531                                void *diff_baton);
02532 
02534   svn_error_t *(*dir_added)(svn_wc_adm_access_t *adm_access,
02535                             svn_wc_notify_state_t *state,
02536                             const char *path,
02537                             svn_revnum_t rev,
02538                             void *diff_baton);
02539 
02541   svn_error_t *(*dir_deleted)(svn_wc_adm_access_t *adm_access,
02542                               svn_wc_notify_state_t *state,
02543                               const char *path,
02544                               void *diff_baton);
02545 
02547   svn_error_t *(*dir_props_changed)(svn_wc_adm_access_t *adm_access,
02548                                     svn_wc_notify_state_t *state,
02549                                     const char *path,
02550                                     const apr_array_header_t *propchanges,
02551                                     apr_hash_t *original_props,
02552                                     void *diff_baton);
02553 
02554 } svn_wc_diff_callbacks2_t;
02555 
02562 typedef struct svn_wc_diff_callbacks_t
02563 {
02567   svn_error_t *(*file_changed)(svn_wc_adm_access_t *adm_access,
02568                                svn_wc_notify_state_t *state,
02569                                const char *path,
02570                                const char *tmpfile1,
02571                                const char *tmpfile2,
02572                                svn_revnum_t rev1,
02573                                svn_revnum_t rev2,
02574                                const char *mimetype1,
02575                                const char *mimetype2,
02576                                void *diff_baton);
02577 
02580   svn_error_t *(*file_added)(svn_wc_adm_access_t *adm_access,
02581                              svn_wc_notify_state_t *state,
02582                              const char *path,
02583                              const char *tmpfile1,
02584                              const char *tmpfile2,
02585                              svn_revnum_t rev1,
02586                              svn_revnum_t rev2,
02587                              const char *mimetype1,
02588                              const char *mimetype2,
02589                              void *diff_baton);
02590 
02593   svn_error_t *(*file_deleted)(svn_wc_adm_access_t *adm_access,
02594                                svn_wc_notify_state_t *state,
02595                                const char *path,
02596                                const char *tmpfile1,
02597                                const char *tmpfile2,
02598                                const char *mimetype1,
02599                                const char *mimetype2,
02600                                void *diff_baton);
02601 
02603   svn_error_t *(*dir_added)(svn_wc_adm_access_t *adm_access,
02604                             svn_wc_notify_state_t *state,
02605                             const char *path,
02606                             svn_revnum_t rev,
02607                             void *diff_baton);
02608 
02610   svn_error_t *(*dir_deleted)(svn_wc_adm_access_t *adm_access,
02611                               svn_wc_notify_state_t *state,
02612                               const char *path,
02613                               void *diff_baton);
02614 
02617   svn_error_t *(*props_changed)(svn_wc_adm_access_t *adm_access,
02618                                 svn_wc_notify_state_t *state,
02619                                 const char *path,
02620                                 const apr_array_header_t *propchanges,
02621                                 apr_hash_t *original_props,
02622                                 void *diff_baton);
02623 
02624 } svn_wc_diff_callbacks_t;
02625 
02626 
02627 /* Asking questions about a working copy. */
02628 
02637 svn_error_t *
02638 svn_wc_check_wc2(int *wc_format,
02639                  svn_wc_context_t *wc_ctx,
02640                  const char *local_abspath,
02641                  apr_pool_t *scratch_pool);
02642 
02649 SVN_DEPRECATED
02650 svn_error_t *
02651 svn_wc_check_wc(const char *path,
02652                 int *wc_format,
02653                 apr_pool_t *pool);
02654 
02655 
02664 SVN_DEPRECATED
02665 svn_error_t *
02666 svn_wc_has_binary_prop(svn_boolean_t *has_binary_prop,
02667                        const char *path,
02668                        svn_wc_adm_access_t *adm_access,
02669                        apr_pool_t *pool);
02670 
02671 
02672 /* Detecting modification. */
02673 
02689 svn_error_t *
02690 svn_wc_text_modified_p2(svn_boolean_t *modified_p,
02691                         svn_wc_context_t *wc_ctx,
02692                         const char *local_abspath,
02693                         svn_boolean_t unused,
02694                         apr_pool_t *scratch_pool);
02695 
02701 SVN_DEPRECATED
02702 svn_error_t *
02703 svn_wc_text_modified_p(svn_boolean_t *modified_p,
02704                        const char *filename,
02705                        svn_boolean_t force_comparison,
02706                        svn_wc_adm_access_t *adm_access,
02707                        apr_pool_t *pool);
02708 
02715 svn_error_t *
02716 svn_wc_props_modified_p2(svn_boolean_t *modified_p,
02717                          svn_wc_context_t *wc_ctx,
02718                          const char *local_abspath,
02719                          apr_pool_t *scratch_pool);
02720 
02726 SVN_DEPRECATED
02727 svn_error_t *
02728 svn_wc_props_modified_p(svn_boolean_t *modified_p,
02729                         const char *path,
02730                         svn_wc_adm_access_t *adm_access,
02731                         apr_pool_t *pool);
02732 
02733 
02741 typedef enum svn_wc_schedule_t
02742 {
02744   svn_wc_schedule_normal,
02745 
02747   svn_wc_schedule_add,
02748 
02750   svn_wc_schedule_delete,
02751 
02753   svn_wc_schedule_replace
02754 
02755 } svn_wc_schedule_t;
02756 
02757 
02769 #define SVN_WC_ENTRY_WORKING_SIZE_UNKNOWN (-1)
02770 
02776 /* SVN_DEPRECATED */
02777 typedef struct svn_wc_entry_t
02778 {
02779   /* IMPORTANT: If you extend this structure, add new fields to the end. */
02780 
02781   /* General Attributes */
02782 
02784   const char *name;
02785 
02787   svn_revnum_t revision;
02788 
02790   const char *url;
02791 
02793   const char *repos;
02794 
02796   const char *uuid;
02797 
02799   svn_node_kind_t kind;
02800 
02801   /* State information */
02802 
02804   svn_wc_schedule_t schedule;
02805 
02813   svn_boolean_t copied;
02814 
02822   svn_boolean_t deleted;
02823 
02826   svn_boolean_t absent;
02827 
02829   svn_boolean_t incomplete;
02830 
02832   const char *copyfrom_url;
02833 
02835   svn_revnum_t copyfrom_rev;
02836 
02839   const char *conflict_old;
02840 
02843   const char *conflict_new;
02844 
02847   const char *conflict_wrk;
02848 
02851   const char *prejfile;
02852 
02855   apr_time_t text_time;
02856 
02861   apr_time_t prop_time;
02862 
02866   const char *checksum;
02867 
02868   /* "Entry props" */
02869 
02871   svn_revnum_t cmt_rev;
02872 
02874   apr_time_t cmt_date;
02875 
02877   const char *cmt_author;
02878 
02882   const char *lock_token;
02883 
02887   const char *lock_owner;
02888 
02892   const char *lock_comment;
02893 
02897   apr_time_t lock_creation_date;
02898 
02903   svn_boolean_t has_props;
02904 
02912   svn_boolean_t has_prop_mods;
02913 
02921   const char *cachable_props;
02922 
02931   const char *present_props;
02932 
02936   const char *changelist;
02937 
02944   apr_off_t working_size;
02945 
02951   svn_boolean_t keep_local;
02952 
02961   svn_depth_t depth;
02962 
02966   const char *tree_conflict_data;
02967 
02974   const char *file_external_path;
02975 
02986   svn_opt_revision_t file_external_peg_rev;
02987 
02998   svn_opt_revision_t file_external_rev;
02999 
03000   /* IMPORTANT: If you extend this structure, check the following functions in
03001    * subversion/libsvn_wc/entries.c, to see if you need to extend them as well.
03002    *
03003    * svn_wc__atts_to_entry()
03004    * svn_wc_entry_dup()
03005    * alloc_entry()
03006    * read_entry()
03007    * write_entry()
03008    * fold_entry()
03009    */
03010 } svn_wc_entry_t;
03011 
03012 
03015 #define SVN_WC_ENTRY_THIS_DIR  ""
03016 
03017 
03045 SVN_DEPRECATED
03046 svn_error_t *
03047 svn_wc_entry(const svn_wc_entry_t **entry,
03048              const char *path,
03049              svn_wc_adm_access_t *adm_access,
03050              svn_boolean_t show_hidden,
03051              apr_pool_t *pool);
03052 
03053 
03087 SVN_DEPRECATED
03088 svn_error_t *
03089 svn_wc_entries_read(apr_hash_t **entries,
03090                     svn_wc_adm_access_t *adm_access,
03091                     svn_boolean_t show_hidden,
03092                     apr_pool_t *pool);
03093 
03094 
03100 SVN_DEPRECATED
03101 svn_wc_entry_t *
03102 svn_wc_entry_dup(const svn_wc_entry_t *entry,
03103                  apr_pool_t *pool);
03104 
03117 typedef struct svn_wc_info_t
03118 {
03121   svn_wc_schedule_t schedule;
03122 
03124   const char *copyfrom_url;
03125 
03128   svn_revnum_t copyfrom_rev;
03129 
03131   const svn_checksum_t *checksum;
03132 
03135   const char *changelist;
03136 
03138   svn_depth_t depth;
03139 
03145   svn_filesize_t recorded_size;
03146 
03150   apr_time_t recorded_time;
03151 
03154   const apr_array_header_t *conflicts;
03155 
03157   const char *wcroot_abspath;
03158 
03161   const char *moved_from_abspath;
03162 
03165   const char *moved_to_abspath;
03166 } svn_wc_info_t;
03167 
03174 svn_wc_info_t *
03175 svn_wc_info_dup(const svn_wc_info_t *info,
03176                 apr_pool_t *pool);
03177 
03178 
03201 svn_error_t *
03202 svn_wc_conflicted_p3(svn_boolean_t *text_conflicted_p,
03203                      svn_boolean_t *prop_conflicted_p,
03204                      svn_boolean_t *tree_conflicted_p,
03205                      svn_wc_context_t *wc_ctx,
03206                      const char *local_abspath,
03207                      apr_pool_t *scratch_pool);
03208 
03215 SVN_DEPRECATED
03216 svn_error_t *
03217 svn_wc_conflicted_p2(svn_boolean_t *text_conflicted_p,
03218                      svn_boolean_t *prop_conflicted_p,
03219                      svn_boolean_t *tree_conflicted_p,
03220                      const char *path,
03221                      svn_wc_adm_access_t *adm_access,
03222                      apr_pool_t *pool);
03223 
03241 SVN_DEPRECATED
03242 svn_error_t *
03243 svn_wc_conflicted_p(svn_boolean_t *text_conflicted_p,
03244                     svn_boolean_t *prop_conflicted_p,
03245                     const char *dir_path,
03246                     const svn_wc_entry_t *entry,
03247                     apr_pool_t *pool);
03248 
03249 
03258 SVN_DEPRECATED
03259 svn_error_t *
03260 svn_wc_get_ancestry(char **url,
03261                     svn_revnum_t *rev,
03262                     const char *path,
03263                     svn_wc_adm_access_t *adm_access,
03264                     apr_pool_t *pool);
03265 
03266 
03270 typedef struct svn_wc_entry_callbacks2_t
03271 {
03273   svn_error_t *(*found_entry)(const char *path,
03274                               const svn_wc_entry_t *entry,
03275                               void *walk_baton,
03276                               apr_pool_t *pool);
03277 
03282   svn_error_t *(*handle_error)(const char *path,
03283                                svn_error_t *err,
03284                                void *walk_baton,
03285                                apr_pool_t *pool);
03286 
03287 } svn_wc_entry_callbacks2_t;
03288 
03290 typedef struct svn_wc_entry_callbacks_t
03291 {
03293   svn_error_t *(*found_entry)(const char *path,
03294                               const svn_wc_entry_t *entry,
03295                               void *walk_baton,
03296                               apr_pool_t *pool);
03297 
03298 } svn_wc_entry_callbacks_t;
03299 
03337 SVN_DEPRECATED
03338 svn_error_t *
03339 svn_wc_walk_entries3(const char *path,
03340                      svn_wc_adm_access_t *adm_access,
03341                      const svn_wc_entry_callbacks2_t *walk_callbacks,
03342                      void *walk_baton,
03343                      svn_depth_t depth,
03344                      svn_boolean_t show_hidden,
03345                      svn_cancel_func_t cancel_func,
03346                      void *cancel_baton,
03347                      apr_pool_t *pool);
03348 
03357 SVN_DEPRECATED
03358 svn_error_t *
03359 svn_wc_walk_entries2(const char *path,
03360                      svn_wc_adm_access_t *adm_access,
03361                      const svn_wc_entry_callbacks_t *walk_callbacks,
03362                      void *walk_baton,
03363                      svn_boolean_t show_hidden,
03364                      svn_cancel_func_t cancel_func,
03365                      void *cancel_baton,
03366                      apr_pool_t *pool);
03367 
03373 SVN_DEPRECATED
03374 svn_error_t *
03375 svn_wc_walk_entries(const char *path,
03376                     svn_wc_adm_access_t *adm_access,
03377                     const svn_wc_entry_callbacks_t *walk_callbacks,
03378                     void *walk_baton,
03379                     svn_boolean_t show_hidden,
03380                     apr_pool_t *pool);
03381 
03382 
03393 SVN_DEPRECATED
03394 svn_error_t *
03395 svn_wc_mark_missing_deleted(const char *path,
03396                             svn_wc_adm_access_t *parent,
03397                             apr_pool_t *pool);
03398 
03399 
03425 svn_error_t *
03426 svn_wc_ensure_adm4(svn_wc_context_t *wc_ctx,
03427                    const char *local_abspath,
03428                    const char *url,
03429                    const char *repos_root_url,
03430                    const char *repos_uuid,
03431                    svn_revnum_t revision,
03432                    svn_depth_t depth,
03433                    apr_pool_t *scratch_pool);
03434 
03445 SVN_DEPRECATED
03446 svn_error_t *
03447 svn_wc_ensure_adm3(const char *path,
03448                    const char *uuid,
03449                    const char *url,
03450                    const char *repos,
03451                    svn_revnum_t revision,
03452                    svn_depth_t depth,
03453                    apr_pool_t *pool);
03454 
03455 
03466 SVN_DEPRECATED
03467 svn_error_t *
03468 svn_wc_ensure_adm2(const char *path,
03469                    const char *uuid,
03470                    const char *url,
03471                    const char *repos,
03472                    svn_revnum_t revision,
03473                    apr_pool_t *pool);
03474 
03475 
03484 SVN_DEPRECATED
03485 svn_error_t *
03486 svn_wc_ensure_adm(const char *path,
03487                   const char *uuid,
03488                   const char *url,
03489                   svn_revnum_t revision,
03490                   apr_pool_t *pool);
03491 
03492 
03504 SVN_DEPRECATED
03505 svn_error_t *
03506 svn_wc_maybe_set_repos_root(svn_wc_adm_access_t *adm_access,
03507                             const char *path,
03508                             const char *repos,
03509                             apr_pool_t *pool);
03510 
03511 
03540 enum svn_wc_status_kind
03541 {
03543     svn_wc_status_none = 1,
03544 
03546     svn_wc_status_unversioned,
03547 
03549     svn_wc_status_normal,
03550 
03552     svn_wc_status_added,
03553 
03555     svn_wc_status_missing,
03556 
03558     svn_wc_status_deleted,
03559 
03561     svn_wc_status_replaced,
03562 
03564     svn_wc_status_modified,
03565 
03567     svn_wc_status_merged,
03568 
03570     svn_wc_status_conflicted,
03571 
03573     svn_wc_status_ignored,
03574 
03576     svn_wc_status_obstructed,
03577 
03580     svn_wc_status_external,
03581 
03583     svn_wc_status_incomplete
03584 };
03585 
03595 typedef struct svn_wc_status3_t
03596 {
03598   svn_node_kind_t kind;
03599 
03602   svn_depth_t depth;
03603 
03606   svn_filesize_t filesize;
03607 
03610   svn_boolean_t versioned;
03611 
03613   svn_boolean_t conflicted;
03614 
03617   enum svn_wc_status_kind node_status;
03618 
03620   enum svn_wc_status_kind text_status;
03621 
03623   enum svn_wc_status_kind prop_status;
03624 
03628   svn_boolean_t copied;
03629 
03631   svn_revnum_t revision;
03632 
03634   svn_revnum_t changed_rev;
03635 
03637   apr_time_t changed_date;
03638 
03640   const char *changed_author;
03641 
03643   const char *repos_root_url;
03644 
03646   const char *repos_uuid;
03647 
03649   const char *repos_relpath;
03650 
03654   svn_boolean_t switched;
03655 
03657   svn_boolean_t locked;
03658 
03661   const svn_lock_t *lock;
03662 
03664   const char *changelist;
03665 
03679   svn_node_kind_t ood_kind;
03680 
03683   enum svn_wc_status_kind repos_node_status;
03684 
03686   enum svn_wc_status_kind repos_text_status;
03687 
03689   enum svn_wc_status_kind repos_prop_status;
03690 
03692   const svn_lock_t *repos_lock;
03693 
03696   svn_revnum_t ood_changed_rev;
03697 
03699   apr_time_t ood_changed_date;
03700 
03706   const char *ood_changed_author;
03707 
03719   const char *moved_from_abspath;
03720 
03741   const char *moved_to_abspath;
03742 
03745   svn_boolean_t file_external;
03746 
03747   /* NOTE! Please update svn_wc_dup_status3() when adding new fields here. */
03748 } svn_wc_status3_t;
03749 
03759 typedef struct svn_wc_status2_t
03760 {
03762   const svn_wc_entry_t *entry;
03763 
03765   enum svn_wc_status_kind text_status;
03766 
03768   enum svn_wc_status_kind prop_status;
03769 
03771   svn_boolean_t locked;
03772 
03776   svn_boolean_t copied;
03777 
03781   svn_boolean_t switched;
03782 
03784   enum svn_wc_status_kind repos_text_status;
03785 
03787   enum svn_wc_status_kind repos_prop_status;
03788 
03790   svn_lock_t *repos_lock;
03791 
03795   const char *url;
03796 
03812   svn_revnum_t ood_last_cmt_rev;
03813 
03817   apr_time_t ood_last_cmt_date;
03818 
03823   svn_node_kind_t ood_kind;
03824 
03832   const char *ood_last_cmt_author;
03833 
03839   svn_wc_conflict_description_t *tree_conflict;
03840 
03846   svn_boolean_t file_external;
03847 
03854   enum svn_wc_status_kind pristine_text_status;
03855 
03862   enum svn_wc_status_kind pristine_prop_status;
03863 
03864 } svn_wc_status2_t;
03865 
03866 
03867 
03873 typedef struct svn_wc_status_t
03874 {
03876   const svn_wc_entry_t *entry;
03877 
03879   enum svn_wc_status_kind text_status;
03880 
03882   enum svn_wc_status_kind prop_status;
03883 
03885   svn_boolean_t locked;
03886 
03890   svn_boolean_t copied;
03891 
03895   svn_boolean_t switched;
03896 
03898   enum svn_wc_status_kind repos_text_status;
03899 
03901   enum svn_wc_status_kind repos_prop_status;
03902 
03903 } svn_wc_status_t;
03904 
03905 
03912 svn_wc_status3_t *
03913 svn_wc_dup_status3(const svn_wc_status3_t *orig_stat,
03914                    apr_pool_t *pool);
03915 
03922 SVN_DEPRECATED
03923 svn_wc_status2_t *
03924 svn_wc_dup_status2(const svn_wc_status2_t *orig_stat,
03925                    apr_pool_t *pool);
03926 
03927 
03933 SVN_DEPRECATED
03934 svn_wc_status_t *
03935 svn_wc_dup_status(const svn_wc_status_t *orig_stat,
03936                   apr_pool_t *pool);
03937 
03938 
03963 svn_error_t *
03964 svn_wc_status3(svn_wc_status3_t **status,
03965                svn_wc_context_t *wc_ctx,
03966                const char *local_abspath,
03967                apr_pool_t *result_pool,
03968                apr_pool_t *scratch_pool);
03969 
03976 SVN_DEPRECATED
03977 svn_error_t *
03978 svn_wc_status2(svn_wc_status2_t **status,
03979                const char *path,
03980                svn_wc_adm_access_t *adm_access,
03981                apr_pool_t *pool);
03982 
03983 
03989 SVN_DEPRECATED
03990 svn_error_t *
03991 svn_wc_status(svn_wc_status_t **status,
03992               const char *path,
03993               svn_wc_adm_access_t *adm_access,
03994               apr_pool_t *pool);
03995 
03996 
03997 
03998 
04009 typedef svn_error_t *(*svn_wc_status_func4_t)(void *baton,
04010                                               const char *local_abspath,
04011                                               const svn_wc_status3_t *status,
04012                                               apr_pool_t *scratch_pool);
04013 
04021 typedef svn_error_t *(*svn_wc_status_func3_t)(void *baton,
04022                                               const char *path,
04023                                               svn_wc_status2_t *status,
04024                                               apr_pool_t *pool);
04025 
04033 typedef void (*svn_wc_status_func2_t)(void *baton,
04034                                       const char *path,
04035                                       svn_wc_status2_t *status);
04036 
04042 typedef void (*svn_wc_status_func_t)(void *baton,
04043                                      const char *path,
04044                                      svn_wc_status_t *status);
04045 
04089 svn_error_t *
04090 svn_wc_walk_status(svn_wc_context_t *wc_ctx,
04091                    const char *local_abspath,
04092                    svn_depth_t depth,
04093                    svn_boolean_t get_all,
04094                    svn_boolean_t no_ignore,
04095                    svn_boolean_t ignore_text_mods,
04096                    const apr_array_header_t *ignore_patterns,
04097                    svn_wc_status_func4_t status_func,
04098                    void *status_baton,
04099                    svn_cancel_func_t cancel_func,
04100                    void *cancel_baton,
04101                    apr_pool_t *scratch_pool);
04102 
04171 SVN_DEPRECATED
04172 svn_error_t *
04173 svn_wc_get_status_editor5(const svn_delta_editor_t **editor,
04174                           void **edit_baton,
04175                           void **set_locks_baton,
04176                           svn_revnum_t *edit_revision,
04177                           svn_wc_context_t *wc_ctx,
04178                           const char *anchor_abspath,
04179                           const char *target_basename,
04180                           svn_depth_t depth,
04181                           svn_boolean_t get_all,
04182                           svn_boolean_t no_ignore,
04183                           svn_boolean_t depth_as_sticky,
04184                           svn_boolean_t server_performs_filtering,
04185                           const apr_array_header_t *ignore_patterns,
04186                           svn_wc_status_func4_t status_func,
04187                           void *status_baton,
04188                           svn_cancel_func_t cancel_func,
04189                           void *cancel_baton,
04190                           apr_pool_t *result_pool,
04191                           apr_pool_t *scratch_pool);
04192 
04204 SVN_DEPRECATED
04205 svn_error_t *
04206 svn_wc_get_status_editor4(const svn_delta_editor_t **editor,
04207                           void **edit_baton,
04208                           void **set_locks_baton,
04209                           svn_revnum_t *edit_revision,
04210                           svn_wc_adm_access_t *anchor,
04211                           const char *target,
04212                           svn_depth_t depth,
04213                           svn_boolean_t get_all,
04214                           svn_boolean_t no_ignore,
04215                           const apr_array_header_t *ignore_patterns,
04216                           svn_wc_status_func3_t status_func,
04217                           void *status_baton,
04218                           svn_cancel_func_t cancel_func,
04219                           void *cancel_baton,
04220                           svn_wc_traversal_info_t *traversal_info,
04221                           apr_pool_t *pool);
04222 
04230 SVN_DEPRECATED
04231 svn_error_t *
04232 svn_wc_get_status_editor3(const svn_delta_editor_t **editor,
04233                           void **edit_baton,
04234                           void **set_locks_baton,
04235                           svn_revnum_t *edit_revision,
04236                           svn_wc_adm_access_t *anchor,
04237                           const char *target,
04238                           svn_depth_t depth,
04239                           svn_boolean_t get_all,
04240                           svn_boolean_t no_ignore,
04241                           const apr_array_header_t *ignore_patterns,
04242                           svn_wc_status_func2_t status_func,
04243                           void *status_baton,
04244                           svn_cancel_func_t cancel_func,
04245                           void *cancel_baton,
04246                           svn_wc_traversal_info_t *traversal_info,
04247                           apr_pool_t *pool);
04248 
04259 SVN_DEPRECATED
04260 svn_error_t *
04261 svn_wc_get_status_editor2(const svn_delta_editor_t **editor,
04262                           void **edit_baton,
04263                           void **set_locks_baton,
04264                           svn_revnum_t *edit_revision,
04265                           svn_wc_adm_access_t *anchor,
04266                           const char *target,
04267                           apr_hash_t *config,
04268                           svn_boolean_t recurse,
04269                           svn_boolean_t get_all,
04270                           svn_boolean_t no_ignore,
04271                           svn_wc_status_func2_t status_func,
04272                           void *status_baton,
04273                           svn_cancel_func_t cancel_func,
04274                           void *cancel_baton,
04275                           svn_wc_traversal_info_t *traversal_info,
04276                           apr_pool_t *pool);
04277 
04284 SVN_DEPRECATED
04285 svn_error_t *
04286 svn_wc_get_status_editor(const svn_delta_editor_t **editor,
04287                          void **edit_baton,
04288                          svn_revnum_t *edit_revision,
04289                          svn_wc_adm_access_t *anchor,
04290                          const char *target,
04291                          apr_hash_t *config,
04292                          svn_boolean_t recurse,
04293                          svn_boolean_t get_all,
04294                          svn_boolean_t no_ignore,
04295                          svn_wc_status_func_t status_func,
04296                          void *status_baton,
04297                          svn_cancel_func_t cancel_func,
04298                          void *cancel_baton,
04299                          svn_wc_traversal_info_t *traversal_info,
04300                          apr_pool_t *pool);
04301 
04302 
04316 svn_error_t *
04317 svn_wc_status_set_repos_locks(void *set_locks_baton,
04318                               apr_hash_t *locks,
04319                               const char *repos_root,
04320                               apr_pool_t *pool);
04321 
04324 
04352 svn_error_t *
04353 svn_wc_copy3(svn_wc_context_t *wc_ctx,
04354              const char *src_abspath,
04355              const char *dst_abspath,
04356              svn_boolean_t metadata_only,
04357              svn_cancel_func_t cancel_func,
04358              void *cancel_baton,
04359              svn_wc_notify_func2_t notify_func,
04360              void *notify_baton,
04361              apr_pool_t *scratch_pool);
04362 
04369 SVN_DEPRECATED
04370 svn_error_t *
04371 svn_wc_copy2(const char *src,
04372              svn_wc_adm_access_t *dst_parent,
04373              const char *dst_basename,
04374              svn_cancel_func_t cancel_func,
04375              void *cancel_baton,
04376              svn_wc_notify_func2_t notify_func,
04377              void *notify_baton,
04378              apr_pool_t *pool);
04379 
04385 SVN_DEPRECATED
04386 svn_error_t *
04387 svn_wc_copy(const char *src,
04388             svn_wc_adm_access_t *dst_parent,
04389             const char *dst_basename,
04390             svn_cancel_func_t cancel_func,
04391             void *cancel_baton,
04392             svn_wc_notify_func_t notify_func,
04393             void *notify_baton,
04394             apr_pool_t *pool);
04395 
04426 SVN_DEPRECATED
04427 svn_error_t *
04428 svn_wc_move(svn_wc_context_t *wc_ctx,
04429             const char *src_abspath,
04430             const char *dst_abspath,
04431             svn_boolean_t metadata_only,
04432             svn_cancel_func_t cancel_func,
04433             void *cancel_baton,
04434             svn_wc_notify_func2_t notify_func,
04435             void *notify_baton,
04436             apr_pool_t *scratch_pool);
04437 
04475  /* ### BH: Maybe add a delete_switched flag that allows deny switched
04476             nodes like file externals? */
04477 svn_error_t *
04478 svn_wc_delete4(svn_wc_context_t *wc_ctx,
04479                const char *local_abspath,
04480                svn_boolean_t keep_local,
04481                svn_boolean_t delete_unversioned_target,
04482                svn_cancel_func_t cancel_func,
04483                void *cancel_baton,
04484                svn_wc_notify_func2_t notify_func,
04485                void *notify_baton,
04486                apr_pool_t *scratch_pool);
04487 
04498 SVN_DEPRECATED
04499 svn_error_t *
04500 svn_wc_delete3(const char *path,
04501                svn_wc_adm_access_t *adm_access,
04502                svn_cancel_func_t cancel_func,
04503                void *cancel_baton,
04504                svn_wc_notify_func2_t notify_func,
04505                void *notify_baton,
04506                svn_boolean_t keep_local,
04507                apr_pool_t *pool);
04508 
04514 SVN_DEPRECATED
04515 svn_error_t *
04516 svn_wc_delete2(const char *path,
04517                svn_wc_adm_access_t *adm_access,
04518                svn_cancel_func_t cancel_func,
04519                void *cancel_baton,
04520                svn_wc_notify_func2_t notify_func,
04521                void *notify_baton,
04522                apr_pool_t *pool);
04523 
04529 SVN_DEPRECATED
04530 svn_error_t *
04531 svn_wc_delete(const char *path,
04532               svn_wc_adm_access_t *adm_access,
04533               svn_cancel_func_t cancel_func,
04534               void *cancel_baton,
04535               svn_wc_notify_func_t notify_func,
04536               void *notify_baton,
04537               apr_pool_t *pool);
04538 
04539 
04564 svn_error_t *
04565 svn_wc_add_from_disk2(svn_wc_context_t *wc_ctx,
04566                       const char *local_abspath,
04567                       const apr_hash_t *props,
04568                       svn_wc_notify_func2_t notify_func,
04569                       void *notify_baton,
04570                       apr_pool_t *scratch_pool);
04571 
04572 
04585 SVN_DEPRECATED
04586 svn_error_t *
04587 svn_wc_add_from_disk(svn_wc_context_t *wc_ctx,
04588                      const char *local_abspath,
04589                      svn_wc_notify_func2_t notify_func,
04590                      void *notify_baton,
04591                      apr_pool_t *scratch_pool);
04592 
04593 
04636 svn_error_t *
04637 svn_wc_add4(svn_wc_context_t *wc_ctx,
04638             const char *local_abspath,
04639             svn_depth_t depth,
04640             const char *copyfrom_url,
04641             svn_revnum_t copyfrom_rev,
04642             svn_cancel_func_t cancel_func,
04643             void *cancel_baton,
04644             svn_wc_notify_func2_t notify_func,
04645             void *notify_baton,
04646             apr_pool_t *scratch_pool);
04647 
04654 SVN_DEPRECATED
04655 svn_error_t *
04656 svn_wc_add3(const char *path,
04657             svn_wc_adm_access_t *parent_access,
04658             svn_depth_t depth,
04659             const char *copyfrom_url,
04660             svn_revnum_t copyfrom_rev,
04661             svn_cancel_func_t cancel_func,
04662             void *cancel_baton,
04663             svn_wc_notify_func2_t notify_func,
04664             void *notify_baton,
04665             apr_pool_t *pool);
04666 
04674 SVN_DEPRECATED
04675 svn_error_t *
04676 svn_wc_add2(const char *path,
04677             svn_wc_adm_access_t *parent_access,
04678             const char *copyfrom_url,
04679             svn_revnum_t copyfrom_rev,
04680             svn_cancel_func_t cancel_func,
04681             void *cancel_baton,
04682             svn_wc_notify_func2_t notify_func,
04683             void *notify_baton,
04684             apr_pool_t *pool);
04685 
04691 SVN_DEPRECATED
04692 svn_error_t *
04693 svn_wc_add(const char *path,
04694            svn_wc_adm_access_t *parent_access,
04695            const char *copyfrom_url,
04696            svn_revnum_t copyfrom_rev,
04697            svn_cancel_func_t cancel_func,
04698            void *cancel_baton,
04699            svn_wc_notify_func_t notify_func,
04700            void *notify_baton,
04701            apr_pool_t *pool);
04702 
04747 svn_error_t *
04748 svn_wc_add_repos_file4(svn_wc_context_t *wc_ctx,
04749                        const char *local_abspath,
04750                        svn_stream_t *new_base_contents,
04751                        svn_stream_t *new_contents,
04752                        apr_hash_t *new_base_props,
04753                        apr_hash_t *new_props,
04754                        const char *copyfrom_url,
04755                        svn_revnum_t copyfrom_rev,
04756                        svn_cancel_func_t cancel_func,
04757                        void *cancel_baton,
04758                        apr_pool_t *scratch_pool);
04759 
04768 SVN_DEPRECATED
04769 svn_error_t *
04770 svn_wc_add_repos_file3(const char *dst_path,
04771                        svn_wc_adm_access_t *adm_access,
04772                        svn_stream_t *new_base_contents,
04773                        svn_stream_t *new_contents,
04774                        apr_hash_t *new_base_props,
04775                        apr_hash_t *new_props,
04776                        const char *copyfrom_url,
04777                        svn_revnum_t copyfrom_rev,
04778                        svn_cancel_func_t cancel_func,
04779                        void *cancel_baton,
04780                        svn_wc_notify_func2_t notify_func,
04781                        void *notify_baton,
04782                        apr_pool_t *scratch_pool);
04783 
04784 
04791 SVN_DEPRECATED
04792 svn_error_t *
04793 svn_wc_add_repos_file2(const char *dst_path,
04794                        svn_wc_adm_access_t *adm_access,
04795                        const char *new_text_base_path,
04796                        const char *new_text_path,
04797                        apr_hash_t *new_base_props,
04798                        apr_hash_t *new_props,
04799                        const char *copyfrom_url,
04800                        svn_revnum_t copyfrom_rev,
04801                        apr_pool_t *pool);
04802 
04808 SVN_DEPRECATED
04809 svn_error_t *
04810 svn_wc_add_repos_file(const char *dst_path,
04811                       svn_wc_adm_access_t *adm_access,
04812                       const char *new_text_path,
04813                       apr_hash_t *new_props,
04814                       const char *copyfrom_url,
04815                       svn_revnum_t copyfrom_rev,
04816                       apr_pool_t *pool);
04817 
04818 
04850 svn_error_t *
04851 svn_wc_remove_from_revision_control2(svn_wc_context_t *wc_ctx,
04852                                      const char *local_abspath,
04853                                      svn_boolean_t destroy_wf,
04854                                      svn_boolean_t instant_error,
04855                                      svn_cancel_func_t cancel_func,
04856                                      void *cancel_baton,
04857                                      apr_pool_t *pool);
04858 
04869 SVN_DEPRECATED
04870 svn_error_t *
04871 svn_wc_remove_from_revision_control(svn_wc_adm_access_t *adm_access,
04872                                     const char *name,
04873                                     svn_boolean_t destroy_wf,
04874                                     svn_boolean_t instant_error,
04875                                     svn_cancel_func_t cancel_func,
04876                                     void *cancel_baton,
04877                                     apr_pool_t *pool);
04878 
04879 
04934 svn_error_t *
04935 svn_wc_resolved_conflict5(svn_wc_context_t *wc_ctx,
04936                           const char *local_abspath,
04937                           svn_depth_t depth,
04938                           svn_boolean_t resolve_text,
04939                           const char *resolve_prop,
04940                           svn_boolean_t resolve_tree,
04941                           svn_wc_conflict_choice_t conflict_choice,
04942                           svn_cancel_func_t cancel_func,
04943                           void *cancel_baton,
04944                           svn_wc_notify_func2_t notify_func,
04945                           void *notify_baton,
04946                           apr_pool_t *scratch_pool);
04947 
04955 SVN_DEPRECATED
04956 svn_error_t *
04957 svn_wc_resolved_conflict4(const char *path,
04958                           svn_wc_adm_access_t *adm_access,
04959                           svn_boolean_t resolve_text,
04960                           svn_boolean_t resolve_props,
04961                           svn_boolean_t resolve_tree,
04962                           svn_depth_t depth,
04963                           svn_wc_conflict_choice_t conflict_choice,
04964                           svn_wc_notify_func2_t notify_func,
04965                           void *notify_baton,
04966                           svn_cancel_func_t cancel_func,
04967                           void *cancel_baton,
04968                           apr_pool_t *pool);
04969 
04970 
04978 SVN_DEPRECATED
04979 svn_error_t *
04980 svn_wc_resolved_conflict3(const char *path,
04981                           svn_wc_adm_access_t *adm_access,
04982                           svn_boolean_t resolve_text,
04983                           svn_boolean_t resolve_props,
04984                           svn_depth_t depth,
04985                           svn_wc_conflict_choice_t conflict_choice,
04986                           svn_wc_notify_func2_t notify_func,
04987                           void *notify_baton,
04988                           svn_cancel_func_t cancel_func,
04989                           void *cancel_baton,
04990                           apr_pool_t *pool);
04991 
04992 
05002 SVN_DEPRECATED
05003 svn_error_t *
05004 svn_wc_resolved_conflict2(const char *path,
05005                           svn_wc_adm_access_t *adm_access,
05006                           svn_boolean_t resolve_text,
05007                           svn_boolean_t resolve_props,
05008                           svn_boolean_t recurse,
05009                           svn_wc_notify_func2_t notify_func,
05010                           void *notify_baton,
05011                           svn_cancel_func_t cancel_func,
05012                           void *cancel_baton,
05013                           apr_pool_t *pool);
05014 
05021 SVN_DEPRECATED
05022 svn_error_t *
05023 svn_wc_resolved_conflict(const char *path,
05024                          svn_wc_adm_access_t *adm_access,
05025                          svn_boolean_t resolve_text,
05026                          svn_boolean_t resolve_props,
05027                          svn_boolean_t recurse,
05028                          svn_wc_notify_func_t notify_func,
05029                          void *notify_baton,
05030                          apr_pool_t *pool);
05031 
05032 
05033 /* Commits. */
05034 
05035 
05041 typedef struct svn_wc_committed_queue_t svn_wc_committed_queue_t;
05042 
05043 
05053 svn_wc_committed_queue_t *
05054 svn_wc_committed_queue_create(apr_pool_t *pool);
05055 
05056 
05110 svn_error_t *
05111 svn_wc_queue_committed3(svn_wc_committed_queue_t *queue,
05112                         svn_wc_context_t *wc_ctx,
05113                         const char *local_abspath,
05114                         svn_boolean_t recurse,
05115                         const apr_array_header_t *wcprop_changes,
05116                         svn_boolean_t remove_lock,
05117                         svn_boolean_t remove_changelist,
05118                         const svn_checksum_t *sha1_checksum,
05119                         apr_pool_t *scratch_pool);
05120 
05129 SVN_DEPRECATED
05130 svn_error_t *
05131 svn_wc_queue_committed2(svn_wc_committed_queue_t *queue,
05132                         const char *path,
05133                         svn_wc_adm_access_t *adm_access,
05134                         svn_boolean_t recurse,
05135                         const apr_array_header_t *wcprop_changes,
05136                         svn_boolean_t remove_lock,
05137                         svn_boolean_t remove_changelist,
05138                         const svn_checksum_t *md5_checksum,
05139                         apr_pool_t *scratch_pool);
05140 
05141 
05152 SVN_DEPRECATED
05153 svn_error_t *
05154 svn_wc_queue_committed(svn_wc_committed_queue_t **queue,
05155                        const char *path,
05156                        svn_wc_adm_access_t *adm_access,
05157                        svn_boolean_t recurse,
05158                        const apr_array_header_t *wcprop_changes,
05159                        svn_boolean_t remove_lock,
05160                        svn_boolean_t remove_changelist,
05161                        const unsigned char *digest,
05162                        apr_pool_t *pool);
05163 
05164 
05175 svn_error_t *
05176 svn_wc_process_committed_queue2(svn_wc_committed_queue_t *queue,
05177                                 svn_wc_context_t *wc_ctx,
05178                                 svn_revnum_t new_revnum,
05179                                 const char *rev_date,
05180                                 const char *rev_author,
05181                                 svn_cancel_func_t cancel_func,
05182                                 void *cancel_baton,
05183                                 apr_pool_t *scratch_pool);
05184 
05190 SVN_DEPRECATED
05191 svn_error_t *
05192 svn_wc_process_committed_queue(svn_wc_committed_queue_t *queue,
05193                                svn_wc_adm_access_t *adm_access,
05194                                svn_revnum_t new_revnum,
05195                                const char *rev_date,
05196                                const char *rev_author,
05197                                apr_pool_t *pool);
05198 
05199 
05209 SVN_DEPRECATED
05210 svn_error_t *
05211 svn_wc_process_committed4(const char *path,
05212                           svn_wc_adm_access_t *adm_access,
05213                           svn_boolean_t recurse,
05214                           svn_revnum_t new_revnum,
05215                           const char *rev_date,
05216                           const char *rev_author,
05217                           const apr_array_header_t *wcprop_changes,
05218                           svn_boolean_t remove_lock,
05219                           svn_boolean_t remove_changelist,
05220                           const unsigned char *digest,
05221                           apr_pool_t *pool);
05222 
05228 SVN_DEPRECATED
05229 svn_error_t *
05230 svn_wc_process_committed3(const char *path,
05231                           svn_wc_adm_access_t *adm_access,
05232                           svn_boolean_t recurse,
05233                           svn_revnum_t new_revnum,
05234                           const char *rev_date,
05235                           const char *rev_author,
05236                           const apr_array_header_t *wcprop_changes,
05237                           svn_boolean_t remove_lock,
05238                           const unsigned char *digest,
05239                           apr_pool_t *pool);
05240 
05246 SVN_DEPRECATED
05247 svn_error_t *
05248 svn_wc_process_committed2(const char *path,
05249                           svn_wc_adm_access_t *adm_access,
05250                           svn_boolean_t recurse,
05251                           svn_revnum_t new_revnum,
05252                           const char *rev_date,
05253                           const char *rev_author,
05254                           const apr_array_header_t *wcprop_changes,
05255                           svn_boolean_t remove_lock,
05256                           apr_pool_t *pool);
05257 
05263 SVN_DEPRECATED
05264 svn_error_t *
05265 svn_wc_process_committed(const char *path,
05266                          svn_wc_adm_access_t *adm_access,
05267                          svn_boolean_t recurse,
05268                          svn_revnum_t new_revnum,
05269                          const char *rev_date,
05270                          const char *rev_author,
05271                          const apr_array_header_t *wcprop_changes,
05272                          apr_pool_t *pool);
05273 
05274 
05275 
05276 
05277 
05337 svn_error_t *
05338 svn_wc_crawl_revisions5(svn_wc_context_t *wc_ctx,
05339                         const char *local_abspath,
05340                         const svn_ra_reporter3_t *reporter,
05341                         void *report_baton,
05342                         svn_boolean_t restore_files,
05343                         svn_depth_t depth,
05344                         svn_boolean_t honor_depth_exclude,
05345                         svn_boolean_t depth_compatibility_trick,
05346                         svn_boolean_t use_commit_times,
05347                         svn_cancel_func_t cancel_func,
05348                         void *cancel_baton,
05349                         svn_wc_notify_func2_t notify_func,
05350                         void *notify_baton,
05351                         apr_pool_t *scratch_pool);
05352 
05362 SVN_DEPRECATED
05363 svn_error_t *
05364 svn_wc_crawl_revisions4(const char *path,
05365                         svn_wc_adm_access_t *adm_access,
05366                         const svn_ra_reporter3_t *reporter,
05367                         void *report_baton,
05368                         svn_boolean_t restore_files,
05369                         svn_depth_t depth,
05370                         svn_boolean_t honor_depth_exclude,
05371                         svn_boolean_t depth_compatibility_trick,
05372                         svn_boolean_t use_commit_times,
05373                         svn_wc_notify_func2_t notify_func,
05374                         void *notify_baton,
05375                         svn_wc_traversal_info_t *traversal_info,
05376                         apr_pool_t *pool);
05377 
05378 
05385 SVN_DEPRECATED
05386 svn_error_t *
05387 svn_wc_crawl_revisions3(const char *path,
05388                         svn_wc_adm_access_t *adm_access,
05389                         const svn_ra_reporter3_t *reporter,
05390                         void *report_baton,
05391                         svn_boolean_t restore_files,
05392                         svn_depth_t depth,
05393                         svn_boolean_t depth_compatibility_trick,
05394                         svn_boolean_t use_commit_times,
05395                         svn_wc_notify_func2_t notify_func,
05396                         void *notify_baton,
05397                         svn_wc_traversal_info_t *traversal_info,
05398                         apr_pool_t *pool);
05399 
05408 SVN_DEPRECATED
05409 svn_error_t *
05410 svn_wc_crawl_revisions2(const char *path,
05411                         svn_wc_adm_access_t *adm_access,
05412                         const svn_ra_reporter2_t *reporter,
05413                         void *report_baton,
05414                         svn_boolean_t restore_files,
05415                         svn_boolean_t recurse,
05416                         svn_boolean_t use_commit_times,
05417                         svn_wc_notify_func2_t notify_func,
05418                         void *notify_baton,
05419                         svn_wc_traversal_info_t *traversal_info,
05420                         apr_pool_t *pool);
05421 
05428 SVN_DEPRECATED
05429 svn_error_t *
05430 svn_wc_crawl_revisions(const char *path,
05431                        svn_wc_adm_access_t *adm_access,
05432                        const svn_ra_reporter_t *reporter,
05433                        void *report_baton,
05434                        svn_boolean_t restore_files,
05435                        svn_boolean_t recurse,
05436                        svn_boolean_t use_commit_times,
05437                        svn_wc_notify_func_t notify_func,
05438                        void *notify_baton,
05439                        svn_wc_traversal_info_t *traversal_info,
05440                        apr_pool_t *pool);
05441 
05442 
05462 svn_error_t *
05463 svn_wc_check_root(svn_boolean_t *is_wcroot,
05464                   svn_boolean_t *is_switched,
05465                   svn_node_kind_t *kind,
05466                   svn_wc_context_t *wc_ctx,
05467                   const char *local_abspath,
05468                   apr_pool_t *scratch_pool);
05469 
05487 SVN_DEPRECATED
05488 svn_error_t *
05489 svn_wc_is_wc_root2(svn_boolean_t *wc_root,
05490                    svn_wc_context_t *wc_ctx,
05491                    const char *local_abspath,
05492                    apr_pool_t *scratch_pool);
05493 
05494 
05503 SVN_DEPRECATED
05504 svn_error_t *
05505 svn_wc_is_wc_root(svn_boolean_t *wc_root,
05506                   const char *path,
05507                   svn_wc_adm_access_t *adm_access,
05508                   apr_pool_t *pool);
05509 
05513 /* Updates. */
05514 
05538 svn_error_t *
05539 svn_wc_get_actual_target2(const char **anchor,
05540                           const char **target,
05541                           svn_wc_context_t *wc_ctx,
05542                           const char *path,
05543                           apr_pool_t *result_pool,
05544                           apr_pool_t *scratch_pool);
05545 
05546 
05552 SVN_DEPRECATED
05553 svn_error_t *
05554 svn_wc_get_actual_target(const char *path,
05555                          const char **anchor,
05556                          const char **target,
05557                          apr_pool_t *pool);
05558 
05559 
05576 typedef svn_error_t *(*svn_wc_get_file_t)(void *baton,
05577                                           const char *path,
05578                                           svn_revnum_t revision,
05579                                           svn_stream_t *stream,
05580                                           svn_revnum_t *fetched_rev,
05581                                           apr_hash_t **props,
05582                                           apr_pool_t *pool);
05583 
05598 typedef svn_error_t *(*svn_wc_dirents_func_t)(void *baton,
05599                                               apr_hash_t **dirents,
05600                                               const char *repos_root_url,
05601                                               const char *repos_relpath,
05602                                               apr_pool_t *result_pool,
05603                                               apr_pool_t *scratch_pool);
05604 
05605 
05690 SVN_DEPRECATED
05691 svn_error_t *
05692 svn_wc_get_update_editor4(const svn_delta_editor_t **editor,
05693                           void **edit_baton,
05694                           svn_revnum_t *target_revision,
05695                           svn_wc_context_t *wc_ctx,
05696                           const char *anchor_abspath,
05697                           const char *target_basename,
05698                           svn_boolean_t use_commit_times,
05699                           svn_depth_t depth,
05700                           svn_boolean_t depth_is_sticky,
05701                           svn_boolean_t allow_unver_obstructions,
05702                           svn_boolean_t adds_as_modification,
05703                           svn_boolean_t server_performs_filtering,
05704                           svn_boolean_t clean_checkout,
05705                           const char *diff3_cmd,
05706                           const apr_array_header_t *preserved_exts,
05707                           svn_wc_dirents_func_t fetch_dirents_func,
05708                           void *fetch_dirents_baton,
05709                           svn_wc_conflict_resolver_func2_t conflict_func,
05710                           void *conflict_baton,
05711                           svn_wc_external_update_t external_func,
05712                           void *external_baton,
05713                           svn_cancel_func_t cancel_func,
05714                           void *cancel_baton,
05715                           svn_wc_notify_func2_t notify_func,
05716                           void *notify_baton,
05717                           apr_pool_t *result_pool,
05718                           apr_pool_t *scratch_pool);
05719 
05745 SVN_DEPRECATED
05746 svn_error_t *
05747 svn_wc_get_update_editor3(svn_revnum_t *target_revision,
05748                           svn_wc_adm_access_t *anchor,
05749                           const char *target,
05750                           svn_boolean_t use_commit_times,
05751                           svn_depth_t depth,
05752                           svn_boolean_t depth_is_sticky,
05753                           svn_boolean_t allow_unver_obstructions,
05754                           svn_wc_notify_func2_t notify_func,
05755                           void *notify_baton,
05756                           svn_cancel_func_t cancel_func,
05757                           void *cancel_baton,
05758                           svn_wc_conflict_resolver_func_t conflict_func,
05759                           void *conflict_baton,
05760                           svn_wc_get_file_t fetch_func,
05761                           void *fetch_baton,
05762                           const char *diff3_cmd,
05763                           const apr_array_header_t *preserved_exts,
05764                           const svn_delta_editor_t **editor,
05765                           void **edit_baton,
05766                           svn_wc_traversal_info_t *ti,
05767                           apr_pool_t *pool);
05768 
05769 
05780 SVN_DEPRECATED
05781 svn_error_t *
05782 svn_wc_get_update_editor2(svn_revnum_t *target_revision,
05783                           svn_wc_adm_access_t *anchor,
05784                           const char *target,
05785                           svn_boolean_t use_commit_times,
05786                           svn_boolean_t recurse,
05787                           svn_wc_notify_func2_t notify_func,
05788                           void *notify_baton,
05789                           svn_cancel_func_t cancel_func,
05790                           void *cancel_baton,
05791                           const char *diff3_cmd,
05792                           const svn_delta_editor_t **editor,
05793                           void **edit_baton,
05794                           svn_wc_traversal_info_t *ti,
05795                           apr_pool_t *pool);
05796 
05803 SVN_DEPRECATED
05804 svn_error_t *
05805 svn_wc_get_update_editor(svn_revnum_t *target_revision,
05806                          svn_wc_adm_access_t *anchor,
05807                          const char *target,
05808                          svn_boolean_t use_commit_times,
05809                          svn_boolean_t recurse,
05810                          svn_wc_notify_func_t notify_func,
05811                          void *notify_baton,
05812                          svn_cancel_func_t cancel_func,
05813                          void *cancel_baton,
05814                          const char *diff3_cmd,
05815                          const svn_delta_editor_t **editor,
05816                          void **edit_baton,
05817                          svn_wc_traversal_info_t *ti,
05818                          apr_pool_t *pool);
05819 
05837 SVN_DEPRECATED
05838 svn_error_t *
05839 svn_wc_get_switch_editor4(const svn_delta_editor_t **editor,
05840                           void **edit_baton,
05841                           svn_revnum_t *target_revision,
05842                           svn_wc_context_t *wc_ctx,
05843                           const char *anchor_abspath,
05844                           const char *target_basename,
05845                           const char *switch_url,
05846                           svn_boolean_t use_commit_times,
05847                           svn_depth_t depth,
05848                           svn_boolean_t depth_is_sticky,
05849                           svn_boolean_t allow_unver_obstructions,
05850                           svn_boolean_t server_performs_filtering,
05851                           const char *diff3_cmd,
05852                           const apr_array_header_t *preserved_exts,
05853                           svn_wc_dirents_func_t fetch_dirents_func,
05854                           void *fetch_dirents_baton,
05855                           svn_wc_conflict_resolver_func2_t conflict_func,
05856                           void *conflict_baton,
05857                           svn_wc_external_update_t external_func,
05858                           void *external_baton,
05859                           svn_cancel_func_t cancel_func,
05860                           void *cancel_baton,
05861                           svn_wc_notify_func2_t notify_func,
05862                           void *notify_baton,
05863                           apr_pool_t *result_pool,
05864                           apr_pool_t *scratch_pool);
05865 
05887 SVN_DEPRECATED
05888 svn_error_t *
05889 svn_wc_get_switch_editor3(svn_revnum_t *target_revision,
05890                           svn_wc_adm_access_t *anchor,
05891                           const char *target,
05892                           const char *switch_url,
05893                           svn_boolean_t use_commit_times,
05894                           svn_depth_t depth,
05895                           svn_boolean_t depth_is_sticky,
05896                           svn_boolean_t allow_unver_obstructions,
05897                           svn_wc_notify_func2_t notify_func,
05898                           void *notify_baton,
05899                           svn_cancel_func_t cancel_func,
05900                           void *cancel_baton,
05901                           svn_wc_conflict_resolver_func_t conflict_func,
05902                           void *conflict_baton,
05903                           const char *diff3_cmd,
05904                           const apr_array_header_t *preserved_exts,
05905                           const svn_delta_editor_t **editor,
05906                           void **edit_baton,
05907                           svn_wc_traversal_info_t *ti,
05908                           apr_pool_t *pool);
05909 
05920 SVN_DEPRECATED
05921 svn_error_t *
05922 svn_wc_get_switch_editor2(svn_revnum_t *target_revision,
05923                           svn_wc_adm_access_t *anchor,
05924                           const char *target,
05925                           const char *switch_url,
05926                           svn_boolean_t use_commit_times,
05927                           svn_boolean_t recurse,
05928                           svn_wc_notify_func2_t notify_func,
05929                           void *notify_baton,
05930                           svn_cancel_func_t cancel_func,
05931                           void *cancel_baton,
05932                           const char *diff3_cmd,
05933                           const svn_delta_editor_t **editor,
05934                           void **edit_baton,
05935                           svn_wc_traversal_info_t *ti,
05936                           apr_pool_t *pool);
05937 
05944 SVN_DEPRECATED
05945 svn_error_t *
05946 svn_wc_get_switch_editor(svn_revnum_t *target_revision,
05947                          svn_wc_adm_access_t *anchor,
05948                          const char *target,
05949                          const char *switch_url,
05950                          svn_boolean_t use_commit_times,
05951                          svn_boolean_t recurse,
05952                          svn_wc_notify_func_t notify_func,
05953                          void *notify_baton,
05954                          svn_cancel_func_t cancel_func,
05955                          void *cancel_baton,
05956                          const char *diff3_cmd,
05957                          const svn_delta_editor_t **editor,
05958                          void **edit_baton,
05959                          svn_wc_traversal_info_t *ti,
05960                          apr_pool_t *pool);
05961 
05981 svn_error_t *
05982 svn_wc_prop_list2(apr_hash_t **props,
05983                   svn_wc_context_t *wc_ctx,
05984                   const char *local_abspath,
05985                   apr_pool_t *result_pool,
05986                   apr_pool_t *scratch_pool);
05987 
05993 SVN_DEPRECATED
05994 svn_error_t *
05995 svn_wc_prop_list(apr_hash_t **props,
05996                  const char *path,
05997                  svn_wc_adm_access_t *adm_access,
05998                  apr_pool_t *pool);
05999 
06000 
06031 svn_error_t *
06032 svn_wc_get_pristine_props(apr_hash_t **props,
06033                           svn_wc_context_t *wc_ctx,
06034                           const char *local_abspath,
06035                           apr_pool_t *result_pool,
06036                           apr_pool_t *scratch_pool);
06037 
06038 
06050 svn_error_t *
06051 svn_wc_prop_get2(const svn_string_t **value,
06052                  svn_wc_context_t *wc_ctx,
06053                  const char *local_abspath,
06054                  const char *name,
06055                  apr_pool_t *result_pool,
06056                  apr_pool_t *scratch_pool);
06057 
06065 SVN_DEPRECATED
06066 svn_error_t *
06067 svn_wc_prop_get(const svn_string_t **value,
06068                 const char *name,
06069                 const char *path,
06070                 svn_wc_adm_access_t *adm_access,
06071                 apr_pool_t *pool);
06072 
06128 svn_error_t *
06129 svn_wc_prop_set4(svn_wc_context_t *wc_ctx,
06130                  const char *local_abspath,
06131                  const char *name,
06132                  const svn_string_t *value,
06133                  svn_depth_t depth,
06134                  svn_boolean_t skip_checks,
06135                  const apr_array_header_t *changelist_filter,
06136                  svn_cancel_func_t cancel_func,
06137                  void *cancel_baton,
06138                  svn_wc_notify_func2_t notify_func,
06139                  void *notify_baton,
06140                  apr_pool_t *scratch_pool);
06141 
06149 SVN_DEPRECATED
06150 svn_error_t *
06151 svn_wc_prop_set3(const char *name,
06152                  const svn_string_t *value,
06153                  const char *path,
06154                  svn_wc_adm_access_t *adm_access,
06155                  svn_boolean_t skip_checks,
06156                  svn_wc_notify_func2_t notify_func,
06157                  void *notify_baton,
06158                  apr_pool_t *pool);
06159 
06160 
06167 SVN_DEPRECATED
06168 svn_error_t *
06169 svn_wc_prop_set2(const char *name,
06170                  const svn_string_t *value,
06171                  const char *path,
06172                  svn_wc_adm_access_t *adm_access,
06173                  svn_boolean_t skip_checks,
06174                  apr_pool_t *pool);
06175 
06176 
06182 SVN_DEPRECATED
06183 svn_error_t *
06184 svn_wc_prop_set(const char *name,
06185                 const svn_string_t *value,
06186                 const char *path,
06187                 svn_wc_adm_access_t *adm_access,
06188                 apr_pool_t *pool);
06189 
06190 
06204 svn_boolean_t
06205 svn_wc_is_normal_prop(const char *name);
06206 
06207 
06208 
06210 svn_boolean_t
06211 svn_wc_is_wc_prop(const char *name);
06212 
06214 svn_boolean_t
06215 svn_wc_is_entry_prop(const char *name);
06216 
06231 typedef svn_error_t *(*svn_wc_canonicalize_svn_prop_get_file_t)(
06232   const svn_string_t **mime_type,
06233   svn_stream_t *stream,
06234   void *baton,
06235   apr_pool_t *pool);
06236 
06237 
06299 svn_error_t *
06300 svn_wc_canonicalize_svn_prop(const svn_string_t **propval_p,
06301                              const char *propname,
06302                              const svn_string_t *propval,
06303                              const char *path,
06304                              svn_node_kind_t kind,
06305                              svn_boolean_t skip_some_checks,
06306                              svn_wc_canonicalize_svn_prop_get_file_t prop_getter,
06307                              void *getter_baton,
06308                              apr_pool_t *pool);
06309 
06312 
06381 SVN_DEPRECATED
06382 svn_error_t *
06383 svn_wc_get_diff_editor6(const svn_delta_editor_t **editor,
06384                         void **edit_baton,
06385                         svn_wc_context_t *wc_ctx,
06386                         const char *anchor_abspath,
06387                         const char *target,
06388                         svn_depth_t depth,
06389                         svn_boolean_t ignore_ancestry,
06390                         svn_boolean_t show_copies_as_adds,
06391                         svn_boolean_t use_git_diff_format,
06392                         svn_boolean_t use_text_base,
06393                         svn_boolean_t reverse_order,
06394                         svn_boolean_t server_performs_filtering,
06395                         const apr_array_header_t *changelist_filter,
06396                         const svn_wc_diff_callbacks4_t *callbacks,
06397                         void *callback_baton,
06398                         svn_cancel_func_t cancel_func,
06399                         void *cancel_baton,
06400                         apr_pool_t *result_pool,
06401                         apr_pool_t *scratch_pool);
06402 
06415 SVN_DEPRECATED
06416 svn_error_t *
06417 svn_wc_get_diff_editor5(svn_wc_adm_access_t *anchor,
06418                         const char *target,
06419                         const svn_wc_diff_callbacks3_t *callbacks,
06420                         void *callback_baton,
06421                         svn_depth_t depth,
06422                         svn_boolean_t ignore_ancestry,
06423                         svn_boolean_t use_text_base,
06424                         svn_boolean_t reverse_order,
06425                         svn_cancel_func_t cancel_func,
06426                         void *cancel_baton,
06427                         const apr_array_header_t *changelist_filter,
06428                         const svn_delta_editor_t **editor,
06429                         void **edit_baton,
06430                         apr_pool_t *pool);
06431 
06438 SVN_DEPRECATED
06439 svn_error_t *
06440 svn_wc_get_diff_editor4(svn_wc_adm_access_t *anchor,
06441                         const char *target,
06442                         const svn_wc_diff_callbacks2_t *callbacks,
06443                         void *callback_baton,
06444                         svn_depth_t depth,
06445                         svn_boolean_t ignore_ancestry,
06446                         svn_boolean_t use_text_base,
06447                         svn_boolean_t reverse_order,
06448                         svn_cancel_func_t cancel_func,
06449                         void *cancel_baton,
06450                         const apr_array_header_t *changelist_filter,
06451                         const svn_delta_editor_t **editor,
06452                         void **edit_baton,
06453                         apr_pool_t *pool);
06454 
06464 SVN_DEPRECATED
06465 svn_error_t *
06466 svn_wc_get_diff_editor3(svn_wc_adm_access_t *anchor,
06467                         const char *target,
06468                         const svn_wc_diff_callbacks2_t *callbacks,
06469                         void *callback_baton,
06470                         svn_boolean_t recurse,
06471                         svn_boolean_t ignore_ancestry,
06472                         svn_boolean_t use_text_base,
06473                         svn_boolean_t reverse_order,
06474                         svn_cancel_func_t cancel_func,
06475                         void *cancel_baton,
06476                         const svn_delta_editor_t **editor,
06477                         void **edit_baton,
06478                         apr_pool_t *pool);
06479 
06480 
06487 SVN_DEPRECATED
06488 svn_error_t *
06489 svn_wc_get_diff_editor2(svn_wc_adm_access_t *anchor,
06490                         const char *target,
06491                         const svn_wc_diff_callbacks_t *callbacks,
06492                         void *callback_baton,
06493                         svn_boolean_t recurse,
06494                         svn_boolean_t ignore_ancestry,
06495                         svn_boolean_t use_text_base,
06496                         svn_boolean_t reverse_order,
06497                         svn_cancel_func_t cancel_func,
06498                         void *cancel_baton,
06499                         const svn_delta_editor_t **editor,
06500                         void **edit_baton,
06501                         apr_pool_t *pool);
06502 
06503 
06510 SVN_DEPRECATED
06511 svn_error_t *
06512 svn_wc_get_diff_editor(svn_wc_adm_access_t *anchor,
06513                        const char *target,
06514                        const svn_wc_diff_callbacks_t *callbacks,
06515                        void *callback_baton,
06516                        svn_boolean_t recurse,
06517                        svn_boolean_t use_text_base,
06518                        svn_boolean_t reverse_order,
06519                        svn_cancel_func_t cancel_func,
06520                        void *cancel_baton,
06521                        const svn_delta_editor_t **editor,
06522                        void **edit_baton,
06523                        apr_pool_t *pool);
06524 
06525 
06566 svn_error_t *
06567 svn_wc_diff6(svn_wc_context_t *wc_ctx,
06568              const char *target_abspath,
06569              const svn_wc_diff_callbacks4_t *callbacks,
06570              void *callback_baton,
06571              svn_depth_t depth,
06572              svn_boolean_t ignore_ancestry,
06573              svn_boolean_t show_copies_as_adds,
06574              svn_boolean_t use_git_diff_format,
06575              const apr_array_header_t *changelist_filter,
06576              svn_cancel_func_t cancel_func,
06577              void *cancel_baton,
06578              apr_pool_t *scratch_pool);
06579 
06589 SVN_DEPRECATED
06590 svn_error_t *
06591 svn_wc_diff5(svn_wc_adm_access_t *anchor,
06592              const char *target,
06593              const svn_wc_diff_callbacks3_t *callbacks,
06594              void *callback_baton,
06595              svn_depth_t depth,
06596              svn_boolean_t ignore_ancestry,
06597              const apr_array_header_t *changelist_filter,
06598              apr_pool_t *pool);
06599 
06607 SVN_DEPRECATED
06608 svn_error_t *
06609 svn_wc_diff4(svn_wc_adm_access_t *anchor,
06610              const char *target,
06611              const svn_wc_diff_callbacks2_t *callbacks,
06612              void *callback_baton,
06613              svn_depth_t depth,
06614              svn_boolean_t ignore_ancestry,
06615              const apr_array_header_t *changelist_filter,
06616              apr_pool_t *pool);
06617 
06626 SVN_DEPRECATED
06627 svn_error_t *
06628 svn_wc_diff3(svn_wc_adm_access_t *anchor,
06629              const char *target,
06630              const svn_wc_diff_callbacks2_t *callbacks,
06631              void *callback_baton,
06632              svn_boolean_t recurse,
06633              svn_boolean_t ignore_ancestry,
06634              apr_pool_t *pool);
06635 
06643 SVN_DEPRECATED
06644 svn_error_t *
06645 svn_wc_diff2(svn_wc_adm_access_t *anchor,
06646              const char *target,
06647              const svn_wc_diff_callbacks_t *callbacks,
06648              void *callback_baton,
06649              svn_boolean_t recurse,
06650              svn_boolean_t ignore_ancestry,
06651              apr_pool_t *pool);
06652 
06659 SVN_DEPRECATED
06660 svn_error_t *
06661 svn_wc_diff(svn_wc_adm_access_t *anchor,
06662             const char *target,
06663             const svn_wc_diff_callbacks_t *callbacks,
06664             void *callback_baton,
06665             svn_boolean_t recurse,
06666             apr_pool_t *pool);
06667 
06668 
06685 svn_error_t *
06686 svn_wc_get_prop_diffs2(apr_array_header_t **propchanges,
06687                        apr_hash_t **original_props,
06688                        svn_wc_context_t *wc_ctx,
06689                        const char *local_abspath,
06690                        apr_pool_t *result_pool,
06691                        apr_pool_t *scratch_pool);
06692 
06698 SVN_DEPRECATED
06699 svn_error_t *
06700 svn_wc_get_prop_diffs(apr_array_header_t **propchanges,
06701                       apr_hash_t **original_props,
06702                       const char *path,
06703                       svn_wc_adm_access_t *adm_access,
06704                       apr_pool_t *pool);
06705 
06717 typedef enum svn_wc_merge_outcome_t
06718 {
06722    svn_wc_merge_unchanged,
06723 
06725    svn_wc_merge_merged,
06726 
06730    svn_wc_merge_conflict,
06731 
06735    svn_wc_merge_no_merge
06736 
06737 } svn_wc_merge_outcome_t;
06738 
06829 svn_error_t *
06830 svn_wc_merge5(enum svn_wc_merge_outcome_t *merge_content_outcome,
06831               enum svn_wc_notify_state_t *merge_props_state,
06832               svn_wc_context_t *wc_ctx,
06833               const char *left_abspath,
06834               const char *right_abspath,
06835               const char *target_abspath,
06836               const char *left_label,
06837               const char *right_label,
06838               const char *target_label,
06839               const svn_wc_conflict_version_t *left_version,
06840               const svn_wc_conflict_version_t *right_version,
06841               svn_boolean_t dry_run,
06842               const char *diff3_cmd,
06843               const apr_array_header_t *merge_options,
06844               apr_hash_t *original_props,
06845               const apr_array_header_t *prop_diff,
06846               svn_wc_conflict_resolver_func2_t conflict_func,
06847               void *conflict_baton,
06848               svn_cancel_func_t cancel_func,
06849               void *cancel_baton,
06850               apr_pool_t *scratch_pool);
06851 
06862 SVN_DEPRECATED
06863 svn_error_t *
06864 svn_wc_merge4(enum svn_wc_merge_outcome_t *merge_outcome,
06865               svn_wc_context_t *wc_ctx,
06866               const char *left_abspath,
06867               const char *right_abspath,
06868               const char *target_abspath,
06869               const char *left_label,
06870               const char *right_label,
06871               const char *target_label,
06872               const svn_wc_conflict_version_t *left_version,
06873               const svn_wc_conflict_version_t *right_version,
06874               svn_boolean_t dry_run,
06875               const char *diff3_cmd,
06876               const apr_array_header_t *merge_options,
06877               const apr_array_header_t *prop_diff,
06878               svn_wc_conflict_resolver_func2_t conflict_func,
06879               void *conflict_baton,
06880               svn_cancel_func_t cancel_func,
06881               void *cancel_baton,
06882               apr_pool_t *scratch_pool);
06883 
06884 
06898 SVN_DEPRECATED
06899 svn_error_t *
06900 svn_wc_merge3(enum svn_wc_merge_outcome_t *merge_outcome,
06901               const char *left,
06902               const char *right,
06903               const char *merge_target,
06904               svn_wc_adm_access_t *adm_access,
06905               const char *left_label,
06906               const char *right_label,
06907               const char *target_label,
06908               svn_boolean_t dry_run,
06909               const char *diff3_cmd,
06910               const apr_array_header_t *merge_options,
06911               const apr_array_header_t *prop_diff,
06912               svn_wc_conflict_resolver_func_t conflict_func,
06913               void *conflict_baton,
06914               apr_pool_t *pool);
06915 
06916 
06922 SVN_DEPRECATED
06923 svn_error_t *
06924 svn_wc_merge2(enum svn_wc_merge_outcome_t *merge_outcome,
06925               const char *left,
06926               const char *right,
06927               const char *merge_target,
06928               svn_wc_adm_access_t *adm_access,
06929               const char *left_label,
06930               const char *right_label,
06931               const char *target_label,
06932               svn_boolean_t dry_run,
06933               const char *diff3_cmd,
06934               const apr_array_header_t *merge_options,
06935               apr_pool_t *pool);
06936 
06937 
06942 SVN_DEPRECATED
06943 svn_error_t *
06944 svn_wc_merge(const char *left,
06945              const char *right,
06946              const char *merge_target,
06947              svn_wc_adm_access_t *adm_access,
06948              const char *left_label,
06949              const char *right_label,
06950              const char *target_label,
06951              svn_boolean_t dry_run,
06952              enum svn_wc_merge_outcome_t *merge_outcome,
06953              const char *diff3_cmd,
06954              apr_pool_t *pool);
06955 
06956 
06987 svn_error_t *
06988 svn_wc_merge_props3(svn_wc_notify_state_t *state,
06989                     svn_wc_context_t *wc_ctx,
06990                     const char *local_abspath,
06991                     const svn_wc_conflict_version_t *left_version,
06992                     const svn_wc_conflict_version_t *right_version,
06993                     apr_hash_t *baseprops,
06994                     const apr_array_header_t *propchanges,
06995                     svn_boolean_t dry_run,
06996                     svn_wc_conflict_resolver_func2_t conflict_func,
06997                     void *conflict_baton,
06998                     svn_cancel_func_t cancel_func,
06999                     void *cancel_baton,
07000                     apr_pool_t *scratch_pool);
07001 
07002 
07022 SVN_DEPRECATED
07023 svn_error_t *
07024 svn_wc_merge_props2(svn_wc_notify_state_t *state,
07025                     const char *path,
07026                     svn_wc_adm_access_t *adm_access,
07027                     apr_hash_t *baseprops,
07028                     const apr_array_header_t *propchanges,
07029                     svn_boolean_t base_merge,
07030                     svn_boolean_t dry_run,
07031                     svn_wc_conflict_resolver_func_t conflict_func,
07032                     void *conflict_baton,
07033                     apr_pool_t *pool);
07034 
07035 
07043 SVN_DEPRECATED
07044 svn_error_t *
07045 svn_wc_merge_props(svn_wc_notify_state_t *state,
07046                    const char *path,
07047                    svn_wc_adm_access_t *adm_access,
07048                    apr_hash_t *baseprops,
07049                    const apr_array_header_t *propchanges,
07050                    svn_boolean_t base_merge,
07051                    svn_boolean_t dry_run,
07052                    apr_pool_t *pool);
07053 
07054 
07066 SVN_DEPRECATED
07067 svn_error_t *
07068 svn_wc_merge_prop_diffs(svn_wc_notify_state_t *state,
07069                         const char *path,
07070                         svn_wc_adm_access_t *adm_access,
07071                         const apr_array_header_t *propchanges,
07072                         svn_boolean_t base_merge,
07073                         svn_boolean_t dry_run,
07074                         apr_pool_t *pool);
07075 
07099 svn_error_t *
07100 svn_wc_get_pristine_contents2(svn_stream_t **contents,
07101                               svn_wc_context_t *wc_ctx,
07102                               const char *local_abspath,
07103                               apr_pool_t *result_pool,
07104                               apr_pool_t *scratch_pool);
07105 
07112 SVN_DEPRECATED
07113 svn_error_t *
07114 svn_wc_get_pristine_contents(svn_stream_t **contents,
07115                              const char *path,
07116                              apr_pool_t *result_pool,
07117                              apr_pool_t *scratch_pool);
07118 
07119 
07135 SVN_DEPRECATED
07136 svn_error_t *
07137 svn_wc_get_pristine_copy_path(const char *path,
07138                               const char **pristine_path,
07139                               apr_pool_t *pool);
07140 
07141 
07156 svn_error_t *
07157 svn_wc_cleanup3(svn_wc_context_t *wc_ctx,
07158                 const char *local_abspath,
07159                 svn_cancel_func_t cancel_func,
07160                 void *cancel_baton,
07161                 apr_pool_t *scratch_pool);
07162 
07170 SVN_DEPRECATED
07171 svn_error_t *
07172 svn_wc_cleanup2(const char *path,
07173                 const char *diff3_cmd,
07174                 svn_cancel_func_t cancel_func,
07175                 void *cancel_baton,
07176                 apr_pool_t *pool);
07177 
07184 SVN_DEPRECATED
07185 svn_error_t *
07186 svn_wc_cleanup(const char *path,
07187                svn_wc_adm_access_t *optional_adm_access,
07188                const char *diff3_cmd,
07189                svn_cancel_func_t cancel_func,
07190                void *cancel_baton,
07191                apr_pool_t *pool);
07192 
07201 typedef svn_error_t * (*svn_wc_upgrade_get_repos_info_t)(
07202                                     const char **repos_root,
07203                                     const char **repos_uuid,
07204                                     void *baton,
07205                                     const char *url,
07206                                     apr_pool_t *result_pool,
07207                                     apr_pool_t *scratch_pool);
07208 
07209 
07230 svn_error_t *
07231 svn_wc_upgrade(svn_wc_context_t *wc_ctx,
07232                const char *local_abspath,
07233                svn_wc_upgrade_get_repos_info_t repos_info_func,
07234                void *repos_info_baton,
07235                svn_cancel_func_t cancel_func,
07236                void *cancel_baton,
07237                svn_wc_notify_func2_t notify_func,
07238                void *notify_baton,
07239                apr_pool_t *scratch_pool);
07240 
07241 
07256 typedef svn_error_t *(*svn_wc_relocation_validator3_t)(void *baton,
07257                                                        const char *uuid,
07258                                                        const char *url,
07259                                                        const char *root_url,
07260                                                        apr_pool_t *pool);
07261 
07270 typedef svn_error_t *(*svn_wc_relocation_validator2_t)(void *baton,
07271                                                        const char *uuid,
07272                                                        const char *url,
07273                                                        svn_boolean_t root,
07274                                                        apr_pool_t *pool);
07275 
07282 typedef svn_error_t *(*svn_wc_relocation_validator_t)(void *baton,
07283                                                       const char *uuid,
07284                                                       const char *url);
07285 
07299 svn_error_t *
07300 svn_wc_relocate4(svn_wc_context_t *wc_ctx,
07301                  const char *wcroot_abspath,
07302                  const char *from,
07303                  const char *to,
07304                  svn_wc_relocation_validator3_t validator,
07305                  void *validator_baton,
07306                  apr_pool_t *scratch_pool);
07307 
07318 SVN_DEPRECATED
07319 svn_error_t *
07320 svn_wc_relocate3(const char *path,
07321                  svn_wc_adm_access_t *adm_access,
07322                  const char *from,
07323                  const char *to,
07324                  svn_boolean_t recurse,
07325                  svn_wc_relocation_validator3_t validator,
07326                  void *validator_baton,
07327                  apr_pool_t *pool);
07328 
07333 SVN_DEPRECATED
07334 svn_error_t *
07335 svn_wc_relocate2(const char *path,
07336                  svn_wc_adm_access_t *adm_access,
07337                  const char *from,
07338                  const char *to,
07339                  svn_boolean_t recurse,
07340                  svn_wc_relocation_validator2_t validator,
07341                  void *validator_baton,
07342                  apr_pool_t *pool);
07343 
07347 SVN_DEPRECATED
07348 svn_error_t *
07349 svn_wc_relocate(const char *path,
07350                 svn_wc_adm_access_t *adm_access,
07351                 const char *from,
07352                 const char *to,
07353                 svn_boolean_t recurse,
07354                 svn_wc_relocation_validator_t validator,
07355                 void *validator_baton,
07356                 apr_pool_t *pool);
07357 
07358 
07398 svn_error_t *
07399 svn_wc_revert4(svn_wc_context_t *wc_ctx,
07400                const char *local_abspath,
07401                svn_depth_t depth,
07402                svn_boolean_t use_commit_times,
07403                const apr_array_header_t *changelist_filter,
07404                svn_cancel_func_t cancel_func,
07405                void *cancel_baton,
07406                svn_wc_notify_func2_t notify_func,
07407                void *notify_baton,
07408                apr_pool_t *scratch_pool);
07409 
07415 SVN_DEPRECATED
07416 svn_error_t *
07417 svn_wc_revert3(const char *path,
07418                svn_wc_adm_access_t *parent_access,
07419                svn_depth_t depth,
07420                svn_boolean_t use_commit_times,
07421                const apr_array_header_t *changelist_filter,
07422                svn_cancel_func_t cancel_func,
07423                void *cancel_baton,
07424                svn_wc_notify_func2_t notify_func,
07425                void *notify_baton,
07426                apr_pool_t *pool);
07427 
07440 SVN_DEPRECATED
07441 svn_error_t *
07442 svn_wc_revert2(const char *path,
07443                svn_wc_adm_access_t *parent_access,
07444                svn_boolean_t recursive,
07445                svn_boolean_t use_commit_times,
07446                svn_cancel_func_t cancel_func,
07447                void *cancel_baton,
07448                svn_wc_notify_func2_t notify_func,
07449                void *notify_baton,
07450                apr_pool_t *pool);
07451 
07457 SVN_DEPRECATED
07458 svn_error_t *
07459 svn_wc_revert(const char *path,
07460               svn_wc_adm_access_t *parent_access,
07461               svn_boolean_t recursive,
07462               svn_boolean_t use_commit_times,
07463               svn_cancel_func_t cancel_func,
07464               void *cancel_baton,
07465               svn_wc_notify_func_t notify_func,
07466               void *notify_baton,
07467               apr_pool_t *pool);
07468 
07482 svn_error_t *
07483 svn_wc_restore(svn_wc_context_t *wc_ctx,
07484                const char *local_abspath,
07485                svn_boolean_t use_commit_times,
07486                apr_pool_t *scratch_pool);
07487 
07488 
07489 /* Tmp files */
07490 
07504 SVN_DEPRECATED
07505 svn_error_t *
07506 svn_wc_create_tmp_file2(apr_file_t **fp,
07507                         const char **new_name,
07508                         const char *path,
07509                         svn_io_file_del_t delete_when,
07510                         apr_pool_t *pool);
07511 
07512 
07518 SVN_DEPRECATED
07519 svn_error_t *
07520 svn_wc_create_tmp_file(apr_file_t **fp,
07521                        const char *path,
07522                        svn_boolean_t delete_on_close,
07523                        apr_pool_t *pool);
07524 
07525 
07568 SVN_DEPRECATED
07569 svn_error_t *
07570 svn_wc_translated_file2(const char **xlated_path,
07571                         const char *src,
07572                         const char *versioned_file,
07573                         svn_wc_adm_access_t *adm_access,
07574                         apr_uint32_t flags,
07575                         apr_pool_t *pool);
07576 
07577 
07583 SVN_DEPRECATED
07584 svn_error_t *
07585 svn_wc_translated_file(const char **xlated_p,
07586                        const char *vfile,
07587                        svn_wc_adm_access_t *adm_access,
07588                        svn_boolean_t force_repair,
07589                        apr_pool_t *pool);
07590 
07591 
07609 SVN_DEPRECATED
07610 svn_error_t *
07611 svn_wc_translated_stream(svn_stream_t **stream,
07612                          const char *path,
07613                          const char *versioned_file,
07614                          svn_wc_adm_access_t *adm_access,
07615                          apr_uint32_t flags,
07616                          apr_pool_t *pool);
07617 
07618 
07652 svn_error_t *
07653 svn_wc_transmit_text_deltas3(const svn_checksum_t **new_text_base_md5_checksum,
07654                              const svn_checksum_t **new_text_base_sha1_checksum,
07655                              svn_wc_context_t *wc_ctx,
07656                              const char *local_abspath,
07657                              svn_boolean_t fulltext,
07658                              const svn_delta_editor_t *editor,
07659                              void *file_baton,
07660                              apr_pool_t *result_pool,
07661                              apr_pool_t *scratch_pool);
07662 
07678 SVN_DEPRECATED
07679 svn_error_t *
07680 svn_wc_transmit_text_deltas2(const char **tempfile,
07681                              unsigned char digest[],
07682                              const char *path,
07683                              svn_wc_adm_access_t *adm_access,
07684                              svn_boolean_t fulltext,
07685                              const svn_delta_editor_t *editor,
07686                              void *file_baton,
07687                              apr_pool_t *pool);
07688 
07693 SVN_DEPRECATED
07694 svn_error_t *
07695 svn_wc_transmit_text_deltas(const char *path,
07696                             svn_wc_adm_access_t *adm_access,
07697                             svn_boolean_t fulltext,
07698                             const svn_delta_editor_t *editor,
07699                             void *file_baton,
07700                             const char **tempfile,
07701                             apr_pool_t *pool);
07702 
07703 
07710 svn_error_t *
07711 svn_wc_transmit_prop_deltas2(svn_wc_context_t *wc_ctx,
07712                              const char *local_abspath,
07713                              const svn_delta_editor_t *editor,
07714                              void *baton,
07715                              apr_pool_t *scratch_pool);
07716 
07717 
07730 SVN_DEPRECATED
07731 svn_error_t *
07732 svn_wc_transmit_prop_deltas(const char *path,
07733                             svn_wc_adm_access_t *adm_access,
07734                             const svn_wc_entry_t *entry,
07735                             const svn_delta_editor_t *editor,
07736                             void *baton,
07737                             const char **tempfile,
07738                             apr_pool_t *pool);
07739 
07752 svn_error_t *
07753 svn_wc_get_default_ignores(apr_array_header_t **patterns,
07754                            apr_hash_t *config,
07755                            apr_pool_t *pool);
07756 
07765 svn_error_t *
07766 svn_wc_get_ignores2(apr_array_header_t **patterns,
07767                     svn_wc_context_t *wc_ctx,
07768                     const char *local_abspath,
07769                     apr_hash_t *config,
07770                     apr_pool_t *result_pool,
07771                     apr_pool_t *scratch_pool);
07772 
07779 SVN_DEPRECATED
07780 svn_error_t *
07781 svn_wc_get_ignores(apr_array_header_t **patterns,
07782                    apr_hash_t *config,
07783                    svn_wc_adm_access_t *adm_access,
07784                    apr_pool_t *pool);
07785 
07791 svn_boolean_t
07792 svn_wc_match_ignore_list(const char *str,
07793                          const apr_array_header_t *list,
07794                          apr_pool_t *pool);
07795 
07810 svn_error_t *
07811 svn_wc_add_lock2(svn_wc_context_t *wc_ctx,
07812                  const char *abspath,
07813                  const svn_lock_t *lock,
07814                  apr_pool_t *scratch_pool);
07815 
07823 SVN_DEPRECATED
07824 svn_error_t *
07825 svn_wc_add_lock(const char *path,
07826                 const svn_lock_t *lock,
07827                 svn_wc_adm_access_t *adm_access,
07828                 apr_pool_t *pool);
07829 
07837 svn_error_t *
07838 svn_wc_remove_lock2(svn_wc_context_t *wc_ctx,
07839                     const char *local_abspath,
07840                     apr_pool_t *scratch_pool);
07841 
07849 SVN_DEPRECATED
07850 svn_error_t *
07851 svn_wc_remove_lock(const char *path,
07852                    svn_wc_adm_access_t *adm_access,
07853                    apr_pool_t *pool);
07854 
07868 typedef struct svn_wc_revision_status_t
07869 {
07870   svn_revnum_t min_rev;   
07871   svn_revnum_t max_rev;   
07873   svn_boolean_t switched; 
07874   svn_boolean_t modified; 
07879   svn_boolean_t sparse_checkout;
07880 } svn_wc_revision_status_t;
07881 
07913 svn_error_t *
07914 svn_wc_revision_status2(svn_wc_revision_status_t **result_p,
07915                         svn_wc_context_t *wc_ctx,
07916                         const char *local_abspath,
07917                         const char *trail_url,
07918                         svn_boolean_t committed,
07919                         svn_cancel_func_t cancel_func,
07920                         void *cancel_baton,
07921                         apr_pool_t *result_pool,
07922                         apr_pool_t *scratch_pool);
07923 
07924 
07931 SVN_DEPRECATED
07932 svn_error_t *
07933 svn_wc_revision_status(svn_wc_revision_status_t **result_p,
07934                        const char *wc_path,
07935                        const char *trail_url,
07936                        svn_boolean_t committed,
07937                        svn_cancel_func_t cancel_func,
07938                        void *cancel_baton,
07939                        apr_pool_t *pool);
07940 
07941 
07974 svn_error_t *
07975 svn_wc_set_changelist2(svn_wc_context_t *wc_ctx,
07976                        const char *local_abspath,
07977                        const char *changelist,
07978                        svn_depth_t depth,
07979                        const apr_array_header_t *changelist_filter,
07980                        svn_cancel_func_t cancel_func,
07981                        void *cancel_baton,
07982                        svn_wc_notify_func2_t notify_func,
07983                        void *notify_baton,
07984                        apr_pool_t *scratch_pool);
07985 
07992 SVN_DEPRECATED
07993 svn_error_t *
07994 svn_wc_set_changelist(const char *path,
07995                       const char *changelist,
07996                       svn_wc_adm_access_t *adm_access,
07997                       svn_cancel_func_t cancel_func,
07998                       void *cancel_baton,
07999                       svn_wc_notify_func2_t notify_func,
08000                       void *notify_baton,
08001                       apr_pool_t *pool);
08002 
08003 
08004 
08014 typedef svn_error_t *(*svn_changelist_receiver_t) (void *baton,
08015                                                    const char *path,
08016                                                    const char *changelist,
08017                                                    apr_pool_t *pool);
08018 
08019 
08025 svn_error_t *
08026 svn_wc_get_changelists(svn_wc_context_t *wc_ctx,
08027                        const char *local_abspath,
08028                        svn_depth_t depth,
08029                        const apr_array_header_t *changelist_filter,
08030                        svn_changelist_receiver_t callback_func,
08031                        void *callback_baton,
08032                        svn_cancel_func_t cancel_func,
08033                        void *cancel_baton,
08034                        apr_pool_t *scratch_pool);
08035 
08036 
08065 svn_error_t *
08066 svn_wc_crop_tree2(svn_wc_context_t *wc_ctx,
08067                   const char *local_abspath,
08068                   svn_depth_t depth,
08069                   svn_cancel_func_t cancel_func,
08070                   void *cancel_baton,
08071                   svn_wc_notify_func2_t notify_func,
08072                   void *notify_baton,
08073                   apr_pool_t *scratch_pool);
08074 
08085 SVN_DEPRECATED
08086 svn_error_t *
08087 svn_wc_crop_tree(svn_wc_adm_access_t *anchor,
08088                  const char *target,
08089                  svn_depth_t depth,
08090                  svn_wc_notify_func2_t notify_func,
08091                  void *notify_baton,
08092                  svn_cancel_func_t cancel_func,
08093                  void *cancel_baton,
08094                  apr_pool_t *pool);
08095 
08115 svn_error_t *
08116 svn_wc_exclude(svn_wc_context_t *wc_ctx,
08117                const char *local_abspath,
08118                svn_cancel_func_t cancel_func,
08119                void *cancel_baton,
08120                svn_wc_notify_func2_t notify_func,
08121                void *notify_baton,
08122                apr_pool_t *scratch_pool);
08123 
08124 
08153 svn_error_t *
08154 svn_wc_read_kind2(svn_node_kind_t *kind,
08155                   svn_wc_context_t *wc_ctx,
08156                   const char *local_abspath,
08157                   svn_boolean_t show_deleted,
08158                   svn_boolean_t show_hidden,
08159                   apr_pool_t *scratch_pool);
08160 
08167 SVN_DEPRECATED
08168 svn_error_t *
08169 svn_wc_read_kind(svn_node_kind_t *kind,
08170                  svn_wc_context_t *wc_ctx,
08171                  const char *abspath,
08172                  svn_boolean_t show_hidden,
08173                  apr_pool_t *scratch_pool);
08174 
08175 
08178 #ifdef __cplusplus
08179 }
08180 #endif /* __cplusplus */
08181 
08182 #endif  /* SVN_WC_H */