Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package wireplumber for openSUSE:Factory checked in at 2022-01-11 00:01:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/wireplumber (Old) and /work/SRC/openSUSE:Factory/.wireplumber.new.1892 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wireplumber" Tue Jan 11 00:01:38 2022 rev:3 rq:945250 version:0.4.6 Changes: -------- --- /work/SRC/openSUSE:Factory/wireplumber/wireplumber.changes 2021-12-18 20:29:55.718231968 +0100 +++ /work/SRC/openSUSE:Factory/.wireplumber.new.1892/wireplumber.changes 2022-01-11 00:01:48.693236023 +0100 @@ -1,0 +2,44 @@ +Mon Jan 10 09:50:15 UTC 2022 - Antonio Larrosa <alarr...@suse.com> + +- Reformat .changes file to limit lines to 67 chars when possible. + +------------------------------------------------------------------- +Sat Jan 8 16:12:57 UTC 2022 - Alexei Sorokin <sor.ale...@meowr.ru> + +- Update to version 0.4.6: + * Fix a lot of race condition bugs that would cause strange + crashes or many log messages being printed when streaming + clients would connect and disconnect very fast. + * Improve the logic for selecting a default target device. + * Fix switching to headphones when the wired headphones are + plugged in. + * Fix an issue where "udevadm trigger" would break wireplumber. + * Fix an issue where switching profiles of a device could kill + client nodes. + * Fix briefly switching output to a secondary device when + switching device profiles (#85) + * Fix "wpctl status" showing default device selections when + dealing with module-loopback virtual sinks and sources. + * WirePlumber now ignores hidden files from the config directory. + * Fix an interoperability issue with jackdbus. + * Fix an issue where pulseaudio tcp clients would not have + permissions to connect to PipeWire. + * Fix a crash in the journald logger with NULL debug messages. + * Enable real-time priority for the bluetooth nodes to run in RT. + * Make the default stream volume configurable. + * Scripts are now also looked up in + $XDG_CONFIG_HOME/wireplumber/scripts + * Update documentation on configuring WirePlumber and fixed some + more documentation issues. + * Add support for using strings as log level selectors in + WIREPLUMBER_DEBUG. +- Drop patches merged upstream: + * 0001-m-reserve-device-replace-the-hash-table-key-on-new-insert.patch + * 0002-policy-node-wait-for-nodes-when-we-become-unlinked.patch +- Add patch from upstream to fix a pulse client hanging issue: + * 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch +- Add patch from upstream to fix an issue with + libpipewire-module-echo-cancel: + * 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch + +------------------------------------------------------------------- Old: ---- 0001-m-reserve-device-replace-the-hash-table-key-on-new-insert.patch 0002-policy-node-wait-for-nodes-when-we-become-unlinked.patch wireplumber-0.4.5.obscpio New: ---- 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch wireplumber-0.4.6.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ wireplumber.spec ++++++ --- /var/tmp/diff_new_pack.AbzVFU/_old 2022-01-11 00:01:49.393236636 +0100 +++ /var/tmp/diff_new_pack.AbzVFU/_new 2022-01-11 00:01:49.397236640 +0100 @@ -1,7 +1,7 @@ # # spec file for package wireplumber # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,13 +16,13 @@ # -%define pipewire_minimum_version 0.3.32 +%define pipewire_minimum_version 0.3.43 %define apiver 0.4 %define apiver_str 0_4 %define sover 0 %define libwireplumber libwireplumber-%{apiver_str}-%{sover} Name: wireplumber -Version: 0.4.5 +Version: 0.4.6 Release: 0 Summary: Session / policy manager implementation for PipeWire License: MIT @@ -30,8 +30,8 @@ URL: https://gitlab.freedesktop.org/pipewire/wireplumber Source0: wireplumber-%{version}.tar.xz Source1: split-config-file.py -Patch0: 0001-m-reserve-device-replace-the-hash-table-key-on-new-insert.patch -Patch1: 0002-policy-node-wait-for-nodes-when-we-become-unlinked.patch +Patch0: 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch +Patch1: 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch Patch100: reduce-meson-required-version.patch # docs BuildRequires: doxygen @@ -54,7 +54,7 @@ BuildRequires: pkgconfig(gmodule-2.0) BuildRequires: pkgconfig(gobject-2.0) >= 2.62 BuildRequires: pkgconfig(gobject-introspection-1.0) -BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.32 +BuildRequires: pkgconfig(libpipewire-0.3) >= %{pipewire_minimum_version} BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(lua5.3) BuildRequires: pkgconfig(systemd) ++++++ 0001-policy-node-schedule-rescan-without-timeout-if-defined-target-is-not-found.patch ++++++ >From afe71d7e48c28b0ae5cbd9327433e3c55c103fcb Mon Sep 17 00:00:00 2001 From: Julian Bouzas <julian.bou...@collabora.com> Date: Thu, 6 Jan 2022 10:53:38 -0500 Subject: [PATCH] policy-node: schedule a rescan without timeout if defined target is not found Fixes #146 --- src/scripts/policy-node.lua | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua index 8ca5a695..c273c1fe 100644 --- a/src/scripts/policy-node.lua +++ b/src/scripts/policy-node.lua @@ -552,25 +552,16 @@ function handleLinkable (si) si_target = nil end - -- wait up to 2 seconds for the requested target to become available - -- this is because the client may have already "seen" a target that we haven't - -- yet prepared, which leads to a race condition + -- if the client has seen a target that we haven't yet prepared, schedule + -- a rescan one more time and hope for the best local si_id = si.id if si_props["node.target"] and si_props["node.target"] ~= "-1" and not si_target and not si_flags[si_id].was_handled and not si_flags[si_id].done_waiting then - if not si_flags[si_id].timeout_source then - si_flags[si_id].timeout_source = Core.timeout_add(2000, function() - if si_flags[si_id] then - si_flags[si_id].done_waiting = true - si_flags[si_id].timeout_source = nil - scheduleRescan() - end - return false - end) - end Log.info (si, "... waiting for target") + si_flags[si_id].done_waiting = true + scheduleRescan() return end -- ++++++ 0002-policy-node-find-best-linkable-if-default-one-cannot-be-linked.patch ++++++ >From bee9827ae376b75feceea926b0afc727fecca51b Mon Sep 17 00:00:00 2001 From: Julian Bouzas <julian.bou...@collabora.com> Date: Fri, 7 Jan 2022 15:35:10 -0500 Subject: [PATCH] policy-node: find best linkable if default one cannot be linked Fixes issue with echo cancellation pipewire module. --- src/scripts/policy-node.lua | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua index 8ca5a695..3210f579 100644 --- a/src/scripts/policy-node.lua +++ b/src/scripts/policy-node.lua @@ -477,13 +477,22 @@ function findBestLinkable (si) end function findUndefinedTarget (si) - -- Find the default linkable if the default nodes module is loaded, otherwise - -- just find the best linkable based on priority and routes - if default_nodes ~= nil then - return findDefaultlinkable (si) - else - return findBestlinkable (si) + -- Just find the best linkable if default nodes module is not loaded + if default_nodes == nil then + return findBestLinkable (si) end + + -- Otherwise find the default linkable. If the default linkabke cannot link, + -- we find the best one instead. We return nil if default does not exist. + local si_target, can_passthrough = findDefaultlinkable (si) + if si_target then + if canLink (si.properties, si_target) then + return si_target, can_passthrough + else + return findBestLinkable (si) + end + end + return nil, nil end function lookupLink (si_id, si_target_id) -- ++++++ _service ++++++ --- /var/tmp/diff_new_pack.AbzVFU/_old 2022-01-11 00:01:49.433236672 +0100 +++ /var/tmp/diff_new_pack.AbzVFU/_new 2022-01-11 00:01:49.437236675 +0100 @@ -4,10 +4,10 @@ <param name="scm">git</param> <param name="url">https://gitlab.freedesktop.org/pipewire/wireplumber.git</param> <param name="changesgenerate">enable</param> - <param name="revision">0.4.5</param> + <param name="revision">0.4.6</param> <param name="versionformat">@PARENT_TAG@</param> <!-- - <param name="versionprefix">0.4.1+git</param> + <param name="versionprefix">0.4.6+git</param> <param name="versionformat">@PARENT_TAG@+git%cd.%h</param> --> </service> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.AbzVFU/_old 2022-01-11 00:01:49.457236693 +0100 +++ /var/tmp/diff_new_pack.AbzVFU/_new 2022-01-11 00:01:49.457236693 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://gitlab.freedesktop.org/pipewire/wireplumber.git</param> - <param name="changesrevision">3946457a7942a179c0f61c60de8cb8fc643391dd</param></service></servicedata> + <param name="changesrevision">9a733293d7d39554d0c9b04741a64ece023dbac6</param></service></servicedata> (No newline at EOF) ++++++ wireplumber-0.4.5.obscpio -> wireplumber-0.4.6.obscpio ++++++ ++++ 5069 lines of diff (skipped) ++++++ wireplumber.obsinfo ++++++ --- /var/tmp/diff_new_pack.AbzVFU/_old 2022-01-11 00:01:49.681236888 +0100 +++ /var/tmp/diff_new_pack.AbzVFU/_new 2022-01-11 00:01:49.681236888 +0100 @@ -1,6 +1,5 @@ name: wireplumber -version: 0.4.5 -mtime: 1636626925 -commit: 3946457a7942a179c0f61c60de8cb8fc643391dd - +version: 0.4.6 +mtime: 1641485511 +commit: 9a733293d7d39554d0c9b04741a64ece023dbac6