Hello community,

here is the log from the commit of package phonon for openSUSE:Factory checked 
in at 2018-02-28 19:59:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/phonon (Old)
 and      /work/SRC/openSUSE:Factory/.phonon.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "phonon"

Wed Feb 28 19:59:54 2018 rev:64 rq:579679 version:4.10.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/phonon/phonon.changes    2016-04-28 
16:52:10.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.phonon.new/phonon.changes       2018-02-28 
19:59:56.066036990 +0100
@@ -1,0 +2,16 @@
+Fri Feb 23 21:20:40 UTC 2018 - [email protected]
+
+- Update to 4.10.0:
+  * Changes
+    + PulseSupport is more robustly handling device list iteration.
+  * New API
+    + New backend API AudioOutputInterface410. This interface
+      implements a long-existing frontend interface for category
+      configuration. Usually, this is managed by the builtin
+      PulseSupport to force the category on a PulseAudio level,
+      sometimes this may not be possible because of how the backend
+      subsystem works and the backend needs to manage this directly.
+    + setCategory(Category) is called on the interface when the
+      synonymous frontend function is called.
+
+-------------------------------------------------------------------

Old:
----
  phonon-4.9.0.tar.xz

New:
----
  phonon-4.10.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ phonon.spec ++++++
--- /var/tmp/diff_new_pack.S5rdIo/_old  2018-02-28 19:59:56.918006162 +0100
+++ /var/tmp/diff_new_pack.S5rdIo/_new  2018-02-28 19:59:56.922006018 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           phonon
-Version:        4.9.0
+Version:        4.10.0
 Release:        0
 Summary:        Multimedia Platform Abstraction
 License:        LGPL-2.0+

++++++ phonon-4.9.0.tar.xz -> phonon-4.10.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/.reviewboardrc 
new/phonon-4.10.0/.reviewboardrc
--- old/phonon-4.9.0/.reviewboardrc     2016-04-18 06:25:17.000000000 +0200
+++ new/phonon-4.10.0/.reviewboardrc    1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-REVIEWBOARD_URL = "https://git.reviewboard.kde.org";
-REPOSITORY = 'git://anongit.kde.org/phonon'
-TARGET_GROUPS = 'phonon'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/CMakeLists.txt 
new/phonon-4.10.0/CMakeLists.txt
--- old/phonon-4.9.0/CMakeLists.txt     2016-04-18 06:25:17.000000000 +0200
+++ new/phonon-4.10.0/CMakeLists.txt    2018-02-23 15:30:17.000000000 +0100
@@ -22,7 +22,7 @@
 # It is highly advised to think twice before changing those.
 # If you are unsure about the this: 
http://plan99.net/~mike/writing-shared-libraries.html
 set(PHONON_LIB_MAJOR_VERSION "4") # Only change on binary incompatible changes
-set(PHONON_LIB_MINOR_VERSION "9") # Only change on binary compatible changes 
with new interfaces
+set(PHONON_LIB_MINOR_VERSION "10") # Only change on binary compatible changes 
with new interfaces
 set(PHONON_LIB_PATCH_VERSION "0") # Bump whenever you feel like it :P
 set(PHONON_LIB_VERSION 
"${PHONON_LIB_MAJOR_VERSION}.${PHONON_LIB_MINOR_VERSION}.${PHONON_LIB_PATCH_VERSION}")
 set(PHONON_LIB_SOVERSION ${PHONON_LIB_MAJOR_VERSION})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/metainfo.yaml 
new/phonon-4.10.0/metainfo.yaml
--- old/phonon-4.9.0/metainfo.yaml      1970-01-01 01:00:00.000000000 +0100
+++ new/phonon-4.10.0/metainfo.yaml     2018-02-23 15:30:17.000000000 +0100
@@ -0,0 +1,14 @@
+maintainer: sitter
+description: Phonon, the Qt multimedia abstraction library.
+platforms:
+  - name: All
+release: true
+public_lib: true
+public_source_dirs:
+  - phonon
+public_doc_dir:
+  - doc
+public_example_dir:
+  - demos
+irc: kde-multimedia
+mailinglist: kde-multimedia
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/CMakeLists.txt 
new/phonon-4.10.0/phonon/CMakeLists.txt
--- old/phonon-4.9.0/phonon/CMakeLists.txt      2016-04-18 06:25:17.000000000 
+0200
+++ new/phonon-4.10.0/phonon/CMakeLists.txt     2018-02-23 15:30:17.000000000 
+0100
@@ -12,7 +12,7 @@
 
 # ------------------------ Configure File QMake Style ------------------------ 
#
 
-if (PHONON_NO_DBUS)
+if (PHONON_NO_DBUS OR NOT QT_QTDBUS_FOUND)
     set(PHONON_NO_DBUS_DEFINE "#define PHONON_NO_DBUS")
 else()
     set(PHONON_NO_DBUS_DEFINE "/* #undef PHONON_NO_DBUS */")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/audiooutput.cpp 
new/phonon-4.10.0/phonon/audiooutput.cpp
--- old/phonon-4.9.0/phonon/audiooutput.cpp     2016-04-18 06:25:17.000000000 
+0200
+++ new/phonon-4.10.0/phonon/audiooutput.cpp    2018-02-23 15:30:17.000000000 
+0100
@@ -39,11 +39,12 @@
 #include <QtCore/qmath.h>
 
 #define PHONON_CLASSNAME AudioOutput
+#define IFACES10 AudioOutputInterface410
 #define IFACES9 AudioOutputInterface49
 #define IFECES7 AudioOutputInterface47
 #define IFACES2 AudioOutputInterface42
 #define IFACES1 IFACES2
-#define IFACES0 AudioOutputInterface40, IFACES1, IFECES7, IFACES9
+#define IFACES0 AudioOutputInterface40, IFACES1, IFECES7, IFACES9, IFACES10
 #define PHONON_INTERFACENAME IFACES0
 
 namespace Phonon
@@ -315,6 +316,11 @@
                          q, SLOT(_k_mutedChanged(bool)));
     }
 
+    Iface<IFACES10> iface10(this);
+    if (iface10) {
+        iface10->setCategory(category);
+    }
+
     if (!PulseSupport::getInstance()->isActive()) {
         // set up attributes
         pINTERFACE_CALL(setVolume(pow(volume, VOLTAGE_TO_LOUDNESS_EXPONENT)));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/audiooutputinterface.h 
new/phonon-4.10.0/phonon/audiooutputinterface.h
--- old/phonon-4.9.0/phonon/audiooutputinterface.h      2016-04-18 
06:25:17.000000000 +0200
+++ new/phonon-4.10.0/phonon/audiooutputinterface.h     2018-02-23 
15:30:17.000000000 +0100
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2015 Harald Sitter <[email protected]>
+    Copyright (C) 2015-2016 Harald Sitter <[email protected]>
     Copyright (C) 2007-2008 Matthias Kretz <[email protected]>
 
     This library is free software; you can redistribute it and/or
@@ -29,7 +29,6 @@
 #include "phonondefs.h"
 #include <QtCore/QtGlobal>
 
-
 namespace Phonon
 {
 /** \class AudioOutputInterface audiooutputinterface.h 
phonon/AudioOutputInterface
@@ -184,32 +183,56 @@
     virtual void mutedChanged(bool mute) = 0;
 };
 
+class AudioOutputInterface410 : public AudioOutputInterface49
+{
+public:
+    /**
+     * Forwards the output category to the backend after construction.
+     * The category is immutable so this is only called once, it is also never
+     * read from the backend (hence the lack of a getter) as the backend gets
+     * no choice in this matter.
+     * @param category the category that was set on the output.
+     */
+    virtual void setCategory(Phonon::Category category) = 0;
+};
+
 } // namespace Phonon
 
-#ifdef PHONON_BACKEND_VERSION_4_9
+#ifdef PHONON_BACKEND_VERSION_4_10
+namespace Phonon { typedef AudioOutputInterface410 AudioOutputInterface; }
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40,  
"AudioOutputInterface2.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42,  
"3AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47,  
"4AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49,  
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,    
"6AudioOutputInterface.phonon.kde.org")
+#elif defined PHONON_BACKEND_VERSION_4_9
 namespace Phonon { typedef AudioOutputInterface49 AudioOutputInterface; }
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40, 
"AudioOutputInterface2.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42, 
"3AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47, 
"4AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,   
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40,  
"AudioOutputInterface2.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42,  
"3AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47,  
"4AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,    
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface410, 
"6AudioOutputInterface.phonon.kde.org")
 #elif defined PHONON_BACKEND_VERSION_4_7
 namespace Phonon { typedef AudioOutputInterface47 AudioOutputInterface; }
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40, 
"AudioOutputInterface2.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42, 
"3AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,   
"4AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49, 
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40,  
"AudioOutputInterface2.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42,  
"3AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,    
"4AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49,  
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface410, 
"6AudioOutputInterface.phonon.kde.org")
 #elif defined PHONON_BACKEND_VERSION_4_2
 namespace Phonon { typedef AudioOutputInterface42 AudioOutputInterface; }
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40, 
"AudioOutputInterface2.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,   
"3AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47, 
"4AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49, 
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface40,  
"AudioOutputInterface2.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,    
"3AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47,  
"4AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49,  
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface410, 
"6AudioOutputInterface.phonon.kde.org")
 #else
 namespace Phonon { typedef AudioOutputInterface40 AudioOutputInterface; }
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,   
"AudioOutputInterface2.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42, 
"3AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47, 
"4AudioOutputInterface.phonon.kde.org")
-Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49, 
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface,    
"AudioOutputInterface2.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface42,  
"3AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface47,  
"4AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface49,  
"5AudioOutputInterface.phonon.kde.org")
+Q_DECLARE_INTERFACE(Phonon::AudioOutputInterface410, 
"6AudioOutputInterface.phonon.kde.org")
 #endif
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/phononconfig_p.h.in 
new/phonon-4.10.0/phonon/phononconfig_p.h.in
--- old/phonon-4.9.0/phonon/phononconfig_p.h.in 2016-04-18 06:25:17.000000000 
+0200
+++ new/phonon-4.10.0/phonon/phononconfig_p.h.in        2018-02-23 
15:30:17.000000000 +0100
@@ -3,14 +3,7 @@
 #ifndef PHONONCONFIG_H_P
 #define PHONONCONFIG_H_P
 
-#include <QtCore/qfeatures.h>
-
 /** Whether to build with D-Bus support */
 $${PHONON_NO_DBUS_DEFINE}
 
-/** If QT_NO_DBUS is defined, always set PHONON_NO_DBUS */
-#if !defined(PHONON_NO_DBUS) && defined(QT_NO_DBUS)
-#define PHONON_NO_DBUS 1
-#endif
-
 #endif // PHONONCONFIG_H_P
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/phonondefs_p.h 
new/phonon-4.10.0/phonon/phonondefs_p.h
--- old/phonon-4.9.0/phonon/phonondefs_p.h      2016-04-18 06:25:17.000000000 
+0200
+++ new/phonon-4.10.0/phonon/phonondefs_p.h     2018-02-23 15:30:17.000000000 
+0100
@@ -236,7 +236,7 @@
      *
      * \author Matthias Kretz <[email protected]>
      */
-    template<class T0, class T1 = NoIface, class T2 = NoIface, class T3 = 
NoIface>
+    template<class T0, class T1 = NoIface, class T2 = NoIface, class T3 = 
NoIface, class T4 = NoIface>
     class Iface
     {
     public:
@@ -250,6 +250,10 @@
                     if (IsValid<T3>::Result) {
                         ret = reinterpret_cast<T0 *>(my_cast<T3 
*>(d->m_backendObject));
                         if (ret) return ret;
+                        if (IsValid<T4>::Result) {
+                            ret = reinterpret_cast<T0 *>(my_cast<T4 
*>(d->m_backendObject));
+                            if (ret) return ret;
+                        }
                     }
                 }
                 ret = reinterpret_cast<T0 *>(my_cast<T1 
*>(d->m_backendObject));
@@ -268,6 +272,10 @@
                     if (IsValid<T3>::Result) {
                         ret = reinterpret_cast<const T0 *>(my_cast<T3 
*>(d->m_backendObject));
                         if (ret) return ret;
+                        if (IsValid<T4>::Result) {
+                            ret = reinterpret_cast<const T0 *>(my_cast<T4 
*>(d->m_backendObject));
+                            if (ret) return ret;
+                        }
                     }
                 }
                 ret = reinterpret_cast<const T0 *>(my_cast<T1 
*>(d->m_backendObject));
@@ -285,11 +293,11 @@
         T0 *const iface;
     };
 
-    template<class T0, class T1 = NoIface, class T2 = NoIface, class T3 = 
NoIface>
+    template<class T0, class T1 = NoIface, class T2 = NoIface, class T3 = 
NoIface, class T4 = NoIface>
     class ConstIface
     {
     public:
-        inline ConstIface(const MediaNodePrivate *const d) : iface(Iface<T0, 
T1, T2, T3>::cast(d)) {}
+        inline ConstIface(const MediaNodePrivate *const d) : iface(Iface<T0, 
T1, T2, T3, T4>::cast(d)) {}
         inline operator const T0 *() const { return iface; }
         inline const T0 *operator->() const { Q_ASSERT(iface); return iface; }
     private:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonon-4.9.0/phonon/pulsesupport.cpp 
new/phonon-4.10.0/phonon/pulsesupport.cpp
--- old/phonon-4.9.0/phonon/pulsesupport.cpp    2016-04-18 06:25:17.000000000 
+0200
+++ new/phonon-4.10.0/phonon/pulsesupport.cpp   2018-02-23 15:30:17.000000000 
+0100
@@ -437,11 +437,12 @@
         // our device info and can exit and reconnect
         if (s_context != c)
             pa_context_disconnect(c);
-    }
 
-    if (!info)
-        return;
+        return; // eol
+    }
 
+    // If we aren't at eol we expect info to be valid!
+    Q_ASSERT(info);
     Q_ASSERT(info->name);
     Q_ASSERT(info->description);
     Q_ASSERT(info->icon);


Reply via email to