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-02-16 13:04:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-ktexttemplate (Old)
 and      /work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kf6-ktexttemplate"

Mon Feb 16 13:04:08 2026 rev:24 rq:1332954 version:6.23.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-ktexttemplate/kf6-ktexttemplate.changes      
2026-01-12 10:16:59.546812883 +0100
+++ 
/work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1977/kf6-ktexttemplate.changes
    2026-02-16 13:06:54.500025759 +0100
@@ -1,0 +2,14 @@
+Fri Feb  6 14:25:59 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.23.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/6/6.23.0
+- Changes since 6.22.0:
+  * Update dependency version to 6.23.0
+  * Fix slice filter behavior
+  * Fix memory leak in unit test
+  * Enable LSAN in CI
+  * Update version to 6.23.0
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ kf6-ktexttemplate.spec ++++++
--- /var/tmp/diff_new_pack.fim0Rz/_old  2026-02-16 13:06:55.568070030 +0100
+++ /var/tmp/diff_new_pack.fim0Rz/_new  2026-02-16 13:06:55.568070030 +0100
@@ -19,11 +19,11 @@
 %define qt6_version 6.8.0
 
 %define rname ktexttemplate
-# Full KF6 version (e.g. 6.22.0)
+# Full KF6 version (e.g. 6.23.0)
 %{!?_kf6_version: %global _kf6_version %{version}}
 %bcond_without released
 Name:           kf6-ktexttemplate
-Version:        6.22.0
+Version:        6.23.0
 Release:        0
 Summary:        String template library
 License:        LGPL-2.1-or-later

++++++ ktexttemplate-6.22.0.tar.xz -> ktexttemplate-6.23.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.22.0/.kde-ci.yml 
new/ktexttemplate-6.23.0/.kde-ci.yml
--- old/ktexttemplate-6.22.0/.kde-ci.yml        2026-01-02 18:44:23.000000000 
+0100
+++ new/ktexttemplate-6.23.0/.kde-ci.yml        2026-02-06 13:17:21.000000000 
+0100
@@ -8,3 +8,4 @@
 
 Options:
  require-passing-tests-on: ['Linux', 'FreeBSD', 'Windows']
+ enable-lsan: True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.22.0/CMakeLists.txt 
new/ktexttemplate-6.23.0/CMakeLists.txt
--- old/ktexttemplate-6.22.0/CMakeLists.txt     2026-01-02 18:44:23.000000000 
+0100
+++ new/ktexttemplate-6.23.0/CMakeLists.txt     2026-02-06 13:17:21.000000000 
+0100
@@ -1,10 +1,10 @@
-cmake_minimum_required(VERSION 3.16)
+cmake_minimum_required(VERSION 3.27)
 
-set(KF_VERSION "6.22.0") # handled by release scripts
+set(KF_VERSION "6.23.0") # handled by release scripts
 project(KTextTemplate VERSION ${KF_VERSION})
 
 include(FeatureSummary)
-find_package(ECM 6.22.0  CONFIG)
+find_package(ECM 6.23.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.22.0/autotests/testbuiltins.cpp 
new/ktexttemplate-6.23.0/autotests/testbuiltins.cpp
--- old/ktexttemplate-6.22.0/autotests/testbuiltins.cpp 2026-01-02 
18:44:23.000000000 +0100
+++ new/ktexttemplate-6.23.0/autotests/testbuiltins.cpp 2026-02-06 
13:17:21.000000000 +0100
@@ -335,7 +335,8 @@
     SafeString s3(s1);
     Q_UNUSED(s3);
 
-    QMetaType{qMetaTypeId<MetaEnumVariable>()}.create(nullptr);
+    auto ptr = QMetaType{qMetaTypeId<MetaEnumVariable>()}.create(nullptr);
+    QMetaType{qMetaTypeId<MetaEnumVariable>()}.destroy(ptr);
 }
 
 void TestBuiltinSyntax::testTruthiness_data()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.22.0/autotests/testfilters.cpp 
new/ktexttemplate-6.23.0/autotests/testfilters.cpp
--- old/ktexttemplate-6.22.0/autotests/testfilters.cpp  2026-01-02 
18:44:23.000000000 +0100
+++ new/ktexttemplate-6.23.0/autotests/testfilters.cpp  2026-02-06 
13:17:21.000000000 +0100
@@ -930,6 +930,24 @@
     QTest::newRow("filter-slice04") << "{{|slice}}" << dict << 
QStringLiteral("") << NoError;
 
     dict.clear();
+    dict.insert(QStringLiteral("a"), QStringLiteral("0123456789"));
+
+    // Behavior should be consistent with python's slice notation.
+    QTest::newRow("filter-slice05") << R"({{ a|slice:"1:3" }})" << dict << 
QStringLiteral("12") << NoError;
+    QTest::newRow("filter-slice06") << R"({{ a|slice:"2:-1" }})" << dict << 
QStringLiteral("2345678") << NoError;
+    QTest::newRow("filter-slice07") << R"({{ a|slice:":-3" }})" << dict << 
QStringLiteral("0123456") << NoError;
+    QTest::newRow("filter-slice08") << R"({{ a|slice:":" }})" << dict << 
QStringLiteral("0123456789") << NoError;
+    QTest::newRow("filter-slice09") << R"({{ a|slice:":4" }})" << dict << 
QStringLiteral("0123") << NoError;
+    QTest::newRow("filter-slice10") << R"({{ a|slice:"4:" }})" << dict << 
QStringLiteral("456789") << NoError;
+    QTest::newRow("filter-slice11") << R"({{ a|slice:"-4:-2" }})" << dict << 
QStringLiteral("67") << NoError;
+    QTest::newRow("filter-slice12") << R"({{ a|slice:"-4:-5" }})" << dict << 
QStringLiteral("") << NoError;
+    QTest::newRow("filter-slice13") << R"({{ a|slice:"4:1" }})" << dict << 
QStringLiteral("") << NoError;
+    QTest::newRow("filter-slice14") << R"({{ a|slice:"4:-5" }})" << dict << 
QStringLiteral("4") << NoError;
+    QTest::newRow("filter-slice15") << R"({{ a|slice:"5:10" }})" << dict << 
QStringLiteral("56789") << NoError;
+    QTest::newRow("filter-slice16") << R"({{ a|slice:"5:20" }})" << dict << 
QStringLiteral("56789") << NoError;
+    QTest::newRow("filter-slice17") << R"({{ a|slice:"10:20" }})" << dict << 
QStringLiteral("") << NoError;
+
+    dict.clear();
     QVariantList sublist{QStringLiteral("<y")};
     dict.insert(QStringLiteral("a"), QVariantList{QStringLiteral("x>"), 
QVariant(sublist)});
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ktexttemplate-6.22.0/src/defaultfilters/lists.cpp 
new/ktexttemplate-6.23.0/src/defaultfilters/lists.cpp
--- old/ktexttemplate-6.22.0/src/defaultfilters/lists.cpp       2026-01-02 
18:44:23.000000000 +0100
+++ new/ktexttemplate-6.23.0/src/defaultfilters/lists.cpp       2026-02-06 
13:17:21.000000000 +0100
@@ -16,6 +16,8 @@
 #include <QDateTime>
 #include <QRandomGenerator>
 #include <QSequentialIterable>
+#include <QtTypes>
+#include <algorithm>
 
 QVariant JoinFilter::doFilter(const QVariant &input, const QVariant &argument, 
bool autoescape) const
 {
@@ -133,12 +135,26 @@
         return {};
 
     if (splitterIndex >= 0) {
-        auto left = argString.get().left(splitterIndex).get().toInt();
-        auto right = argString.get().right(splitterIndex).get().toInt();
-        if (right < 0) {
-            right = inputString.size() + right;
-        }
-        return inputString.mid(left, right);
+        auto startString = argString.get().left(splitterIndex);
+        auto endString = argString.get().mid(splitterIndex + 1);
+        auto getIndex = [&inputString](const auto &str, int defaultValue) -> 
qsizetype {
+            if (str.get().isEmpty()) {
+                return defaultValue;
+            }
+            bool ok;
+            int value = str.get().toInt(&ok);
+            if (!ok) {
+                return defaultValue;
+            }
+            if (value < 0) {
+                value = inputString.size() + value;
+            }
+            value = std::clamp(value, 0, static_cast<int>(inputString.size()));
+            return value;
+        };
+        int start = getIndex(startString, 0);
+        int end = getIndex(endString, inputString.size());
+        return inputString.mid(start, end > start ? (end - start) : 0);
     }
     return QString(inputString.at(argument.value<int>()));
 }

++++++ ktexttemplate-6.22.0.tar.xz.sig -> ktexttemplate-6.23.0.tar.xz.sig ++++++
--- 
/work/SRC/openSUSE:Factory/kf6-ktexttemplate/ktexttemplate-6.22.0.tar.xz.sig    
    2026-01-12 10:16:59.974830499 +0100
+++ 
/work/SRC/openSUSE:Factory/.kf6-ktexttemplate.new.1977/ktexttemplate-6.23.0.tar.xz.sig
      2026-02-16 13:06:54.856040516 +0100
@@ -1,7 +1,7 @@
 -----BEGIN PGP SIGNATURE-----
 
-iHUEABYKAB0WIQSQqWisqEU3zCe5nq8sjfWHptSqwQUCaVgD+AAKCRAsjfWHptSq
-wTqyAP495cSKqQ7b3IG7lEjGGysqBTJOxXr9wrghInbO19TcGQEAhfRLbCooPgjz
-+akHKw1Os1wnGFhGEbXGPhVFZGiIqws=
-=FrTD
+iHUEABYKAB0WIQSQqWisqEU3zCe5nq8sjfWHptSqwQUCaYXb0QAKCRAsjfWHptSq
+wR3YAQCP0neUd1RKho4RFDSncHOeRsp/GhRq1MgsmpXW50zxwQEA+Y4TVMdEd1Hp
+DDavNuyEnh2oSocTcoGyQPX85Pwljg0=
+=6c/g
 -----END PGP SIGNATURE-----

Reply via email to