Subversion
Data Structures | Defines | Typedefs | Functions
svn_version.h File Reference

Version information. More...

#include <apr_general.h>
#include "svn_types.h"

Go to the source code of this file.

Data Structures

struct  svn_version_t
 Version information. More...
struct  svn_version_checklist_t
 An entry in the compatibility checklist. More...

Defines

#define SVN_VER_MAJOR   1
 Major version number.
#define SVN_VER_MINOR   7
 Minor version number.
#define SVN_VER_PATCH   3
 Patch number.
#define SVN_VER_MICRO   SVN_VER_PATCH
#define SVN_VER_LIBRARY   SVN_VER_MAJOR
#define SVN_VER_TAG   " (under development)"
 Version tag: a string describing the version.
#define SVN_VER_NUMTAG   "-dev"
 Number tag: a string describing the version.
#define SVN_VER_REVISION   0
 Revision number: The repository revision number of this release.
#define SVN_VER_NUM
 Version number.
#define SVN_VER_NUMBER   SVN_VER_NUM SVN_VER_NUMTAG
 Version number with tag (contains no whitespace)
#define SVN_VERSION   SVN_VER_NUMBER SVN_VER_TAG
 Complete version string.
#define SVN_VERSION_DEFINE(name)
 Define a static svn_version_t object.
#define SVN_VERSION_BODY
 Generate the implementation of a version query function.

Typedefs

typedef struct
svn_version_checklist_t 
svn_version_checklist_t
 An entry in the compatibility checklist.
typedef const svn_version_t *(* svn_version_func_t )(void)
 Type of function returning library version.

Functions

svn_boolean_t svn_ver_compatible (const svn_version_t *my_version, const svn_version_t *lib_version)
 Check library version compatibility.
svn_boolean_t svn_ver_equal (const svn_version_t *my_version, const svn_version_t *lib_version)
 Check if my_version and lib_version encode the same version number.
svn_error_tsvn_ver_check_list (const svn_version_t *my_version, const svn_version_checklist_t *checklist)
 Perform a series of version compatibility checks.
const svn_version_tsvn_subr_version (void)
 Get libsvn_subr version information.

Detailed Description

Version information.

Definition in file svn_version.h.


Define Documentation

#define SVN_VER_LIBRARY   SVN_VER_MAJOR
Deprecated:
Provided for backward compatibility with the 1.0 API.

Definition at line 81 of file svn_version.h.

#define SVN_VER_MAJOR   1

Major version number.

Modify when incompatible changes are made to published interfaces.

Definition at line 58 of file svn_version.h.

#define SVN_VER_MICRO   SVN_VER_PATCH
Deprecated:
Provided for backward compatibility with the 1.0 API.

Definition at line 78 of file svn_version.h.

#define SVN_VER_MINOR   7

Minor version number.

Modify when new functionality is added or new interfaces are defined, but all changes are backward compatible.

Definition at line 65 of file svn_version.h.

#define SVN_VER_NUM
Value:
APR_STRINGIFY(SVN_VER_MAJOR) \
                           "." APR_STRINGIFY(SVN_VER_MINOR) \
                           "." APR_STRINGIFY(SVN_VER_PATCH)

Version number.

Definition at line 129 of file svn_version.h.

#define SVN_VER_NUMTAG   "-dev"

Number tag: a string describing the version.

This tag is used to generate a version number string to identify the client and server in HTTP requests, for example. It must not contain any spaces. This value remains "-dev" in the repository.

When rolling a tarball, we automatically replace this text with "" for final releases; in prereleases, it becomes "-alpha1, "-beta1", etc., as appropriate.

Always change this at the same time as SVN_VER_TAG.

Definition at line 112 of file svn_version.h.

#define SVN_VER_PATCH   3

Patch number.

Modify for every released patch.

Since:
New in 1.1.

Definition at line 74 of file svn_version.h.

#define SVN_VER_REVISION   0

Revision number: The repository revision number of this release.

This constant is used to generate the build number part of the Windows file version. Its value remains 0 in the repository.

When rolling a tarball, we automatically replace it with what we guess to be the correct revision number.

Definition at line 123 of file svn_version.h.

#define SVN_VER_TAG   " (under development)"

Version tag: a string describing the version.

This tag remains " (dev build)" in the repository so that we can always see from "svn --version" that the software has been built from the repository rather than a "blessed" distribution.

When rolling a tarball, we automatically replace this text with " (r1234)" (where 1234 is the last revision on the branch prior to the release) for final releases; in prereleases, it becomes " (Alpha 1)", " (Beta 1)", etc., as appropriate.

Always change this at the same time as SVN_VER_NUMTAG.

Definition at line 97 of file svn_version.h.

#define SVN_VERSION_BODY
Value:
SVN_VERSION_DEFINE(versioninfo);              \
  return &versioninfo

Generate the implementation of a version query function.

Since:
New in 1.1.

Definition at line 182 of file svn_version.h.

#define SVN_VERSION_DEFINE (   name)
Value:
static const svn_version_t name = \
    { \
      SVN_VER_MAJOR, \
      SVN_VER_MINOR, \
      SVN_VER_PATCH, \
      SVN_VER_NUMTAG \
    } \

Define a static svn_version_t object.

Since:
New in 1.1.

Definition at line 168 of file svn_version.h.


Typedef Documentation

An entry in the compatibility checklist.

See also:
svn_ver_check_list()
Since:
New in 1.1.
typedef const svn_version_t*(* svn_version_func_t)(void)

Type of function returning library version.

Since:
New in 1.6.

Definition at line 246 of file svn_version.h.


Function Documentation

const svn_version_t* svn_subr_version ( void  )

Get libsvn_subr version information.

Since:
New in 1.1.
svn_error_t* svn_ver_check_list ( const svn_version_t my_version,
const svn_version_checklist_t checklist 
)

Perform a series of version compatibility checks.

Checks if my_version is compatible with each entry in checklist. checklist must end with an entry whose label is NULL.

See also:
svn_ver_compatible()
Since:
New in 1.1.
svn_boolean_t svn_ver_compatible ( const svn_version_t my_version,
const svn_version_t lib_version 
)

Check library version compatibility.

Return TRUE if the client's version, given in my_version, is compatible with the library version, provided in lib_version.

This function checks for version compatibility as per our guarantees, but requires an exact match when linking to an unreleased library. A development client is always compatible with a previous released library.

Since:
New in 1.1.
svn_boolean_t svn_ver_equal ( const svn_version_t my_version,
const svn_version_t lib_version 
)

Check if my_version and lib_version encode the same version number.

Since:
New in 1.2.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines