This commit solves on problem exposed by the new test case in r31764. We cannot report excluded branch to server when depth_is_sticky, otherwise the server will not send contents of that path and we will be in trouble. Moreover, we have to report delete_path() on it(when !report_everything), to ensure that the server will send us full content.
* subversion/include/svn_wc.h, subversion/libsvn_wc/adm_crawler.c (svn_wc_crawl_revision4): New API, with new parameter honor_depth_exclude. (svn_wc_crawl_revision3): Deprecated.
* subversion/libsvn_client/switch.c (svn_client__switch_internal): * subversion/libsvn_client/status.c (svn_client_status3): * subversion/libsvn_client/diff.c (diff_repos_wc): * subversion/libsvn_client/update.c (svn_client__update_internal): Adjust all callers of the deprecated API.