diff options
Diffstat (limited to 'subversion/include')
-rw-r--r-- | subversion/include/svn_client.h | 8 | ||||
-rw-r--r-- | subversion/include/svn_config.h | 17 | ||||
-rw-r--r-- | subversion/include/svn_fs.h | 72 | ||||
-rw-r--r-- | subversion/include/svn_version.h | 6 |
4 files changed, 75 insertions, 28 deletions
diff --git a/subversion/include/svn_client.h b/subversion/include/svn_client.h index 6719e3ea03fd..cb0f49d98d49 100644 --- a/subversion/include/svn_client.h +++ b/subversion/include/svn_client.h @@ -4098,16 +4098,16 @@ svn_client_mergeinfo_log_eligible(const char *path_or_url, * @{ */ -/** Recursively vacuum a working copy directory @a dir, removing unnecessary - * data. +/** Recursively vacuum a working copy directory @a dir_abspath, + * removing unnecessary data. * * If @a include_externals is @c TRUE, recurse into externals and vacuum them * as well. * * If @a remove_unversioned_items is @c TRUE, remove unversioned items - * in @a dir after successful working copy cleanup. + * in @a dir_abspath after successful working copy cleanup. * If @a remove_ignored_items is @c TRUE, remove ignored unversioned items - * in @a dir after successful working copy cleanup. + * in @a dir_abspath after successful working copy cleanup. * * If @a fix_recorded_timestamps is @c TRUE, this function fixes recorded * timestamps for unmodified files in the working copy, reducing comparision diff --git a/subversion/include/svn_config.h b/subversion/include/svn_config.h index b4dc84838d5e..5ad3b0bae234 100644 --- a/subversion/include/svn_config.h +++ b/subversion/include/svn_config.h @@ -76,18 +76,27 @@ typedef struct svn_config_t svn_config_t; #define SVN_CONFIG_OPTION_HTTP_PROXY_EXCEPTIONS "http-proxy-exceptions" #define SVN_CONFIG_OPTION_HTTP_TIMEOUT "http-timeout" #define SVN_CONFIG_OPTION_HTTP_COMPRESSION "http-compression" +/** @deprecated Not used since 1.8. */ #define SVN_CONFIG_OPTION_NEON_DEBUG_MASK "neon-debug-mask" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_HTTP_AUTH_TYPES "http-auth-types" #define SVN_CONFIG_OPTION_SSL_AUTHORITY_FILES "ssl-authority-files" #define SVN_CONFIG_OPTION_SSL_TRUST_DEFAULT_CA "ssl-trust-default-ca" #define SVN_CONFIG_OPTION_SSL_CLIENT_CERT_FILE "ssl-client-cert-file" #define SVN_CONFIG_OPTION_SSL_CLIENT_CERT_PASSWORD "ssl-client-cert-password" +/** @deprecated Not used since 1.8. + * @since New in 1.5. */ #define SVN_CONFIG_OPTION_SSL_PKCS11_PROVIDER "ssl-pkcs11-provider" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_HTTP_LIBRARY "http-library" +/** @since New in 1.1. */ #define SVN_CONFIG_OPTION_STORE_PASSWORDS "store-passwords" +/** @since New in 1.6. */ #define SVN_CONFIG_OPTION_STORE_PLAINTEXT_PASSWORDS "store-plaintext-passwords" #define SVN_CONFIG_OPTION_STORE_AUTH_CREDS "store-auth-creds" +/** @since New in 1.6. */ #define SVN_CONFIG_OPTION_STORE_SSL_CLIENT_CERT_PP "store-ssl-client-cert-pp" +/** @since New in 1.6. */ #define SVN_CONFIG_OPTION_STORE_SSL_CLIENT_CERT_PP_PLAINTEXT \ "store-ssl-client-cert-pp-plaintext" #define SVN_CONFIG_OPTION_USERNAME "username" @@ -123,6 +132,7 @@ typedef struct svn_config_t svn_config_t; #define SVN_CONFIG_OPTION_DIFF_EXTENSIONS "diff-extensions" #define SVN_CONFIG_OPTION_DIFF3_CMD "diff3-cmd" #define SVN_CONFIG_OPTION_DIFF3_HAS_PROGRAM_ARG "diff3-has-program-arg" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_MERGE_TOOL_CMD "merge-tool-cmd" #define SVN_CONFIG_SECTION_MISCELLANY "miscellany" #define SVN_CONFIG_OPTION_GLOBAL_IGNORES "global-ignores" @@ -133,8 +143,11 @@ typedef struct svn_config_t svn_config_t; #define SVN_CONFIG_OPTION_ENABLE_AUTO_PROPS "enable-auto-props" /** @since New in 1.9. */ #define SVN_CONFIG_OPTION_ENABLE_MAGIC_FILE "enable-magic-file" +/** @since New in 1.2. */ #define SVN_CONFIG_OPTION_NO_UNLOCK "no-unlock" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_MIMETYPES_FILE "mime-types-file" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_PRESERVED_CF_EXTS "preserved-conflict-file-exts" /** @since New in 1.7. */ #define SVN_CONFIG_OPTION_INTERACTIVE_CONFLICTS "interactive-conflicts" @@ -172,9 +185,13 @@ typedef struct svn_config_t svn_config_t; #define SVN_CONFIG_OPTION_FORCE_USERNAME_CASE "force-username-case" /** @since New in 1.8. */ #define SVN_CONFIG_OPTION_HOOKS_ENV "hooks-env" +/** @since New in 1.5. */ #define SVN_CONFIG_SECTION_SASL "sasl" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_USE_SASL "use-sasl" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_MIN_SSF "min-encryption" +/** @since New in 1.5. */ #define SVN_CONFIG_OPTION_MAX_SSF "max-encryption" /* For repository password database */ diff --git a/subversion/include/svn_fs.h b/subversion/include/svn_fs.h index 7773ac667f9a..e34146d16dff 100644 --- a/subversion/include/svn_fs.h +++ b/subversion/include/svn_fs.h @@ -1759,12 +1759,15 @@ svn_fs_node_relation(svn_fs_node_relation_t *relation, const char *path_b, apr_pool_t *scratch_pool); -/** Set @a *revision to the revision in which @a path under @a root was - * created. Use @a pool for any temporary allocations. @a *revision will +/** Set @a *revision to the revision in which the node-revision identified + * by @a path under @a root was created; that is, to the revision in which + * @a path under @a root was last modified. @a *revision will * be set to #SVN_INVALID_REVNUM for uncommitted nodes (i.e. modified nodes * under a transaction root). Note that the root of an unmodified transaction * is not itself considered to be modified; in that case, return the revision * upon which the transaction was based. + * + * Use @a pool for any temporary allocations. */ svn_error_t * svn_fs_node_created_rev(svn_revnum_t *revision, @@ -1861,6 +1864,15 @@ svn_fs_change_node_prop(svn_fs_root_t *root, * both roots must be in the same filesystem. * Do any necessary temporary allocation in @a scratch_pool. * + * @note For the purposes of preserving accurate history, certain bits of + * code (such as the repository dump code) need to care about the distinction + * between situations when the properties are "different" and "have changed + * across two points in history". We have a pair of functions that can + * answer both of these questions, svn_fs_props_different() and + * svn_fs_props_changed(). See issue 4598 for more details. + * + * @see svn_fs_props_changed + * * @since New in 1.9. */ svn_error_t * @@ -1872,9 +1884,7 @@ svn_fs_props_different(svn_boolean_t *different_p, apr_pool_t *scratch_pool); -/** Determine if the properties of two path/root combinations are different. - * In contrast to #svn_fs_props_different, we only perform a quick test and - * allow for false positives. +/** Determine if the properties of two path/root combinations have changed. * * Set @a *changed_p to #TRUE if the properties at @a path1 under @a root1 * differ from those at @a path2 under @a root2, or set it to #FALSE if they @@ -1882,15 +1892,19 @@ svn_fs_props_different(svn_boolean_t *different_p, * both roots must be in the same filesystem. * Do any necessary temporary allocation in @a pool. * - * @note The behavior is implementation dependent in that the false - * positives reported may differ from release to release and backend to - * backend. There is also no guarantee that there will be false positives - * at all. + * @note For the purposes of preserving accurate history, certain bits of + * code (such as the repository dump code) need to care about the distinction + * between situations when the properties are "different" and "have changed + * across two points in history". We have a pair of functions that can + * answer both of these questions, svn_fs_props_different() and + * svn_fs_props_changed(). See issue 4598 for more details. + * + * @note This function can currently return false negatives for FSFS: + * If @a root1 and @a root2 were both transaction roots and the proplists + * of both paths had been changed in their respective transactions, + * @a changed_p would be set to #FALSE. * - * @note Prior to Subversion 1.9, this function would return false negatives - * for FSFS: If @a root1 and @a root2 were both transaction roots - * and the proplists of both paths had been changed in their respective - * transactions, @a changed_p would be set to #FALSE. + * @see svn_fs_props_different */ svn_error_t * svn_fs_props_changed(svn_boolean_t *changed_p, @@ -2410,7 +2424,7 @@ svn_fs_apply_text(svn_stream_t **contents_p, apr_pool_t *pool); -/** Check if the contents of two root/path combos have changed. +/** Check if the contents of two root/path combos are different. * * Set @a *different_p to #TRUE if the file contents at @a path1 under * @a root1 differ from those at @a path2 under @a root2, or set it to @@ -2418,6 +2432,16 @@ svn_fs_apply_text(svn_stream_t **contents_p, * respective roots, and both roots must be in the same filesystem. * Do any necessary temporary allocation in @a scratch_pool. * + * @note For the purposes of preserving accurate history, certain bits of + * code (such as the repository dump code) need to care about the distinction + * between situations when two files have "different" content and when the + * contents of a given file "have changed" across two points in its history. + * We have a pair of functions that can answer both of these questions, + * svn_fs_contents_different() and svn_fs_contents_changed(). See issue + * 4598 for more details. + * + * @see svn_fs_contents_changed + * * @since New in 1.9. */ svn_error_t * @@ -2428,9 +2452,7 @@ svn_fs_contents_different(svn_boolean_t *different_p, const char *path2, apr_pool_t *scratch_pool); -/** Check if the contents of two root/path combos have changed. In - * contrast to #svn_fs_contents_different, we only perform a quick test - * and allow for false positives. +/** Check if the contents of two root/path combos have changed. * * Set @a *changed_p to #TRUE if the file contents at @a path1 under * @a root1 differ from those at @a path2 under @a root2, or set it to @@ -2438,10 +2460,18 @@ svn_fs_contents_different(svn_boolean_t *different_p, * respective roots, and both roots must be in the same filesystem. * Do any necessary temporary allocation in @a pool. * - * @note The behavior is implementation dependent in that the false - * positives reported may differ from release to release and backend to - * backend. There is also no guarantee that there will be false positives - * at all. + * @note svn_fs_contents_changed() was not designed to be used to detect + * when two files have different content, but really to detect when the + * contents of a given file have changed across two points in its history. + * For the purposes of preserving accurate history, certain bits of code + * (such as the repository dump code) need to care about this distinction. + * For example, it's not an error from the FS API point of view to call + * svn_fs_apply_textdelta() and explicitly set a file's contents to exactly + * what they were before the edit was made. We have a pair of functions + * that can answer both of these questions, svn_fs_contents_changed() and + * svn_fs_contents_different(). See issue 4598 for more details. + * + * @see svn_fs_contents_different */ svn_error_t * svn_fs_contents_changed(svn_boolean_t *changed_p, diff --git a/subversion/include/svn_version.h b/subversion/include/svn_version.h index 254bfc6dc060..92ce825ced8c 100644 --- a/subversion/include/svn_version.h +++ b/subversion/include/svn_version.h @@ -70,7 +70,7 @@ extern "C" { * * @since New in 1.1. */ -#define SVN_VER_PATCH 2 +#define SVN_VER_PATCH 4 /** @deprecated Provided for backward compatibility with the 1.0 API. */ @@ -93,7 +93,7 @@ extern "C" { * * Always change this at the same time as SVN_VER_NUMTAG. */ -#define SVN_VER_TAG " (r1703836)" +#define SVN_VER_TAG " (r1740329)" /** Number tag: a string describing the version. @@ -117,7 +117,7 @@ extern "C" { * file version. Its value remains 0 in the repository except in release * tags where it is the revision from which the tag was created. */ -#define SVN_VER_REVISION 1703836 +#define SVN_VER_REVISION 1740329 /* Version strings composed from the above definitions. */ |