PulseAudio 12.0 is out now! I think I’ve linked to the release notes draft before, so there may not be much new to you, but here are the final release notes anyway: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/12.0/
The release candidates clearly don’t get very much testing, since an embarrassing crash bug was reported quickly after the 12.0 release. Changing the bluetooth profile from “off” to “a2dp_sink” reliably makes PulseAudio crash. I have now made a fix for that. It’s not clear why the problem started occurring only in 12.0, when the underlying problem seems like something that has existed for quite a while, but anyway, we’ll need to make a 12.1 bugfix release soon.
A more obscure regression was reported related to module-pipe-sink. PulseAudio used to set umask to 022, which means that newly created files were world-readable, if they were in a directory that other users can access (which was generally true only in the system mode). Starting from PulseAudio 12.0 a more secure umask (077) is used, and that broke some use cases of module-pipe-sink, because the pipe file couldn’t be accessed by other users (problematic especially in the system mode). There’s no fix yet.
That’s enough for the release, here are other things that I worked on:
I fixed missing stereo profile on sound cards that can be also used in mono mode and that don’t have ALSA configuration that would define a “front:N” device.
I simplified state handling code for sinks, sources, sink-inputs and source-outputs. A minor bug was reported related to how we determine whether a sink input is drained or not. The whole “drained” concept turned out to be almost unused, and the only use case was obscure enough that I decided to remove the “drained” state from sink inputs. After that I also did some trivial simplification of how sink, source, sink-input and source-output states are read in the code.
A user suggested logging an error message to make debugging easier when we detect that a sound card is not usable due to some other program hogging the sound card to itself. That was easy enough to do, so I made a patch for that.
A broken link to the GitBranches wiki page was reported. I fixed the link and updated the page contents as well, since they weren’t entirely up-to-date any more. I also updated the Bluetooth wiki page to reflect the changes in 12.0.
I also reviewed a bunch of patches and did my best to be responsive on the mailing list and bug tracker, as usual.
This post was originally written on 2018-07-01, and first made available to my Patreon supporters. Speaking of Patreon – I’m using crowdfunding in an attempt to make it financially sustainable to continue my volunteer work as a PulseAudio maintainer. If you’d like to help, check out my Patreon page (or Liberapay).