PackageTrack
Sign in Get early access

libpulse-sys

FFI bindings for the PulseAudio libpulse system library.

1.23.0 5.9M downloads/mo #4183 most downloaded on crates.io jnqnfe/pulse-binding-rust

What this package is like to depend on

Last release 1 years ago

18 Apr 2025

Release timing varies

gaps range from 2 weeks to 1.6 years

Nearly every release is documented

notes for 43 of 47 stable releases

1 version withdrawn

withdrawn after publishing

11 years old

48 releases · first in 2016

0 releases in the last 12 months

see the full history below

Release timeline

48 releases · Jan 2016 to Apr 2025
2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 48
  1. 1.23.0 18 Apr 2025
    Release notes
    • Dropped long-deprecated pa_check_version() function.
    Open source →
  2. 1.22.0 03 Mar 2025
    Release notes
    • Bumped MSRV from 1.56 to 1.63 per libc dependency.
    • Fixed warnings by bumping num-derive dependency.
    • Updated with PA version 17 changes (just an increase to max. sample rate).
    • Updated required dependencies:
      • num-derive from 0.3 to 0.4.
    Open source →
  3. 1.21.0 18 Jul 2023
    Release notes
    • Fixed warning from clashing namespace exports.
    • Fixed docs.rs build failure.
    • Dropped PA v4 support.
    Open source →
  4. 1.20.1 09 Jan 2023
    Release notes
    • Fixed broken build status badge in readme.
    Open source →
  5. 1.20.0 09 Jan 2023
    Release notes
    • Bumped Rust edition to 2021.
    • Bumped MSRV from 1.46 to 1.56.
    • Added rust-version (MSRV) attribute to cargo.toml file.
    Open source →
  6. 1.19.3 07 Dec 2021
    Release notes
    • Fixed handling of pkg-config failure handling due to change in pkg-config crate. Thanks to @fredszaq on github for the initial patch.
    Open source →
  7. 1.19.2 29 Aug 2021
    Release notes
    • Minor formatting tweaks.
    • Bumped MSRV from 1.41 to 1.46.
    • Marked pa_check_version and pa_clamp_volume as const fn.
    Open source →
  8. 1.19.1 29 Jul 2021
    Release notes
    • Fixed feature guard mistake in version mod causing docs.rs build to fail.
    Open source →
  9. 1.19.0 29 Jul 2021 withdrawn
    Release notes
    • Added PA v15 support (API additions).
    Open source →
  10. 1.18.0 30 Jan 2021
    Release notes
    • Now using intra-doc-linking introduced in Rust 1.48. The MSRV remains unchanged at 1.41; this is too great a simplification to maintaining documentation to not implement immediately; the only negative is that links will be broken in locally generated documentation when built with an older Rust compiler than version 1.48.
    Open source →
  11. 1.17.0 22 Dec 2020
    Release notes
    • Tweaked version constants.
    • Deprecated pa_check_version().
    Open source →
  12. 1.16.2 15 Dec 2020
    Release notes
    • Nothing notable.
    Open source →
  13. 1.16.1 15 Dec 2020
    Release notes
    • Fixed mistake made trying to conditionally enable #[cfg(doc)] for docs.rs.
    Open source →
  14. 1.16.0 15 Dec 2020
    Release notes
    • Made some changes to cargo features:
      • Removed the now obsolete dox cargo feature.
      • Removed the pa_latest and pa_latest_common cargo features.
      • Changed the default version feature level to pa_v8.
    • MSRV bumped from 1.40 to 1.41.
    • Changed PA_CHANNELS_MAX from usize to u8.
    • Made use of #[cfg(doc)] to always include stuff behind PA version feature guards in generated documentation. (Required bump of minimum supported Rust version from 1.40 to 1.41).
    • Added support for feature tagging in documentation (requires nightly Rust version, so only enabled if a certain config flag is used, as for the docs.rs copy).
    • Marked version::Compatibility as #[non_exhaustive].
    Open source →
  15. 1.15.3 11 Dec 2020
    Release notes
    • Fixed incorrect PA_SOURCE_DYNAMIC_LATENCY flag value. Was mistakenly 0x42 instead of 0x40 (thus combined with PA_SOURCE_LATENCY).
    Open source →
  16. 1.15.2 08 Dec 2020
    Release notes
    • Added missing Default implementation for channelmap::pa_channel_map_def_t.
    • Added documentation for pa_check_version(). If you use it, please double check that it actually does what you think it does. It does not involve talking to the client library.
    Open source →
  17. 1.15.1 25 Nov 2020
    Release notes
    • Fixed deprecated license attribute syntax.
    Open source →
  18. 1.15.0 25 Nov 2020
    Release notes
    • Marked pa_encoding_t as #[non_exhaustive].
    • Added derive of FromPrimitive and ToPrimitive from the num-derive crate on enums.
    • Updated required dependencies:
      • num-traits 0.2 now required.
      • num-derive 0.3 now required.
    Open source →
  19. 1.14.1 25 Nov 2020
    Release notes
    • Fixed missing rename of pa_error_code_t::Io to pa_error_code_t::IO to match change in binding.
    Open source →
  20. 1.14.0 24 Nov 2020
    Release notes
    • Added PA v14 support (API additions).
    Open source →
  21. 1.13.3 21 Nov 2020
    Release notes
    • Trivial documentation fixes.
    Open source →
  22. 1.13.2 09 Sep 2020
    Release notes
    • Bumped pa_latest_common feature to target PA v13.
    Open source →
  23. 1.13.1 01 Jun 2020
    Release notes
    • Fixed output of build script warning when pkg-config is missing (thanks to @cole-h on github!).
    Open source →
  24. 1.13.0 18 Apr 2020
    Release notes
    • Removed deprecated Cargo features.
    Open source →
  25. 1.12.1 29 Dec 2019
    Release notes
    • Improved the non-pkg-config fallback for lib linking.
    Open source →
  26. 1.12.0 29 Dec 2019
    Release notes
    • Now using pkg-config in build script for more than just Linux.
    Open source →
  27. 1.11.1 27 Dec 2019
    Release notes
    • Fixed an issue compiling on Windows (needed to reference a different pollfd definition). Thanks to @allquixotic on github for reporting.
    Open source →
  28. 1.11.0 17 Sep 2019
    Release notes
    • Changed the license model from LGPL to dual MIT and Apache-2.0. See [here][issue26] for details.
    Open source →
  29. 1.10.0 15 Sep 2019
    Release notes
    • Implemented PA v13 enhancements.
    • Added PA v13 compatibility control feature.
    Open source →
  30. 1.9.1 19 Aug 2019
    Release notes
    • Fixed broken doc.rs documentation generation.
    Open source →
  31. 1.9.0 19 Aug 2019
    Release notes
    • Extended support to even older versions of PA, specifically up to and including v4.
    • Improved the build script.
    • Revised version::Compatibility variants to make more sense.
    • Simplified feature flags, old ones left as temorary aliases, to be removed later.
    • Added a dox feature flag, for use with cargo doc. It enables the very latest PA version compatibility, while bypassing the pkg-config check, thus is useful for generating documentation that includes information on features from versions of PA that may be newer than the version you have installed.
    • Improved version documentation further.
    Open source →
  32. 1.8.1 17 Aug 2019
    Release notes
    • Version: Improved mod documentation.
    Open source →
  33. 1.8.0 15 Aug 2019
    Release notes
    • Updated use conventions to that of Rust 1.30/1.31.
    • Specified edition in toml file.
    • Made the following functions const:
      • version::get_compatibility().
      • channelmap::pa_channel_position_mask().
      • volume::pa_volume_is_valid().
      • context::subscribe::pa_subscription_match_flags().
    • Version: purged deprecated items.

    Note: version 1.7 skipped, used only for libpulse-mainloop-glib-sys crate changes.

    Open source →
  34. 1.6.0 12 Aug 2019
    Release notes
    • Replaced use of empty enums for opaque types with a struct based alternative. According to the Rust nomicon ([here][nomicon-ros]) the use of the empty enum trick is apparently undefined behaviour.
    • Added a new latest_pa_common_compatibility feature flag, used by default now instead of latest_pa_compatibility.
    Open source →
  35. 1.5.0 22 Dec 2018
    Release notes
    • Added the new latest_pa_compatibility and pa_v12_compatibility feature flags, and deprecated pa_encoding_from_string in favour of pa_v12_compatibility.
    Open source →
  36. 1.4.0 04 Nov 2018
    Release notes
    • Switched to using package-config for linking (though retaining the direct linking as a fallback for those without the necessary *.pc files installed). Thanks to @JohnAZoidberg on github for the original patch.
    • Improved the version mod:
      • Constants now vary depending upon backwards compatibility flags, correctly indicating the newest supported PA version.
      • Added the Compatibility enum and get_compatibility() function.
      • Renamed LINK_TARGET_VERSION to TARGET_VERSION_STRING.
      • Introduced TARGET_VERSION and deprecated PA_MAJOR, PA_MINOR and PA_MICRO.
      • Deprecated get_headers_version().
    • Clarified PA version compatibility in version mod.
    • Clarified pa_encoding_from_string feature purpose.
    Open source →
  37. 1.3.4 11 Oct 2018
    Release notes
    • Fixed broken attempt to include license file in bundled package.
    Open source →
  38. 1.3.3 08 Oct 2018
    Release notes
    • Added dedicated changelog, split off from the old single project overview one.
    • Included copy of license file in bundled package and excluded the .gitignore file.

    Note, version number 1.3.2 skipped, bumping number into line with the other crates.

    Open source →
  39. 1.3.1 03 Sep 2018
    Release notes
    • Added homepage and repo links, thanks to @berkus on github for the patch.
    Open source →
  40. 1.3.0 17 Jul 2018

    Nothing published for this version

  41. 1.2.1 26 Jun 2018
    Release notes
    • Updated declared PA version compatibility (11.0 → 12.0).
    Open source →
  42. 1.2.0 16 Jun 2018

    Nothing published for this version

  43. 1.1.0 29 May 2018

    Nothing published for this version

  44. 1.0.5 29 May 2018
    Release notes
    • Minor, non-functional consistency fix only.

    Note, some version numbers skipped, bumping number into line with the other crates.

    Open source →
  45. 1.0.2 09 Feb 2018
    Release notes
    • Added travis badge.
    Open source →
  46. 1.0.1 02 Feb 2018
    Release notes
    • Fixed toml file license string LGPL-2.1LGPL-2.1+.
    • Fixed toml file missing author email address.
    Open source →
  47. 1.0.0 01 Feb 2018

    Nothing published for this version

  48. 0.0.0 11 Jan 2016
    Release notes

    This was the original version available on crates.io, built by a different author in a different code repository. Version 1.0 above represents the first published version from the replacement codebase. (To be clear, version 0.0.0 cannot be found in the current repository).

    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive