[][src]Module libpulse_binding::version

Version constants and functions.

The constants defined here follow those given in the sys crate and thus the C headers.

  • They are typically updated only following a new major release of PA.
  • They are not typically updated following a new minor release of PA. i.e. we may declare version 12.0 here, but remain compatible with all 12.x, so long as PA itself continues to adhere to semantic versioning (i.e. no breaking changes in minor releases).
  • They are not the minimum compatible PA version. We have feature flags for providing backwards compatibility with a limited number of past major versions.

Currently:

  • We primarily target PA version 12.x
  • We have backwards compatibility with PA version 11.x (and it is believed 10.x) if the pa_encoding_from_string feature flag is disabled.

When feature flags are used for backwards compatibility, the versions defined here (as of version 2.3) are adjusted to return the newest compatible major version.

The get_library_version function always obtains at runtime the version of the actual PA library in use.

Enums

Compatibility

PA version compatibility selection.

Constants

API_VERSION

The current API version, from the PA C header. Note, this seems to be separate from the PA version number, where is was 12 for the v0.9.11 release, and has not been changed since (c95d0d7dcbca0c531b972ece1004caad95c92936).

BINDING_TARGET_VERSIONDeprecated
MAJORDeprecated
MICRODeprecated
MINORDeprecated
PROTOCOL_VERSION

The current protocol version.

TARGET_VERSION

The major and minor components of the newest version of the PulseAudio client library this binding is known to be compatible with.

TARGET_VERSION_STRING

The newest version of the PulseAudio client library this binding is known to be compatible with.

Functions

check_version

Evaluates to true if the PulseAudio library version targeted by this version of the PA binding library is equal or newer than the version specified.

get_compatibility

Gets an indication of PA version compatibility support, depending upon feature flags used.

get_headers_versionDeprecated

Gets BINDING_TARGET_VERSION

get_library_version

Gets the version of the library actually in use at runtime.