Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package krunner for openSUSE:Factory checked 
in at 2022-12-12 17:38:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/krunner (Old)
 and      /work/SRC/openSUSE:Factory/.krunner.new.1835 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "krunner"

Mon Dec 12 17:38:44 2022 rev:107 rq:1042150 version:5.101.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/krunner/krunner.changes  2022-11-15 
13:19:57.616346924 +0100
+++ /work/SRC/openSUSE:Factory/.krunner.new.1835/krunner.changes        
2022-12-12 17:40:38.197463630 +0100
@@ -1,0 +2,13 @@
+Tue Dec  6 20:10:57 UTC 2022 - Christophe Marin <[email protected]>
+
+- Update to 5.101.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/5/5.101.0
+- Changes since 5.100.0:
+  * QueryMatch: Avoid unneeded QVariant conversion to string when setting data
+  * cppcheck: Do not shadow outer functions with local variables
+  * cppcheck: Make constructors explicit
+  * Fix crash when deleting RunnerManager while jobs are running (kde#448825)
+
+-------------------------------------------------------------------

Old:
----
  krunner-5.100.0.tar.xz
  krunner-5.100.0.tar.xz.sig

New:
----
  krunner-5.101.0.tar.xz
  krunner-5.101.0.tar.xz.sig

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

Other differences:
------------------
++++++ krunner.spec ++++++
--- /var/tmp/diff_new_pack.pBoZC3/_old  2022-12-12 17:40:38.805466697 +0100
+++ /var/tmp/diff_new_pack.pBoZC3/_new  2022-12-12 17:40:38.809466717 +0100
@@ -17,7 +17,7 @@
 
 
 %define lname   libKF5Runner5
-%define _tar_path 5.100
+%define _tar_path 5.101
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
@@ -25,11 +25,10 @@
 # Only needed for the package signature condition
 %bcond_without released
 Name:           krunner
-Version:        5.100.0
+Version:        5.101.0
 Release:        0
 Summary:        KDE Framework for providing different actions given a string 
query
 License:        LGPL-2.1-or-later
-Group:          System/GUI/KDE
 URL:            https://www.kde.org
 Source:         %{name}-%{version}.tar.xz
 %if %{with released}
@@ -56,14 +55,12 @@
 
 %package -n %{lname}
 Summary:        KDE Framework for providing different actions given a string 
query
-Group:          System/GUI/KDE
 
 %description -n %{lname}
 KDE Framework for providing different actions given a string query.
 
 %package devel
 Summary:        KDE Framework for providing different actions given a string 
query
-Group:          Development/Libraries/KDE
 Requires:       %{lname} = %{version}
 Requires:       extra-cmake-modules
 Requires:       cmake(KF5Plasma) >= %{_kf5_bugfix_version}


++++++ krunner-5.100.0.tar.xz -> krunner-5.101.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/CMakeLists.txt 
new/krunner-5.101.0/CMakeLists.txt
--- old/krunner-5.100.0/CMakeLists.txt  2022-11-05 13:31:26.000000000 +0100
+++ new/krunner-5.101.0/CMakeLists.txt  2022-12-03 10:51:08.000000000 +0100
@@ -3,13 +3,13 @@
 
 cmake_minimum_required(VERSION 3.16)
 
-set(KF_VERSION "5.100.0") # handled by release scripts
-set(KF_DEP_VERSION "5.100.0") # handled by release scripts
+set(KF_VERSION "5.101.0") # handled by release scripts
+set(KF_DEP_VERSION "5.101.0") # handled by release scripts
 project(KRunner VERSION ${KF_VERSION})
 
 # ECM setup
 include(FeatureSummary)
-find_package(ECM 5.100.0  NO_MODULE)
+find_package(ECM 5.101.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL "https://commits.kde.org/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/autotests/CMakeLists.txt 
new/krunner-5.101.0/autotests/CMakeLists.txt
--- old/krunner-5.100.0/autotests/CMakeLists.txt        2022-11-05 
13:31:26.000000000 +0100
+++ new/krunner-5.101.0/autotests/CMakeLists.txt        2022-12-03 
10:51:08.000000000 +0100
@@ -43,6 +43,7 @@
     runnermanagertest.cpp
     LINK_LIBRARIES Qt${QT_MAJOR_VERSION}::Test KF5Runner 
Qt${QT_MAJOR_VERSION}::Widgets Qt${QT_MAJOR_VERSION}::DBus KF5::ConfigCore
 )
+kcoreaddons_target_static_plugins(runnermanagertest krunnertest)
 ecm_add_tests(
     testmetadataconversion.cpp
     LINK_LIBRARIES Qt${QT_MAJOR_VERSION}::Test KF5Runner 
Qt${QT_MAJOR_VERSION}::Widgets Qt${QT_MAJOR_VERSION}::DBus KF5::ConfigCore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/autotests/fakerunner.h 
new/krunner-5.101.0/autotests/fakerunner.h
--- old/krunner-5.100.0/autotests/fakerunner.h  2022-11-05 13:31:26.000000000 
+0100
+++ new/krunner-5.101.0/autotests/fakerunner.h  2022-12-03 10:51:08.000000000 
+0100
@@ -5,22 +5,32 @@
 
 #include "abstractrunner.h"
 
+#include <QEventLoop>
+#include <QTimer>
+
 using namespace Plasma;
 
 class FakeRunner : public AbstractRunner
 {
 public:
-    FakeRunner(QObject *parent, const KPluginMetaData &metadata, const 
QVariantList &args)
+    explicit FakeRunner(QObject *parent, const KPluginMetaData &metadata, 
const QVariantList &args)
         : AbstractRunner(parent, metadata, args)
     {
+        setObjectName("FakeRunner");
     }
-    FakeRunner(const KPluginMetaData &metadata = 
KPluginMetaData(QStringLiteral("metadata.desktop")))
+    explicit FakeRunner(const KPluginMetaData &metadata = 
KPluginMetaData(QStringLiteral("metadata.desktop")))
         : FakeRunner(nullptr, metadata, {})
     {
+        setObjectName("FakeRunner");
     }
 
     void match(RunnerContext &context) override
     {
+        QEventLoop l;
+        QTimer::singleShot(50, [&l]() {
+            l.quit();
+        });
+        l.exec();
         if (context.query() == QLatin1String("foo")) {
             context.addMatch(createDummyMatch(QStringLiteral("foo"), 0.1));
             context.addMatch(createDummyMatch(QStringLiteral("bar"), 0.2));
@@ -30,10 +40,10 @@
 private:
     QueryMatch createDummyMatch(const QString &text, qreal relevance)
     {
-        QueryMatch match(this);
-        match.setId(text);
-        match.setText(text);
-        match.setRelevance(relevance);
-        return match;
+        QueryMatch queryMatch(this);
+        queryMatch.setId(text);
+        queryMatch.setText(text);
+        queryMatch.setRelevance(relevance);
+        return queryMatch;
     }
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/autotests/runnermanagertest.cpp 
new/krunner-5.101.0/autotests/runnermanagertest.cpp
--- old/krunner-5.100.0/autotests/runnermanagertest.cpp 2022-11-05 
13:31:26.000000000 +0100
+++ new/krunner-5.101.0/autotests/runnermanagertest.cpp 2022-12-03 
10:51:08.000000000 +0100
@@ -112,6 +112,20 @@
         QVERIFY(spyQueryFinished.wait());
         QCOMPARE(spyQueryFinished.size(), 2);
     }
+
+    /**
+     * When we delete the RunnerManager while a job is still running, we 
should not crash
+     */
+    void testNotCrashWhenDeletingRunnerManager()
+    {
+        RunnerManager manager;
+        manager.setAllowedRunners({QStringLiteral("fakerunnerplugin")});
+        
manager.loadRunner(KPluginMetaData::findPluginById(QStringLiteral("krunnertest"),
 QStringLiteral("fakerunnerplugin")));
+
+        QCOMPARE(manager.runners().size(), 1);
+
+        manager.launchQuery("somequery");
+    }
 };
 
 QTEST_MAIN(RunnerManagerTest)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/declarative/runnermodel.cpp 
new/krunner-5.101.0/src/declarative/runnermodel.cpp
--- old/krunner-5.100.0/src/declarative/runnermodel.cpp 2022-11-05 
13:31:26.000000000 +0100
+++ new/krunner-5.101.0/src/declarative/runnermodel.cpp 2022-12-03 
10:51:08.000000000 +0100
@@ -64,8 +64,8 @@
 void RunnerModel::setRunners(const QStringList &allowedRunners)
 {
     // use sets to ensure comparison is order-independent
-    const auto runners = this->runners();
-    if (QSet<QString>(allowedRunners.begin(), allowedRunners.end()) == 
QSet<QString>(runners.begin(), runners.end())) {
+    const auto runnersIds = this->runners();
+    if (QSet<QString>(allowedRunners.begin(), allowedRunners.end()) == 
QSet<QString>(runnersIds.begin(), runnersIds.end())) {
         return;
     }
     if (m_manager) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/declarative/runnermodel.h 
new/krunner-5.101.0/src/declarative/runnermodel.h
--- old/krunner-5.100.0/src/declarative/runnermodel.h   2022-11-05 
13:31:26.000000000 +0100
+++ new/krunner-5.101.0/src/declarative/runnermodel.h   2022-12-03 
10:51:08.000000000 +0100
@@ -67,7 +67,7 @@
         Actions,
     };
 
-    RunnerModel(QObject *parent = nullptr);
+    explicit RunnerModel(QObject *parent = nullptr);
     QHash<int, QByteArray> roleNames() const override;
 
     QString currentQuery() const;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/querymatch.cpp 
new/krunner-5.101.0/src/querymatch.cpp
--- old/krunner-5.100.0/src/querymatch.cpp      2022-11-05 13:31:26.000000000 
+0100
+++ new/krunner-5.101.0/src/querymatch.cpp      2022-12-03 10:51:08.000000000 
+0100
@@ -162,9 +162,9 @@
     d->data = data;
 
     if (d->id.isEmpty() || d->idSetByData) {
-        const QString id = data.toString();
-        if (!id.isEmpty()) {
-            setId(data.toString());
+        const QString matchId = data.toString();
+        if (!matchId.isEmpty()) {
+            setId(matchId);
             d->idSetByData = true;
         }
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/runnercontext.cpp 
new/krunner-5.101.0/src/runnercontext.cpp
--- old/krunner-5.100.0/src/runnercontext.cpp   2022-11-05 13:31:26.000000000 
+0100
+++ new/krunner-5.101.0/src/runnercontext.cpp   2022-12-03 10:51:08.000000000 
+0100
@@ -38,14 +38,14 @@
 class RunnerContextPrivate : public QSharedData
 {
 public:
-    RunnerContextPrivate(RunnerContext *context)
+    explicit RunnerContextPrivate(RunnerContext *context)
         : QSharedData()
         , type(RunnerContext::UnknownType)
         , q(context)
     {
     }
 
-    RunnerContextPrivate(const RunnerContextPrivate &p)
+    explicit RunnerContextPrivate(const RunnerContextPrivate &p)
         : QSharedData()
         , launchCounts(p.launchCounts)
         , type(RunnerContext::None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/runnerjobs_p.h 
new/krunner-5.101.0/src/runnerjobs_p.h
--- old/krunner-5.100.0/src/runnerjobs_p.h      2022-11-05 13:31:26.000000000 
+0100
+++ new/krunner-5.101.0/src/runnerjobs_p.h      2022-12-03 10:51:08.000000000 
+0100
@@ -119,7 +119,7 @@
 {
     Q_OBJECT
 public:
-    DelayedJobCleaner(const QSet<QSharedPointer<FindMatchesJob>> &jobs, const 
QSet<AbstractRunner *> &runners = QSet<AbstractRunner *>());
+    explicit DelayedJobCleaner(const QSet<QSharedPointer<FindMatchesJob>> 
&jobs, const QSet<AbstractRunner *> &runners = QSet<AbstractRunner *>());
     ~DelayedJobCleaner() override;
 
 private Q_SLOTS:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunner-5.100.0/src/runnermanager.cpp 
new/krunner-5.101.0/src/runnermanager.cpp
--- old/krunner-5.100.0/src/runnermanager.cpp   2022-11-05 13:31:26.000000000 
+0100
+++ new/krunner-5.101.0/src/runnermanager.cpp   2022-12-03 10:51:08.000000000 
+0100
@@ -568,7 +568,13 @@
 RunnerManager::~RunnerManager()
 {
     if (!qApp->closingDown() && (!d->searchJobs.isEmpty() || 
!d->oldSearchJobs.isEmpty())) {
-        new DelayedJobCleaner(d->searchJobs + d->oldSearchJobs);
+        const QSet<QSharedPointer<FindMatchesJob>> jobs(d->searchJobs + 
d->oldSearchJobs);
+        QSet<AbstractRunner *> runners;
+        for (auto &job : jobs) {
+            job->runner()->setParent(nullptr);
+            runners << job->runner();
+        }
+        new DelayedJobCleaner(jobs, runners);
     }
 }
 

Reply via email to