[][src]Module libpulse_sys::version

Version constants and functions.

This module contains functions and constants relating to PulseAudio (PA) client API version compatibility.

Dynamic compatibility

As discussed in the project COMPATIBILITY.md file, support is offered for multiple versions of the PA client library, with changes made in newer versions being guarded with Cargo feature flags.

Note that the minimum supported version of PA is v4.0.

Dynamic constants

The version constants defined here mostly relate to those provided in the PA C headers. They are typically only updated following a new major release of PA. They are also dynamic, depending upon the level of compatibility support selected at compile time via the available Cargo feature flags.

Note that there is not a one-to-one mapping of major PA version to compatibility feature. A new such feature is only introduced where actual changes in the PA client API require one because they introduce changes such as the addition of new functions.

It is not obvious how the constants relate to version compatibility levels without reading the code, so this needs explaining. Simply put, version numbers are updated typically only on release of a new major version of PA, and update the existing version number associated with the current latest compatibility level selector when there are no changes requiring a new compatibility feature.

Thus, for instance, PA versions 8 and 12 introduced additions to the API and have corresponding compatibility features to control the inclusion of those additions on top of the minimum level of support offered. If you have v8 compatibility enabled but not v12, then the version number indicated will be v11.

Enums

Compatibility

PulseAudio version compatibility.

Constants

PA_API_VERSION

The current API version.

PA_PROTOCOL_VERSION

Protocol version of targetted version.

TARGET_VERSION

Version number of targetted version.

TARGET_VERSION_STRING

Version string of targetted version.

Functions

get_compatibility

Get selected compatibility level.

pa_check_version
pa_get_library_version