[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

API review - mod_*.h, svn_auth ... svn_hash.h

From: Julian Foad <julian.foad_at_wandisco.com>
Date: Thu, 09 Jun 2011 11:22:23 +0100

This time I'm going to start by simply reporting everything that is new
and changed in these headers, so that others can see the changes more
easily. Only public symbols. I'll throw in my own observations along
the way.

HEADERS REVIEWED

  mod_authz_svn.h - no change
  mod_dav_svn.h - no significant change
  svn_auth.h
  svn_base64.h - no change
  svn_cache_config.h - new header
  svn_checksum.h
  svn_client.h - not detailed here; main points in separate email
  svn_cmdline.h - no change
  svn_compat.h - no change
  svn_config.h
  svn_ctype.h - no change
  svn_dav.h
  svn_delta.h
  svn_diff.h
  svn_dirent_uri.h
  svn_dso.h - no change
  svn_error.h
  svn_error_codes.h
  svn_fs.h
  svn_hash.h

NEW AND CHANGED SYMBOLS

svn_auth.h
  svn_auth_open() - gets a 'const' on its 'providers' array input.

svn_cache_config.h
  # Why is the cache config header separate from the cache header?
  svn_cache_config_t
  svn_get_cache_config()
  svn_set_cache_config()
    # Rename these two to svn_cache_config_*().

svn_checksum.h
  svn_checksum_kind_t - gets an enum tag name to match typedef.
  svn_checksum_to_cstring() - new behaviour for null input.
  svn_checksum_serialize()
  svn_checksum_deserialize()
  svn_checksum_mismatch_err()
    # Make this private, as it's not general-purpose enough?

svn_config.h
  SVN_CONFIG_OPTION_DIFF_EXTENSIONS "diff-extensions"
  SVN_CONFIG_OPTION_FORCE_USERNAME_CASE "force-username-case"
    # These two need @since.
  svn_config_create()
  svn_config_read2()

svn_dav.h
  SVN_SKEL_MIME_TYPE "application/vnd.svn-skel"
    # Need @since.
  SVN_DAV_..._HEADER "SVN-..."
    # 12 new constants, mostly for HTTP protocol v2.
    # Need @since.

svn_delta.h
  SVN_NO_COMPRESSION_LEVEL 0
  SVN_MAX_COMPRESSION_LEVEL 9
  SVN_DEFAULT_COMPRESSION_LEVEL 5
    # Use a library prefix SVN_DELTA for these three.
    # Use a common prefix *_COMPRESSION_LEVEL for these three.
  svn_txdelta_to_svndiff3()
  svn_delta_path_driver() - gets a 'const' on its paths array input.

svn_diff.h
  svn_diff_fns2_t
    # Needs @since.
  svn_diff_diff_2()
  svn_diff_diff3_2()
  svn_diff_diff4_2()
  svn_diff_mem_string_output_unified2()
  svn_diff_operation_kind_t
  svn_diff_hunk_t
  svn_diff_hunk_readline_diff_text()
  svn_diff_hunk_readline_original_text()
  svn_diff_hunk_readline_modified_text()
  svn_diff_hunk_reset_diff_text()
  svn_diff_hunk_reset_original_text()
  svn_diff_hunk_reset_modified_text()
  svn_diff_hunk_get_original_start()
  svn_diff_hunk_get_original_length()
  svn_diff_hunk_get_modified_start()
  svn_diff_hunk_get_modified_length()
  svn_diff_hunk_get_leading_context()
  svn_diff_hunk_get_trailing_context()
  svn_prop_patch_t
  svn_patch_t
  svn_patch_file_t
  svn_diff_open_patch_file()
  svn_diff_parse_next_patch()
  svn_diff_close_patch_file()

svn_dirent_uri.h
  # Rename 'dirent' to something like 'ospath'? Too late, I guess.
  svn_relpath_internal_style()
  svn_relpath_local_style()
    # These two are inappropriate: only dirents have a 'local' style.
  svn_relpath_join()
  svn_dirent_basename()
  svn_dirent_split()
  svn_relpath_split()
  svn_relpath_basename()
  svn_relpath_dirname()
  svn_uri_split()
  svn_uri_basename()
  svn_uri_dirname()
  svn_uri_is_root()
    # Document what "is root" means: "can't split into dir/basename"?
  svn_relpath_canonicalize()
  svn_uri_canonicalize()
  svn_relpath_is_canonical()
  svn_uri_is_canonical()
  svn_relpath_get_longest_ancestor()
  svn_uri_get_longest_ancestor()
  svn_uri_is_child()
  svn_relpath_is_child()
  svn_relpath_is_ancestor()
  svn_uri_is_ancestor()
  svn_dirent_skip_ancestor()
    # See ### comment.
  svn_relpath_skip_ancestor()
    # See ### comment.
  svn_uri_skip_ancestor()
  svn_dirent_condense_targets()
  svn_uri_condense_targets()
  svn_dirent_is_under_root()
  svn_uri_get_dirent_from_file_url()
  svn_uri_get_file_url_from_dirent()

svn_error.h
  svn_error_find_cause()
  svn_error_return()
    # Needs @since.
  svn_error_purge_tracing()
  SVN_ERROR_IN_CATEGORY()

svn_error_codes.h
  SVN_ERR_BAD_TOKEN
  SVN_ERR_BAD_CHANGELIST_NAME
  SVN_ERR_IO_PIPE_WRITE_ERROR
  SVN_ERR_STREAM_SEEK_NOT_SUPPORTED
  SVN_ERR_WC_NOT_WORKING_COPY - new name for SVN_ERR_WC_NOT_DIRECTORY
  SVN_ERR_WC_CHANGELIST_MOVE - now deprecated
    # Should say "for compatibility with 1.6 API".
  SVN_ERR_WC_DB_ERROR
  SVN_ERR_WC_MISSING
  SVN_ERR_WC_NOT_SYMLINK
  SVN_ERR_WC_PATH_UNEXPECTED_STATUS
  SVN_ERR_WC_UPGRADE_REQUIRED
  SVN_ERR_WC_CLEANUP_REQUIRED
  SVN_ERR_WC_INVALID_OPERATION_DEPTH
  SVN_ERR_FS_PROP_BASEVALUE_MISMATCH
  SVN_ERR_RA_SESSION_URL_MISMATCH
  SVN_ERR_RA_DAV_CONN_TIMEOUT
  SVN_ERR_RA_SVN_EDIT_ABORTED
  SVN_ERR_RA_SERF_GSSAPI_INITIALISATION_FAILED
  SVN_ERR_RA_SERF_WRAPPED_ERROR
  SVN_ERR_CLIENT_PATCH_BAD_STRIP_COUNT
  SVN_ERR_CLIENT_CYCLE_DETECTED
  SVN_ERR_CLIENT_MERGE_UPDATE_REQUIRED
  SVN_ERR_CLIENT_INVALID_MERGEINFO_NO_MERGETRACKING
  SVN_ERR_SQLITE_BUSY
  SVN_ERR_SQLITE_RESETTING_FOR_ROLLBACK
  SVN_ERR_CL_ERROR_PROCESSING_EXTERNALS
  SVN_ERR_ASSERTION_ONLY_TRACING_LINKS

svn_fs.h
  SVN_FS_CONFIG_FSFS_CACHE_DELTAS "fsfs-cache-deltas"
  SVN_FS_CONFIG_FSFS_CACHE_FULLTEXTS "fsfs-cache-fulltexts"
  SVN_FS_CONFIG_PRE_1_7_COMPATIBLE
  svn_fs_change_txn_props() - gets a 'const' on its 'props' array input.
  svn_fs_path_change_kind_t - gets an enum tag name to match typedef.
  svn_fs_get_mergeinfo2()
  svn_fs_validate_mergeinfo()
  svn_fs_change_rev_prop2()
  svn_fs_get_locks2()
  svn_fs_pack_notify_action_t - gets an enum tag name to match typedef.
  svn_fs_pack_notify_start_revprop
  svn_fs_pack_notify_end_revprop

svn_hash.h
  svn_hash_get_cstring()
  svn_hash_get_bool()

- Julian
Received on 2011-06-09 12:23:02 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.