Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kf6-ktexttemplate for 
openSUSE:Factory checked in at 2026-08-17 16:57:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-ktexttemplate (Old)
 and      /work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kf6-ktexttemplate"

Mon Aug 17 16:57:14 2026 rev:30 rq:1371407 version:6.29.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-ktexttemplate/kf6-ktexttemplate.changes      
2026-07-15 16:41:00.665273173 +0200
+++ 
/work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1258/kf6-ktexttemplate.changes
    2026-08-17 17:00:38.117514029 +0200
@@ -1,0 +2,17 @@
+Sun Aug  9 10:38:46 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.29.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/6/6.29.0
+- Changes since 6.28.0:
+  * Update dependency version to 6.29.0
+  * Consider non-empty generic containers "true" as well
+  * Turn scriptable tag support in a plugin, as originally intended
+  * Use QLocale for currency value formatting
+  * Don't hardcode ISO date/time format
+  * token.h: provide version macros to consumers
+  * Out-of-line the ScriptableTagLibrary destructor
+  * Update version to 6.29.0
+
+-------------------------------------------------------------------

Old:
----
  ktexttemplate-6.28.0.tar.xz
  ktexttemplate-6.28.0.tar.xz.sig

New:
----
  ktexttemplate-6.29.0.tar.xz
  ktexttemplate-6.29.0.tar.xz.sig

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

Other differences:
------------------
++++++ kf6-ktexttemplate.spec ++++++
--- /var/tmp/diff_new_pack.J0rdoN/_old  2026-08-17 17:00:39.101548797 +0200
+++ /var/tmp/diff_new_pack.J0rdoN/_new  2026-08-17 17:00:39.104548903 +0200
@@ -19,11 +19,11 @@
 %define qt6_version 6.9.0
 
 %define rname ktexttemplate
-# Full KF6 version (e.g. 6.28.0)
+# Full KF6 version (e.g. 6.29.0)
 %{!?_kf6_version: %global _kf6_version %{version}}
 %bcond_without released
 Name:           kf6-ktexttemplate
-Version:        6.28.0
+Version:        6.29.0
 Release:        0
 Summary:        String template library
 License:        LGPL-2.1-or-later

++++++ ktexttemplate-6.28.0.tar.xz -> ktexttemplate-6.29.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/CMakeLists.txt 
new/ktexttemplate-6.29.0/CMakeLists.txt
--- old/ktexttemplate-6.28.0/CMakeLists.txt     2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/CMakeLists.txt     2026-08-07 22:42:58.000000000 
+0200
@@ -1,10 +1,10 @@
 cmake_minimum_required(VERSION 3.29)
 
-set(KF_VERSION "6.28.0") # handled by release scripts
+set(KF_VERSION "6.29.0") # handled by release scripts
 project(KTextTemplate VERSION ${KF_VERSION})
 
 include(FeatureSummary)
-find_package(ECM 6.28.0  CONFIG)
+find_package(ECM 6.29.0  CONFIG)
 set_package_properties(ECM PROPERTIES
   TYPE REQUIRED
   DESCRIPTION "Extra CMake Modules."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/autotests/testdefaulttags.cpp 
new/ktexttemplate-6.29.0/autotests/testdefaulttags.cpp
--- old/ktexttemplate-6.28.0/autotests/testdefaulttags.cpp      2026-07-03 
13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/autotests/testdefaulttags.cpp      2026-08-07 
22:42:58.000000000 +0200
@@ -19,6 +19,8 @@
 #include "template.h"
 #include "util.h"
 
+using namespace Qt::Literals;
+
 using Table = QList<QVariantList>;
 using Dict = QHash<QString, QVariant>;
 using StringPair = std::pair<QString, QString>;
@@ -888,6 +890,12 @@
     dict.insert(QStringLiteral("var"), f);
     QTest::newRow("if-truthiness12") << QStringLiteral("{% if var %}Yes{% else 
%}No{% endif %}") << dict << QStringLiteral("Yes") << NoError;
 
+    // generic containers
+    dict.insert(u"nostrings"_s, QStringList());
+    dict.insert(u"strings"_s, QStringList({u"foo"_s}));
+    QTest::newRow("if-thruthiness13") << u"{% if nostrings %}Yes{% else %}No{% 
endif %}"_s << dict << u"No"_s << NoError;
+    QTest::newRow("if-thruthiness14") << u"{% if strings %}Yes{% else %}No{% 
endif %}"_s << dict << u"Yes"_s << NoError;
+
     dict.clear();
     QTest::newRow("if-tag-badarg01") << QStringLiteral("{% if 
x|default_if_none:y %}yes{% endif %}") << dict << QString() << NoError;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/CMakeLists.txt 
new/ktexttemplate-6.29.0/src/CMakeLists.txt
--- old/ktexttemplate-6.28.0/src/CMakeLists.txt 2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/src/CMakeLists.txt 2026-08-07 22:42:58.000000000 
+0200
@@ -8,3 +8,7 @@
 
 add_subdirectory(i18n)
 
+if(Qt6Qml_FOUND)
+    add_subdirectory(scriptabletags)
+endif()
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/defaultfilters/datetime.cpp 
new/ktexttemplate-6.29.0/src/defaultfilters/datetime.cpp
--- old/ktexttemplate-6.28.0/src/defaultfilters/datetime.cpp    2026-07-03 
13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/defaultfilters/datetime.cpp    2026-08-07 
22:42:58.000000000 +0200
@@ -78,7 +78,7 @@
     } else if (input.userType() == QMetaType::QTime) {
         d.setTime(input.toTime());
     } else {
-        d = QDateTime::fromString(getSafeString(input), 
QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz"));
+        d = QDateTime::fromString(getSafeString(input), Qt::ISODateWithMs);
     }
 
     auto argString = getSafeString(argument);
@@ -100,7 +100,7 @@
     } else if (input.userType() == QMetaType::QTime) {
         d.setTime(input.toTime());
     } else {
-        d = QDateTime::fromString(getSafeString(input), 
QStringLiteral("yyyy-MM-ddThh:mm:ss.zzz"));
+        d = QDateTime::fromString(getSafeString(input), Qt::ISODateWithMs);
     }
 
     auto argString = getSafeString(argument);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/CMakeLists.txt 
new/ktexttemplate-6.29.0/src/lib/CMakeLists.txt
--- old/ktexttemplate-6.28.0/src/lib/CMakeLists.txt     2026-07-03 
13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/lib/CMakeLists.txt     2026-08-07 
22:42:59.000000000 +0200
@@ -116,30 +116,6 @@
     REQUIRED_HEADERS KTextTemplate_HEADERS
 )
 
-if (Qt6Qml_FOUND)
-  set(scriptabletags_FILES
-    scriptablecontext.cpp
-    scriptablefilterexpression.cpp
-    scriptablenode.cpp
-    scriptableparser.cpp
-    scriptablesafestring.cpp
-    scriptabletags.cpp
-    scriptabletemplate.cpp
-    scriptablevariable.cpp
-    scriptablefilter.cpp
-    )
-
-  foreach(file ${scriptabletags_FILES})
-    list(APPEND scriptabletags_SRCS 
${CMAKE_SOURCE_DIR}/src/scriptabletags/${file})
-  endforeach()
-
-  target_sources(KF6TextTemplate PRIVATE ${scriptabletags_SRCS})
-  target_include_directories(KF6TextTemplate PRIVATE ../scriptabletags)
-  target_link_libraries(KF6TextTemplate
-    PRIVATE Qt6::Qml
-  )
-endif()
-
 if (BUILD_TESTING)
   set(KTEXTTEMPLATE_TESTS_EXPORT "KTEXTTEMPLATE_EXPORT")
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/engine.cpp 
new/ktexttemplate-6.29.0/src/lib/engine.cpp
--- old/ktexttemplate-6.28.0/src/lib/engine.cpp 2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/src/lib/engine.cpp 2026-08-07 22:42:59.000000000 
+0200
@@ -12,9 +12,6 @@
 
 #include "exception.h"
 #include "ktexttemplate_config_p.h"
-#ifdef QT_QML_LIB
-#include "scriptabletags.h"
-#endif
 #include "template_p.h"
 
 #include <QCoreApplication>
@@ -22,9 +19,10 @@
 #include <QPluginLoader>
 #include <QTextStream>
 
+using namespace Qt::Literals;
 using namespace KTextTemplate;
 
-static const char s_scriptableLibName[] = "ktexttemplate_scriptabletags";
+inline constexpr const auto s_scriptableLibName = 
"ktexttemplate_scriptabletags"_L1;
 
 Engine::Engine(QObject *parent)
     : QObject(parent)
@@ -39,9 +37,7 @@
 
 Engine::~Engine()
 {
-#ifdef QT_QML_LIB
     qDeleteAll(d_ptr->m_scriptableLibraries);
-#endif
     d_ptr->m_libraries.clear();
     delete d_ptr;
 }
@@ -120,33 +116,25 @@
 {
     Q_D(Engine);
 
-#ifdef QT_QML_LIB
     // Make sure we can load default scriptable libraries if we're supposed to.
-    if (d->m_defaultLibraries.contains(QLatin1String(s_scriptableLibName)) && 
!d->m_scriptableTagLibrary) {
-        d->m_scriptableTagLibrary = new ScriptableTagLibrary(this);
-
-// It would be better to load this as a plugin, but that is not currently
-// possible with webkit/javascriptcore
-// so we new the library directly.
-// https://bugs.webkit.org/show_bug.cgi?id=38193
-#if 0
-    d->loadCppLibrary( s_scriptableLibName );
-    PluginPointer<TagLibraryInterface> library = d->loadCppLibrary( 
s_scriptableLibName );
-    if ( !library )
-      throw KTextTemplate::Exception( TagSyntaxError, QStringLiteral("Could 
not load scriptable tags library") );
-#endif
+    if (d->m_defaultLibraries.contains(s_scriptableLibName)) {
+        d->loadCppLibrary(s_scriptableLibName);
+        PluginPointer<TagLibraryInterface> library = 
d->loadCppLibrary(s_scriptableLibName);
+        if (!library) {
+            throw KTextTemplate::Exception(TagSyntaxError, 
QStringLiteral("Could not load scriptable tags library"));
+        }
     }
-#endif
 
     for (const QString &libName : std::as_const(d->m_defaultLibraries)) {
-        if (libName == QLatin1String(s_scriptableLibName))
+        if (libName == s_scriptableLibName) {
             continue;
+        }
 
         // already loaded by the engine.
-        if (d->m_libraries.contains(libName))
+        if (d->m_libraries.contains(libName)) {
             continue;
+        }
 
-#ifdef QT_QML_LIB
         // Although we don't use scripted libaries here, we need to
         // recognize them being first in the search path and not load a
         // c++ plugin of the same name in that case.
@@ -155,7 +143,6 @@
             scriptableLibrary->clear();
             break;
         }
-#endif
 
         auto library = d->loadCppLibrary(libName);
         if (library) {
@@ -168,11 +155,6 @@
 {
     Q_D(Engine);
 
-#ifdef QT_QML_LIB
-    if (name == QLatin1String(s_scriptableLibName))
-        return nullptr;
-#endif
-
     // already loaded by the engine.
     if (d->m_libraries.contains(name))
         return d->m_libraries.value(name).data();
@@ -187,22 +169,17 @@
 
 TagLibraryInterface *EnginePrivate::loadLibrary(const QString &name)
 {
-#ifdef QT_QML_LIB
     auto scriptableLibrary = loadScriptableLibrary(name);
-    if (scriptableLibrary)
+    if (scriptableLibrary) {
         return scriptableLibrary;
+    }
 
-// else this is not a scriptable library.
-#endif
-
+    // else this is not a scriptable library.
     return loadCppLibrary(name).data();
 }
 
 EnginePrivate::EnginePrivate(Engine *engine)
     : q_ptr(engine)
-#ifdef QT_QML_LIB
-    , m_scriptableTagLibrary(nullptr)
-#endif
     , m_smartTrimEnabled(false)
 {
 }
@@ -232,41 +209,33 @@
     return {};
 }
 
-#ifdef QT_QML_LIB
 ScriptableLibraryContainer *EnginePrivate::loadScriptableLibrary(const QString 
&name)
 {
-    if (!m_scriptableTagLibrary)
+    auto scriptableTagLibrary = m_libraries.value(s_scriptableLibName);
+    if (!scriptableTagLibrary) {
         return nullptr;
-
-#if 0
-  if ( !m_libraries.contains( s_scriptableLibName ) )
-    return 0;
-#endif
+    }
 
     const auto libFileName = getScriptLibraryName(name);
-
-    if (libFileName.isEmpty())
+    if (libFileName.isEmpty()) {
         return nullptr;
+    }
 
     const auto it = m_scriptableLibraries.constFind(libFileName);
     if (it != m_scriptableLibraries.constEnd()) {
         auto library = it.value();
-        
library->setNodeFactories(m_scriptableTagLibrary->nodeFactories(libFileName));
-        library->setFilters(m_scriptableTagLibrary->filters(libFileName));
+        
library->setNodeFactories(scriptableTagLibrary->nodeFactories(libFileName));
+        library->setFilters(scriptableTagLibrary->filters(libFileName));
         return library;
     }
-#if 0
-  PluginPointer<TagLibraryInterface> scriptableTagLibrary = m_libraries.value( 
s_scriptableLibName );
-#endif
 
-    const auto factories = m_scriptableTagLibrary->nodeFactories(libFileName);
-    const auto filters = m_scriptableTagLibrary->filters(libFileName);
+    const auto factories = scriptableTagLibrary->nodeFactories(libFileName);
+    const auto filters = scriptableTagLibrary->filters(libFileName);
 
     auto library = new ScriptableLibraryContainer(factories, filters);
     m_scriptableLibraries.insert(libFileName, library);
     return library;
 }
-#endif
 
 PluginPointer<TagLibraryInterface> EnginePrivate::loadCppLibrary(const QString 
&name)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/engine_p.h 
new/ktexttemplate-6.29.0/src/lib/engine_p.h
--- old/ktexttemplate-6.28.0/src/lib/engine_p.h 2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/src/lib/engine_p.h 2026-08-07 22:42:59.000000000 
+0200
@@ -71,25 +71,18 @@
 
     TagLibraryInterface *loadLibrary(const QString &name);
     QString getScriptLibraryName(const QString &name) const;
-#ifdef QT_QML_LIB
     ScriptableLibraryContainer *loadScriptableLibrary(const QString &name);
-#endif
     PluginPointer<TagLibraryInterface> loadCppLibrary(const QString &name);
 
     Q_DECLARE_PUBLIC(Engine)
     Engine *const q_ptr;
 
     QHash<QString, PluginPointer<TagLibraryInterface>> m_libraries;
-#ifdef QT_QML_LIB
     QHash<QString, ScriptableLibraryContainer *> m_scriptableLibraries;
-#endif
 
     QList<QSharedPointer<AbstractTemplateLoader>> m_loaders;
     QStringList m_pluginDirs;
     QStringList m_defaultLibraries;
-#ifdef QT_QML_LIB
-    ScriptableTagLibrary *m_scriptableTagLibrary;
-#endif
     bool m_smartTrimEnabled;
 };
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/pluginpointer_p.h 
new/ktexttemplate-6.29.0/src/lib/pluginpointer_p.h
--- old/ktexttemplate-6.28.0/src/lib/pluginpointer_p.h  2026-07-03 
13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/lib/pluginpointer_p.h  2026-08-07 
22:42:59.000000000 +0200
@@ -10,6 +10,7 @@
 #ifndef KTEXTTEMPLATE_PLUGINPOINTER_H
 #define KTEXTTEMPLATE_PLUGINPOINTER_H
 
+#include <QCoreApplication>
 #include <QPluginLoader>
 #include <QSharedPointer>
 
@@ -46,6 +47,7 @@
         // that
         // causes segfaults if the plugin has been unloaded.
         m_object = m_pluginLoader->instance();
+        m_object->setParent(QCoreApplication::instance());
 
         m_plugin = qobject_cast<PluginType *>(m_object);
     }
@@ -65,9 +67,9 @@
         return m_plugin;
     }
 
-    operator bool()
+    operator bool() const
     {
-        return m_plugin ? true : false;
+        return m_plugin;
     }
 
     PluginType *data() const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/qtlocalizer.cpp 
new/ktexttemplate-6.29.0/src/lib/qtlocalizer.cpp
--- old/ktexttemplate-6.28.0/src/lib/qtlocalizer.cpp    2026-07-03 
13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/lib/qtlocalizer.cpp    2026-08-07 
22:42:59.000000000 +0200
@@ -211,7 +211,7 @@
     } else {
         currencySymbol = currencyCode;
     }
-    return currencySymbol + QLatin1Char(' ') + 
d->currentLocale().toString(value, 'f', 2);
+    return d->currentLocale().toCurrencyString(value, currencySymbol);
 }
 
 static QString substituteArguments(const QString &input, const QVariantList 
&arguments)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/token.h 
new/ktexttemplate-6.29.0/src/lib/token.h
--- old/ktexttemplate-6.28.0/src/lib/token.h    2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/src/lib/token.h    2026-08-07 22:42:59.000000000 
+0200
@@ -10,6 +10,11 @@
 #ifndef KTEXTTEMPLATE_TOKEN_H
 #define KTEXTTEMPLATE_TOKEN_H
 
+// All KF6 public headers should provide the version macros.
+// Include version header explicitly because the export header
+// (which usually takes care of that) isn't used here
+#include <ktexttemplate_version.h> // IWYU pragma: export
+
 #include <QString>
 
 namespace KTextTemplate
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.28.0/src/lib/util.cpp 
new/ktexttemplate-6.29.0/src/lib/util.cpp
--- old/ktexttemplate-6.28.0/src/lib/util.cpp   2026-07-03 13:00:23.000000000 
+0200
+++ new/ktexttemplate-6.29.0/src/lib/util.cpp   2026-08-07 22:42:59.000000000 
+0200
@@ -11,6 +11,8 @@
 
 #include "metaenumvariable_p.h"
 
+#include <QAssociativeIterable>
+#include <QSequentialIterable>
 #include <QStringList>
 
 QString KTextTemplate::unescapeStringLiteral(const QString &input)
@@ -68,6 +70,16 @@
     }
     }
 
+    // consider any non-empty generic container also "true", like the specific 
vairant types
+    if (variant.canConvert<QVariantList>()) {
+        const auto iterable = variant.value<QSequentialIterable>();
+        return iterable.begin() != iterable.end();
+    }
+    if (variant.canConvert<QVariantHash>()) {
+        const auto iterable = variant.value<QAssociativeIterable>();
+        return iterable.begin() != iterable.end();
+    }
+
     return !getSafeString(variant).get().isEmpty();
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ktexttemplate-6.28.0/src/scriptabletags/CMakeLists.txt 
new/ktexttemplate-6.29.0/src/scriptabletags/CMakeLists.txt
--- old/ktexttemplate-6.28.0/src/scriptabletags/CMakeLists.txt  1970-01-01 
01:00:00.000000000 +0100
+++ new/ktexttemplate-6.29.0/src/scriptabletags/CMakeLists.txt  2026-08-07 
22:42:59.000000000 +0200
@@ -0,0 +1,27 @@
+# SPDX-FileCopyrightText: Volker Krause <[email protected]>
+# SPDX-License-Identifier: BSD-2-Clause
+
+add_library(ktexttemplate_scriptabletags MODULE
+    scriptablecontext.cpp
+    scriptablefilterexpression.cpp
+    scriptablenode.cpp
+    scriptableparser.cpp
+    scriptablesafestring.cpp
+    scriptabletags.cpp
+    scriptabletemplate.cpp
+    scriptablevariable.cpp
+    scriptablefilter.cpp
+)
+set_property(TARGET ktexttemplate_scriptabletags PROPERTY
+    EXPORT_NAME scriptabletags
+)
+target_link_libraries(ktexttemplate_scriptabletags PRIVATE
+    KF6::TextTemplate
+    Qt6::Qml
+)
+ktexttemplate_adjust_plugin_name(ktexttemplate_scriptabletags)
+
+install(TARGETS ktexttemplate_scriptabletags
+  EXPORT KF6TextTemplateTargets
+  DESTINATION ${KTextTemplate_INSTALL_PLUGINDIR}
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ktexttemplate-6.28.0/src/scriptabletags/scriptabletags.cpp 
new/ktexttemplate-6.29.0/src/scriptabletags/scriptabletags.cpp
--- old/ktexttemplate-6.28.0/src/scriptabletags/scriptabletags.cpp      
2026-07-03 13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/scriptabletags/scriptabletags.cpp      
2026-08-07 22:42:59.000000000 +0200
@@ -151,6 +151,8 @@
     m_scriptEngine->globalObject().setProperty(QStringLiteral("mark_safe"), 
m_functions.property(QStringLiteral("markSafeFunction")));
 }
 
+ScriptableTagLibrary::~ScriptableTagLibrary() = default;
+
 bool ScriptableTagLibrary::evaluateScript(const QString &name)
 {
     QFile scriptFile(name);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ktexttemplate-6.28.0/src/scriptabletags/scriptabletags.h 
new/ktexttemplate-6.29.0/src/scriptabletags/scriptabletags.h
--- old/ktexttemplate-6.28.0/src/scriptabletags/scriptabletags.h        
2026-07-03 13:00:23.000000000 +0200
+++ new/ktexttemplate-6.29.0/src/scriptabletags/scriptabletags.h        
2026-08-07 22:42:59.000000000 +0200
@@ -46,6 +46,7 @@
     Q_PLUGIN_METADATA(IID "org.kde.KTextTemplate.TagLibraryInterface")
 public:
     ScriptableTagLibrary(QObject *parent = {});
+    ~ScriptableTagLibrary();
 
     QHash<QString, AbstractNodeFactory *> nodeFactories(const QString &name = 
{}) override;
 

++++++ ktexttemplate-6.28.0.tar.xz.sig -> ktexttemplate-6.29.0.tar.xz.sig ++++++
--- 
/work/SRC/openSUSE:Factory/kf6-ktexttemplate/ktexttemplate-6.28.0.tar.xz.sig    
    2026-07-15 16:41:03.825380620 +0200
+++ 
/work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1258/ktexttemplate-6.29.0.tar.xz.sig
      2026-08-17 17:00:38.273519541 +0200
@@ -1,7 +1,7 @@
 -----BEGIN PGP SIGNATURE-----
 
-iHUEABYKAB0WIQSQqWisqEU3zCe5nq8sjfWHptSqwQUCakeWSAAKCRAsjfWHptSq
-wfaRAQCMnyRoozqX+1kX3wE5Zm/6if187IlYVyjtB+EJnzu8GQD/VrL2rWYaUU6c
-fnMwhD9Ep0xUx+cG1NhK6dIqTolNBQ4=
-=qvhc
+iHUEABYKAB0WIQSQqWisqEU3zCe5nq8sjfWHptSqwQUCanZDVAAKCRAsjfWHptSq
+wdKWAQD5YxeGlAa4lpx2i3+adc/q2GBMY/17VGDwQqHdjIEEFQEAnBI2rfMuoPC0
+LaWhFU/ruYs13kXpcADFsj0JyopiIAg=
+=SLQz
 -----END PGP SIGNATURE-----

Reply via email to