Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package pulseaudio-qt for openSUSE:Factory checked in at 2026-09-19 22:19:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pulseaudio-qt (Old) and /work/SRC/openSUSE:Factory/.pulseaudio-qt.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pulseaudio-qt" Sat Sep 19 22:19:31 2026 rev:11 rq:1378691 version:1.9.0 Changes: -------- --- /work/SRC/openSUSE:Factory/pulseaudio-qt/pulseaudio-qt.changes 2026-03-04 21:03:24.223935825 +0100 +++ /work/SRC/openSUSE:Factory/.pulseaudio-qt.new.383539/pulseaudio-qt.changes 2026-09-19 22:19:37.664821600 +0200 @@ -1,0 +2,10 @@ +Thu Sep 17 19:58:19 UTC 2026 - Fabian Vogt <[email protected]> + +- Update to 1.9.0: + * context: reset before reconnectDaemon + * context: remove stray return in void function + * server: do not return incorrect default devices + * server: cleanup findByName a bit + * Extract and install Qt metatypes + +------------------------------------------------------------------- Old: ---- pulseaudio-qt-1.8.1.tar.xz pulseaudio-qt-1.8.1.tar.xz.sig New: ---- pulseaudio-qt-1.9.0.tar.xz pulseaudio-qt-1.9.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pulseaudio-qt.spec ++++++ --- /var/tmp/diff_new_pack.R4zxrL/_old 2026-09-19 22:19:38.987876337 +0200 +++ /var/tmp/diff_new_pack.R4zxrL/_new 2026-09-19 22:19:38.988876379 +0200 @@ -20,7 +20,7 @@ %if "%flavor" == "qt6" %define pkg_suffix 6 %define qt6 1 -%define kf6_version 6.0.0 +%define kf6_version 6.27.0 %define qt6_version 6.7.0 %define library_name libKF6PulseAudioQt5 %else @@ -30,7 +30,7 @@ %define rname pulseaudio-qt %bcond_without released Name: pulseaudio-qt%{?pkg_suffix} -Version: 1.8.1 +Version: 1.9.0 Release: 0 Summary: Qt bindings for PulseAudio License: LGPL-2.1-or-later @@ -102,5 +102,6 @@ %{_kf6_includedir}/pulseaudioqt_version.h %{_kf6_libdir}/libKF6PulseAudioQt.so %{_kf6_pkgconfigdir}/KF6PulseAudioQt.pc +%{_qt6_metatypesdir}/qt6kf6pulseaudioqt_metatypes.json %endif ++++++ pulseaudio-qt-1.8.1.tar.xz -> pulseaudio-qt-1.9.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pulseaudio-qt-1.8.1/CMakeLists.txt new/pulseaudio-qt-1.9.0/CMakeLists.txt --- old/pulseaudio-qt-1.8.1/CMakeLists.txt 2026-03-02 21:19:57.000000000 +0100 +++ new/pulseaudio-qt-1.9.0/CMakeLists.txt 2026-09-17 16:05:45.000000000 +0200 @@ -1,11 +1,11 @@ cmake_minimum_required(VERSION 3.16) -set(PROJECT_VERSION 1.8.1) +set(PROJECT_VERSION 1.9.0) project(PulseAudioQt VERSION ${PROJECT_VERSION}) include(FeatureSummary) -find_package(ECM 6.0.0 NO_MODULE) +find_package(ECM 6.27.0 NO_MODULE) set(KDE_COMPILERSETTINGS_LEVEL "6.0") set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://kde.org/products/frameworks/") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pulseaudio-qt-1.8.1/src/CMakeLists.txt new/pulseaudio-qt-1.9.0/src/CMakeLists.txt --- old/pulseaudio-qt-1.8.1/src/CMakeLists.txt 2026-03-02 21:19:57.000000000 +0100 +++ new/pulseaudio-qt-1.9.0/src/CMakeLists.txt 2026-09-17 16:05:45.000000000 +0200 @@ -24,6 +24,13 @@ indexedpulseobject.cpp ) +qt_extract_metatypes(KF6PulseAudioQt OUTPUT_FILES METATYPES_FILE) + +# see https://qt-project.atlassian.net/browse/QTBUG-123052 +# might be replaced with proper Qt API once that exists +get_filename_component(METATYPES_FILE_NAME ${METATYPES_FILE} NAME) +target_sources(KF6PulseAudioQt INTERFACE $<INSTALL_INTERFACE:${KDE_INSTALL_QTMETATYPESDIR}/${METATYPES_FILE_NAME}>) + ecm_qt_declare_logging_category(KF6PulseAudioQt HEADER debug.h IDENTIFIER PULSEAUDIOQT @@ -114,3 +121,5 @@ COMPONENT Devel ) endif() + +install(FILES ${METATYPES_FILE} DESTINATION ${KDE_INSTALL_QTMETATYPESDIR}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pulseaudio-qt-1.8.1/src/context.cpp new/pulseaudio-qt-1.9.0/src/context.cpp --- old/pulseaudio-qt-1.8.1/src/context.cpp 2026-03-02 21:19:57.000000000 +0100 +++ new/pulseaudio-qt-1.9.0/src/context.cpp 2026-09-17 16:05:45.000000000 +0200 @@ -950,7 +950,8 @@ } d->forceDisconnect(); - return d->connectToDaemon(); + d->reset(); + d->connectToDaemon(); } void ContextPrivate::forceDisconnect() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pulseaudio-qt-1.8.1/src/server.cpp new/pulseaudio-qt-1.9.0/src/server.cpp --- old/pulseaudio-qt-1.8.1/src/server.cpp 2026-03-02 21:19:57.000000000 +0100 +++ new/pulseaudio-qt-1.9.0/src/server.cpp 2026-09-17 16:05:45.000000000 +0200 @@ -129,18 +129,18 @@ template<typename Type, typename Vector> static Type *findByName(const Vector &vector, const QString &name) { - Type *out = nullptr; if (name.isEmpty()) { - return out; + return nullptr; } + for (Type *t : vector) { - out = t; - if (out->name() == name) { - return out; + if (t->name() == name) { + return t; } } - qCWarning(PULSEAUDIOQT) << "No object for name" << name; - return out; + + qCWarning(PULSEAUDIOQT) << "No object for name" << name << "returning nullptr"; + return nullptr; } void Server::updateDefaultDevices() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pulseaudio-qt-1.8.1/src/server.h new/pulseaudio-qt-1.9.0/src/server.h --- old/pulseaudio-qt-1.8.1/src/server.h 2026-03-02 21:19:57.000000000 +0100 +++ new/pulseaudio-qt-1.9.0/src/server.h 2026-09-17 16:05:45.000000000 +0200 @@ -20,9 +20,9 @@ class PULSEAUDIOQT_EXPORT Server : public QObject { Q_OBJECT - /// The default Sink (SinkInputs that aren't otherwise assigned explicitly will use this Sink) + /// The default Sink (SinkInputs that aren't otherwise assigned explicitly will use this Sink). May be null. Q_PROPERTY(Sink *defaultSink READ defaultSink NOTIFY defaultSinkChanged) - /// The default Source (SourceOutputs that aren't otherwise assigned explicitly will use this Source) + /// The default Source (SourceOutputs that aren't otherwise assigned explicitly will use this Source). May be null. Q_PROPERTY(Source *defaultSource READ defaultSource NOTIFY defaultSourceChanged) /// Whether the connected Server is PipeWire (rather than PulseAudio) Q_PROPERTY(bool isPipeWire READ isPipeWire NOTIFY isPipeWireChanged) @@ -36,9 +36,11 @@ public: ~Server() override; + /*! The default sink device. May be null when resolution failed or isn't done yet */ Sink *defaultSink() const; void setDefaultSink(Sink *sink); + /*! The default source device. May be null when resolution failed or isn't done yet */ Source *defaultSource() const; void setDefaultSource(Source *source);
