Skip to content

v1.3.5

Choose a tag to compare

@thisisgm thisisgm released this 23 Aug 22:57
· 7 commits to main since this release
v1.3.5
66337c0

Collects every change since v1.2.0. The v1.3.x tags were pushed without a GitHub
release, so their notes are gathered here.

v1.3.5

  • The volume snap is disabled before the early return rather than below the idempotence
    guard, so a teardown that returns early no longer leaves the snap armed.
  • A failed BlueZ sweep logs a new error instead of deduping on a bool, so a different
    failure is no longer swallowed.

v1.3.4

  • The BlueZ sweep is bounded to two seconds with a direct D-Bus call instead of an
    unbounded introspection round trip.
  • The watchdog sweeps on a cold start where no address was ever learned, so a daemon that
    started before the Bluetooth adapter finds a device that connects later. Fixes the
    connected half of #24, contributed by @utsavsingh899 in #25.

v1.3.3

  • The card is released once rather than on every ear-detection packet, measured at 17
    releases in 20 minutes before and 1 in 2 minutes after. Fixes #31.
  • Every PulseAudio callback wakes the waiter on a negative eol, so an error no longer
    leaves waitForOperation blocked. Fixes #32.

v1.3.2

  • The activation ladder defers while a live capture holds the AirPods microphone, so a
    call is no longer switched off the headset profile mid-capture. Fixes #23.
  • The daemon stops overriding the output profile by name and ranks the offered codecs by
    bitrate instead, so the highest-bitrate profile the device advertises is the one
    selected. Fixes #27.

v1.3.1

  • BLE discovery pauses on every controller rather than only Apple ones, which clears the
    A2DP stutter reported on Intel controllers. Fixes #26.

v1.3.0

  • A2DP activation is re-armed after a control-link recovery. Fixes #18, contributed by
    @lbonvarl in #20.
  • Control-link recovery retries after its budget is exhausted, gated on BlueZ still
    holding the device so the watchdog cannot restart the ladder indefinitely. Fixes #19,
    contributed by @lbonvarl in #21.
  • MPRIS PlaybackStatus is read without an introspection round trip, contributed by
    @harisb2012 in #22.

Contributors

Thanks to everyone who reported, diagnosed or fixed something in this line:

  • @lbonvarl, who reported #18 and #19 and sent the fixes for both in #20 and #21.
  • @harisb2012, who removed the MPRIS introspection round trip in #22.
  • @utsavsingh899, who reported #24 with a reproduction that counts BlueZ sweeps, and sent
    the cold-start fix in #25.
  • @msegoviadev, who reported #26 and confirmed the fix on the affected Intel controller.