Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kf6-krunner for openSUSE:Factory checked in at 2025-11-17 12:11:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kf6-krunner (Old) and /work/SRC/openSUSE:Factory/.kf6-krunner.new.2061 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kf6-krunner" Mon Nov 17 12:11:43 2025 rev:21 rq:1317909 version:6.20.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kf6-krunner/kf6-krunner.changes 2025-10-12 22:23:45.648206781 +0200 +++ /work/SRC/openSUSE:Factory/.kf6-krunner.new.2061/kf6-krunner.changes 2025-11-17 12:18:41.453909865 +0100 @@ -1,0 +2,12 @@ +Thu Nov 13 20:58:58 UTC 2025 - Christophe Marin <[email protected]> + +- Update to 6.20.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/frameworks/6/6.20.0 +- Changes since 6.19.0: + * Update dependency version to 6.20.0 + * manager,context: remove launchcount adjustment + * Update version to 6.20.0 + +------------------------------------------------------------------- Old: ---- krunner-6.19.0.tar.xz krunner-6.19.0.tar.xz.sig New: ---- krunner-6.20.0.tar.xz krunner-6.20.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kf6-krunner.spec ++++++ --- /var/tmp/diff_new_pack.cuB3Pd/_old 2025-11-17 12:18:42.489953554 +0100 +++ /var/tmp/diff_new_pack.cuB3Pd/_new 2025-11-17 12:18:42.489953554 +0100 @@ -19,11 +19,11 @@ %define qt6_version 6.8.0 %define rname krunner -# Full KF6 version (e.g. 6.19.0) +# Full KF6 version (e.g. 6.20.0) %{!?_kf6_version: %global _kf6_version %{version}} %bcond_without released Name: kf6-krunner -Version: 6.19.0 +Version: 6.20.0 Release: 0 Summary: KDE Framework for providing different actions given a string query License: LGPL-2.1-or-later ++++++ krunner-6.19.0.tar.xz -> krunner-6.20.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/CMakeLists.txt new/krunner-6.20.0/CMakeLists.txt --- old/krunner-6.19.0/CMakeLists.txt 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/CMakeLists.txt 2025-11-07 20:03:05.000000000 +0100 @@ -3,13 +3,13 @@ cmake_minimum_required(VERSION 3.16) -set(KF_VERSION "6.19.0") # handled by release scripts -set(KF_DEP_VERSION "6.19.0") # handled by release scripts +set(KF_VERSION "6.20.0") # handled by release scripts +set(KF_DEP_VERSION "6.20.0") # handled by release scripts project(KRunner VERSION ${KF_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 6.19.0 NO_MODULE) +find_package(ECM 6.20.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) @@ -41,7 +41,7 @@ ) # Dependencies -set(REQUIRED_QT_VERSION 6.7.0) +set(REQUIRED_QT_VERSION 6.8.0) find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Gui) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/autotests/runnermanagerhistorytest.cpp new/krunner-6.20.0/autotests/runnermanagerhistorytest.cpp --- old/krunner-6.19.0/autotests/runnermanagerhistorytest.cpp 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/autotests/runnermanagerhistorytest.cpp 2025-11-07 20:03:05.000000000 +0100 @@ -55,7 +55,6 @@ void testRunnerHistory(); void testRunnerHistory_data(); void testHistorySuggestionsAndRemoving(); - void testRelevanceForOftenLaunched(); }; void RunnerManagerHistoryTest::testRunnerHistory() @@ -101,43 +100,6 @@ QCOMPARE(manager.getHistorySuggestion("t"), "test2"); } -void RunnerManagerHistoryTest::testRelevanceForOftenLaunched() -{ - { - KConfig cfg(stateConfigFile); - cfg.group("PlasmaRunnerManager").writeEntry("LaunchCounts", "5 foo"); - cfg.sync(); - } - std::unique_ptr<RunnerManager> manager(new RunnerManager()); - manager->setAllowedRunners({QStringLiteral("fakerunnerplugin")}); - manager->loadRunner(KPluginMetaData::findPluginById(QStringLiteral("krunnertest"), QStringLiteral("fakerunnerplugin"))); - - launchQuery(QStringLiteral("foo"), manager.get()); - - const auto matches = manager->matches(); - QCOMPARE(matches.size(), 2); - QCOMPARE(matches.at(0).id(), QStringLiteral("foo")); - QCOMPARE(matches.at(1).id(), QStringLiteral("bar")); - QCOMPARE(matches.at(1).relevance(), 0.2); - - QVERIFY(matches.at(0).relevance() > matches.at(1).relevance()); - QVERIFY(matches.at(0).relevance() < 0.6); // 0.5 is the max we add as a bonus, 0.1 comes from the runner - { - KConfig cfg(stateConfigFile); - cfg.group("PlasmaRunnerManager").writeEntry("LaunchCounts", QStringList{"5 foo", "5 bar"}); - cfg.sync(); - KSharedConfig::openConfig(QStringLiteral("krunnerstaterc"), KConfig::NoGlobals, QStandardPaths::GenericDataLocation)->reparseConfiguration(); - } - manager = std::make_unique<RunnerManager>(); - manager->setAllowedRunners({QStringLiteral("fakerunnerplugin")}); - manager->loadRunner(KPluginMetaData::findPluginById(QStringLiteral("krunnertest"), QStringLiteral("fakerunnerplugin"))); - - launchQuery(QStringLiteral("foo"), manager.get()); - const auto newMatches = manager->matches(); - QCOMPARE(newMatches.size(), 2); - QVERIFY(newMatches.at(0).relevance() < newMatches.at(1).relevance()); -} - QTEST_MAIN(RunnerManagerHistoryTest) #include "runnermanagerhistorytest.moc" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/autotests/runnermanagertest.cpp new/krunner-6.20.0/autotests/runnermanagertest.cpp --- old/krunner-6.19.0/autotests/runnermanagertest.cpp 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/autotests/runnermanagertest.cpp 2025-11-07 20:03:05.000000000 +0100 @@ -139,8 +139,6 @@ spyQueryFinished.wait(); manager.run(manager.matches().constFirst()); manager.matchSessionComplete(); - QCOMPARE(stateGrp.readEntry("LaunchCounts"), "1 foo"); - QCOMPARE(stateGrp.config()->groupList().size(), 1); } void testRunnerSuspendWhileReloadingConfig() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/src/runnercontext.cpp new/krunner-6.20.0/src/runnercontext.cpp --- old/krunner-6.19.0/src/runnercontext.cpp 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/src/runnercontext.cpp 2025-11-07 20:03:05.000000000 +0100 @@ -37,8 +37,6 @@ RunnerContextPrivate(const RunnerContextPrivate &p) : QSharedData(p) , m_manager(p.m_manager) - , launchCounts(p.launchCounts) - , changedLaunchCounts(p.changedLaunchCounts) { } @@ -81,8 +79,6 @@ QPointer<RunnerManager> m_manager; bool m_isValid = true; QList<QueryMatch> matches; - QHash<QString, int> launchCounts; - int changedLaunchCounts = 0; // We want to sync them while the app is running, but for each query it is overkill QString term; bool singleRunnerQueryMode = false; bool shouldIgnoreCurrentMatchForHistory = false; @@ -192,12 +188,7 @@ { QWriteLocker locker(&d->lock); - for (QueryMatch match : matches) { - // Give previously launched matches a slight boost in relevance - // The boost smoothly saturates to 0.5; - if (int count = d->launchCounts.value(match.id())) { - match.setRelevance(match.relevance() + 0.5 * (1 - exp(-count * 0.3))); - } + for (const QueryMatch &match : matches) { d->addMatch(match); } } @@ -244,49 +235,19 @@ return d->shouldIgnoreCurrentMatchForHistory; } -/*! - * Sets the launch counts for the associated match ids - * - * If a runner adds a match to this context, the context will check if the - * match id has been launched before and increase the matches relevance - * correspondingly. In this manner, any front end can implement adaptive search - * by sorting items according to relevance. - * - * @param config the config group where launch data was stored - */ -void RunnerContext::restore(const KConfigGroup &config) +void RunnerContext::restore([[maybe_unused]] const KConfigGroup &config) { - const QStringList cfgList = config.readEntry("LaunchCounts", QStringList()); - - for (const QString &entry : cfgList) { - if (int idx = entry.indexOf(QLatin1Char(' ')); idx != -1) { - const int count = QStringView(entry).mid(0, idx).toInt(); - const QString id = entry.mid(idx + 1); - d->launchCounts[id] = count; - } - } + // TODO KF7: Drop } -void RunnerContext::save(KConfigGroup &config) +void RunnerContext::save([[maybe_unused]] KConfigGroup &config) { - if (d->changedLaunchCounts == 0) { - return; - } - d->changedLaunchCounts = 0; - QStringList countList; - countList.reserve(d->launchCounts.size()); - for (auto it = d->launchCounts.cbegin(), end = d->launchCounts.cend(); it != end; ++it) { - countList << QString::number(it.value()) + QLatin1Char(' ') + it.key(); - } - - config.writeEntry("LaunchCounts", countList); - config.sync(); + // TODO KF7: Drop } -void RunnerContext::increaseLaunchCount(const QueryMatch &match) +void RunnerContext::increaseLaunchCount([[maybe_unused]] const QueryMatch &match) { - ++d->launchCounts[match.id()]; - ++d->changedLaunchCounts; + // TODO KF7: Drop } QString RunnerContext::requestedQueryString() const diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/src/runnermanager.cpp new/krunner-6.20.0/src/runnermanager.cpp --- old/krunner-6.19.0/src/runnermanager.cpp 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/src/runnermanager.cpp 2025-11-07 20:03:05.000000000 +0100 @@ -54,7 +54,6 @@ QObject::connect(q, &RunnerManager::matchesChanged, q, [&] { lastMatchChangeSignalled.restart(); }); - loadConfiguration(); } void scheduleMatchesChanged() @@ -89,12 +88,6 @@ Q_EMIT q->matchesChanged(context.matches()); } - void loadConfiguration() - { - const KConfigGroup generalConfig = pluginConf.config()->group(QStringLiteral("General")); - context.restore(stateData); - } - void loadSingleRunner() { // In case we are not in the single runner mode of we do not have an id @@ -412,7 +405,6 @@ { d->pluginConf.config()->reparseConfiguration(); d->stateData.config()->reparseConfiguration(); - d->loadConfiguration(); d->loadRunners(); } @@ -477,8 +469,6 @@ QueryMatch m = match; m.setSelectedAction(selectedAction); m.runner()->run(d->context, m); - // To allow the RunnerContext to increase the relevance of often launched apps - d->context.increaseLaunchCount(m); if (!d->context.shouldIgnoreCurrentMatchForHistory()) { d->addToHistory(); @@ -549,9 +539,6 @@ } d->teardown(); - // We save the context config after each session, just like the history entries - // BUG: 424505 - d->context.save(d->stateData); } void RunnerManager::launchQuery(const QString &untrimmedTerm, const QString &runnerName) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/templates/runner6/runner.kdevtemplate new/krunner-6.20.0/templates/runner6/runner.kdevtemplate --- old/krunner-6.19.0/templates/runner6/runner.kdevtemplate 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/templates/runner6/runner.kdevtemplate 2025-11-07 20:03:05.000000000 +0100 @@ -44,6 +44,7 @@ Comment[bg]=Plasma Runner шаблон Comment[ca]=Plantilla de Runner del Plasma. Una plantilla de «Runner» per al Plasma Comment[ca@valencia]=Plantilla de Runner de Plasma. Una plantilla de «Runner» per a Plasma +Comment[cs]=Šablona spouštěče Plasma Comment[da]=Skabelon til Plasma-runner. En skabelon til en Plasma-runner Comment[de]=Eine Vorlage für einen Plasma-Runner Comment[el]=Πρότυπο Plasma Runner. ένα πρότυπο εκτελεστή plasma diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krunner-6.19.0/templates/runner6python/runnerpy.kdevtemplate new/krunner-6.20.0/templates/runner6python/runnerpy.kdevtemplate --- old/krunner-6.19.0/templates/runner6python/runnerpy.kdevtemplate 2025-10-05 14:38:45.000000000 +0200 +++ new/krunner-6.20.0/templates/runner6python/runnerpy.kdevtemplate 2025-11-07 20:03:05.000000000 +0100 @@ -42,6 +42,7 @@ Comment[bg]=Шаблон за KRunner Python Plugin използващ D-Bus Comment[ca]=Plantilla per a un connector Python del KRunner usant D-Bus Comment[ca@valencia]=Plantilla per a un connector en Python de KRunner utilitzant D-Bus +Comment[cs]=Šablona pro pythonový zásuvný modul KRunneru používající D-Bus Comment[da]=Skabelon til et KRunner Python-plugin med brug af D-Bus Comment[de]=Vorlage für ein KRunner-Modul für Python, das D-Bus verwendet Comment[el]=Πρότυπο για ένα πρόσθετο του KRunner σε Python με χρήση D-Bus
