Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kf6-ki18n for openSUSE:Factory 
checked in at 2026-05-11 16:51:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-ki18n (Old)
 and      /work/SRC/openSUSE:Factory/.kf6-ki18n.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kf6-ki18n"

Mon May 11 16:51:24 2026 rev:28 rq:1352086 version:6.26.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-ki18n/kf6-ki18n.changes      2026-04-11 
22:28:04.220550540 +0200
+++ /work/SRC/openSUSE:Factory/.kf6-ki18n.new.1966/kf6-ki18n.changes    
2026-05-11 16:57:06.456227440 +0200
@@ -1,0 +2,17 @@
+Sat May  2 07:52:38 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.26.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/6/6.26.0
+- Changes since 6.25.0:
+  * Update dependency version to 6.26.0
+  * ktranscript: avoid that engine deletes the object
+  * ktranscript: parent the QJEngine instead of using deleteLater
+  * Enable LSAN in CI
+  * CI: Remove alpine. It has been failing for 4 consecutive weeks
+  * Fix static build
+  * fix: no translation will be loaded on macOS
+  * Update version to 6.26.0
+
+-------------------------------------------------------------------

Old:
----
  ki18n-6.25.0.tar.xz
  ki18n-6.25.0.tar.xz.sig

New:
----
  ki18n-6.26.0.tar.xz
  ki18n-6.26.0.tar.xz.sig

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

Other differences:
------------------
++++++ kf6-ki18n.spec ++++++
--- /var/tmp/diff_new_pack.ZzHeC5/_old  2026-05-11 16:57:08.520312622 +0200
+++ /var/tmp/diff_new_pack.ZzHeC5/_new  2026-05-11 16:57:08.520312622 +0200
@@ -16,14 +16,14 @@
 #
 
 
-%define qt6_version 6.8.0
+%define qt6_version 6.9.0
 
 %define rname ki18n
-# Full KF6 version (e.g. 6.25.0)
+# Full KF6 version (e.g. 6.26.0)
 %{!?_kf6_version: %global _kf6_version %{version}}
 %bcond_without released
 Name:           kf6-ki18n
-Version:        6.25.0
+Version:        6.26.0
 Release:        0
 Summary:        KDE Gettext-based UI text internationalization
 License:        LGPL-2.1-or-later


++++++ ki18n-6.25.0.tar.xz -> ki18n-6.26.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/.gitlab-ci.yml 
new/ki18n-6.26.0/.gitlab-ci.yml
--- old/ki18n-6.25.0/.gitlab-ci.yml     2026-04-03 19:09:07.000000000 +0200
+++ new/ki18n-6.26.0/.gitlab-ci.yml     2026-05-01 13:53:20.000000000 +0200
@@ -10,6 +10,6 @@
       - /gitlab-templates/android-qt6.yml
       - /gitlab-templates/freebsd-qt6.yml
       - /gitlab-templates/windows-qt6.yml
-      - /gitlab-templates/alpine-qt6.yml
+      # - /gitlab-templates/alpine-qt6.yml
       - /gitlab-templates/xml-lint.yml
       - /gitlab-templates/yaml-lint.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/.kde-ci.yml new/ki18n-6.26.0/.kde-ci.yml
--- old/ki18n-6.25.0/.kde-ci.yml        2026-04-03 19:09:07.000000000 +0200
+++ new/ki18n-6.26.0/.kde-ci.yml        2026-05-01 13:53:20.000000000 +0200
@@ -6,3 +6,4 @@
 Options:
  test-before-installing: True
  require-passing-tests-on: ['Linux', 'FreeBSD', 'Android']
+ enable-lsan: True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/CMakeLists.txt 
new/ki18n-6.26.0/CMakeLists.txt
--- old/ki18n-6.25.0/CMakeLists.txt     2026-04-03 19:09:07.000000000 +0200
+++ new/ki18n-6.26.0/CMakeLists.txt     2026-05-01 13:53:20.000000000 +0200
@@ -1,11 +1,11 @@
 cmake_minimum_required(VERSION 3.29)
 
-set(KF_VERSION "6.25.0") # handled by release scripts
+set(KF_VERSION "6.26.0") # handled by release scripts
 project(KI18n VERSION ${KF_VERSION})
 
 # ECM setup
 include(FeatureSummary)
-find_package(ECM 6.25.0  NO_MODULE)
+find_package(ECM 6.26.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/ki18n-6.25.0/autotests/CMakeLists.txt 
new/ki18n-6.26.0/autotests/CMakeLists.txt
--- old/ki18n-6.25.0/autotests/CMakeLists.txt   2026-04-03 19:09:07.000000000 
+0200
+++ new/ki18n-6.26.0/autotests/CMakeLists.txt   2026-05-01 13:53:20.000000000 
+0200
@@ -36,11 +36,14 @@
 target_compile_definitions(ki18n-ktranscripttest PRIVATE 
"KTRANSCRIPT_PATH=\"$<TARGET_FILE:ktranscript>\"")
 
 # ktranscriptcleantest needs to directly compile ktranscript.cpp with an 
addition DEFINE
-ecm_add_test(ktranscriptcleantest.cpp ../src/i18n/ktranscript.cpp 
../src/i18n/common_helpers.cpp
+ecm_add_test(ktranscriptcleantest.cpp ../src/i18n/common_helpers.cpp
     TEST_NAME ki18n-ktranscriptcleantest
     LINK_LIBRARIES Qt6::Qml Qt6::Test Qt6::Concurrent KF6::I18n
 )
-target_compile_definitions(ki18n-ktranscriptcleantest PRIVATE 
"KTRANSCRIPT_TESTBUILD")
+if (BUILD_SHARED_LIBS)
+    target_sources(ki18n-ktranscriptcleantest PRIVATE 
../src/i18n/ktranscript.cpp)
+    target_compile_definitions(ki18n-ktranscriptcleantest PRIVATE 
"KTRANSCRIPT_TESTBUILD")
+endif()
 target_include_directories(ki18n-ktranscriptcleantest PRIVATE ..)
 endif()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/autotests/ktranscriptcleantest.cpp 
new/ki18n-6.26.0/autotests/ktranscriptcleantest.cpp
--- old/ki18n-6.25.0/autotests/ktranscriptcleantest.cpp 2026-04-03 
19:09:07.000000000 +0200
+++ new/ki18n-6.26.0/autotests/ktranscriptcleantest.cpp 2026-05-01 
13:53:20.000000000 +0200
@@ -11,6 +11,8 @@
 #include <QDebug>
 
 #include <ktranscript_p.h>
+KTranscript *autotestCreateKTranscriptImp();
+void autotestDestroyKTranscriptImp();
 
 QTEST_MAIN(KTranscriptCleanTest)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/po/fr/ki18n6.po 
new/ki18n-6.26.0/po/fr/ki18n6.po
--- old/ki18n-6.25.0/po/fr/ki18n6.po    2026-04-03 19:09:07.000000000 +0200
+++ new/ki18n-6.26.0/po/fr/ki18n6.po    2026-05-01 13:53:20.000000000 +0200
@@ -1,6 +1,6 @@
 # translation of kdelibs4.po to Français
 # translation of kdelibs4.po to
-# SPDX-FileCopyrightText: 2020, 2021, 2024 Xavier Besnard 
<[email protected]>
+# SPDX-FileCopyrightText: 2020, 2021, 2024, 2026 Xavier Besnard 
<[email protected]>
 # Matthieu Robin <[email protected]>, 2002,2003, 2004.
 # Robert Jacolin <[email protected]>, 2003,2004.
 # Gilles Caulier <[email protected]>, 2003.
@@ -25,15 +25,15 @@
 "Project-Id-Version: kdelibs4\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2025-11-17 11:49+0000\n"
-"PO-Revision-Date: 2024-04-29 14:20+0200\n"
+"PO-Revision-Date: 2026-04-04 20:17+0200\n"
 "Last-Translator: Xavier Besnard <[email protected]>\n"
-"Language-Team: French <French <[email protected]>>\n"
+"Language-Team: fr\n"
 "Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Lokalize 23.08.5\n"
+"X-Generator: Lokalize 25.12.3\n"
 "X-Environment: kde\n"
 "X-Accelerator-Marker: &\n"
 "X-Text-Markup: kde4\n"
@@ -188,7 +188,7 @@
 #: kuitsetup.cpp:357
 msgctxt "keyboard-key-name"
 msgid "PgDown"
-msgstr "Page Suiv."
+msgstr "Page suivante"
 
 #: kuitsetup.cpp:358
 msgctxt "keyboard-key-name"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/src/i18n/kcatalog.cpp 
new/ki18n-6.26.0/src/i18n/kcatalog.cpp
--- old/ki18n-6.25.0/src/i18n/kcatalog.cpp      2026-04-03 19:09:07.000000000 
+0200
+++ new/ki18n-6.26.0/src/i18n/kcatalog.cpp      2026-05-01 13:53:20.000000000 
+0200
@@ -213,7 +213,11 @@
     return assetPath;
 
 #else
+#ifdef Q_OS_MACOS
+    QString file = 
QStandardPaths::locate(QStandardPaths::AppLocalDataLocation, 
QStringLiteral("locale/") + relpath);
+#else
     QString file = QStandardPaths::locate(QStandardPaths::GenericDataLocation, 
QStringLiteral("locale/") + relpath);
+#endif
 #ifdef Q_OS_WIN
     // QStandardPaths fails on Windows for executables that aren't properly 
deployed yet, such as unit tests
     if (file.isEmpty()) {
@@ -236,7 +240,11 @@
 QSet<QString> KCatalog::availableCatalogLanguages(const QByteArray &domain_)
 {
     QString domain = QFile::decodeName(domain_);
+#ifdef Q_OS_MACOS
+    QStringList localeDirPaths = 
QStandardPaths::locateAll(QStandardPaths::AppLocalDataLocation, 
QStringLiteral("locale"), QStandardPaths::LocateDirectory);
+#else
     QStringList localeDirPaths = 
QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, 
QStringLiteral("locale"), QStandardPaths::LocateDirectory);
+#endif
 #ifdef Q_OS_WIN
     // QStandardPaths fails on Windows for executables that aren't properly 
deployed yet, such as unit tests
     localeDirPaths += QLatin1String(INSTALLED_LOCALE_PREFIX) + 
QLatin1String("/bin/data/locale/");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ki18n-6.25.0/src/i18n/ktranscript.cpp 
new/ki18n-6.26.0/src/i18n/ktranscript.cpp
--- old/ki18n-6.25.0/src/i18n/ktranscript.cpp   2026-04-03 19:09:07.000000000 
+0200
+++ new/ki18n-6.26.0/src/i18n/ktranscript.cpp   2026-05-01 13:53:20.000000000 
+0200
@@ -5,6 +5,8 @@
     SPDX-License-Identifier: LGPL-2.0-or-later
 */
 
+#include <config.h>
+
 #include <common_helpers_p.h>
 #include <ktranscript_p.h>
 
@@ -405,36 +407,36 @@
     return QJSValue::UndefinedValue;
 }
 
-#ifdef KTRANSCRIPT_TESTBUILD
-
-// ----------------------------------------------------------------------
-// Test build creation/destruction hooks
-static KTranscriptImp *s_transcriptInstance = nullptr;
-
+Q_GLOBAL_STATIC(std::unique_ptr<KTranscriptImp>, globalKTIPtr)
 KTranscriptImp *globalKTI()
 {
-    return s_transcriptInstance;
+    if (!*globalKTIPtr()) {
+        *globalKTIPtr() = std::make_unique<KTranscriptImp>();
+    }
+    return globalKTIPtr()->get();
 }
 
+// Test build creation/destruction hooks
+#if defined(KTRANSCRIPT_TESTBUILD) || HAVE_STATIC_KTRANSCRIPT
+
 KTranscript *autotestCreateKTranscriptImp()
 {
-    Q_ASSERT(s_transcriptInstance == nullptr);
-    s_transcriptInstance = new KTranscriptImp;
-    return s_transcriptInstance;
+    Q_ASSERT(!*globalKTIPtr());
+    *globalKTIPtr() = std::make_unique<KTranscriptImp>();
+    return globalKTIPtr()->get();
 }
 
 void autotestDestroyKTranscriptImp()
 {
-    Q_ASSERT(s_transcriptInstance != nullptr);
-    delete s_transcriptInstance;
-    s_transcriptInstance = nullptr;
+    Q_ASSERT(*globalKTIPtr());
+    globalKTIPtr()->reset();
 }
 
-#else
+#endif
+#ifndef KTRANSCRIPT_TESTBUILD
 
 // ----------------------------------------------------------------------
 // Dynamic loading.
-Q_GLOBAL_STATIC(KTranscriptImp, globalKTI)
 extern "C" {
 KTRANSCRIPT_EXPORT KTranscript *load_transcript()
 {
@@ -659,11 +661,15 @@
 
 Scriptface::Scriptface(const TsConfigGroup &config_, QObject *parent)
     : QObject(parent)
-    , scriptEngine(new QJSEngine)
+    , scriptEngine(new QJSEngine(this))
     , fallbackRequest(nullptr)
     , config(config_)
 {
+    // register 'this' as object and avoid that the engine will delete it, we 
own the engine
     QJSValue object = scriptEngine->newQObject(this);
+    scriptEngine->setObjectOwnership(this, QJSEngine::CppOwnership);
+    Q_ASSERT(scriptEngine->objectOwnership(this) == QJSEngine::CppOwnership);
+
     scriptEngine->globalObject().setProperty(QStringLiteral(SFNAME), object);
     scriptEngine->evaluate(QStringLiteral("Ts.acall = function() { return 
Ts.acallInternal(Array.prototype.slice.call(arguments)); };"));
 }
@@ -671,7 +677,6 @@
 Scriptface::~Scriptface()
 {
     qDeleteAll(loadedPmapHandles);
-    scriptEngine->deleteLater();
 }
 
 void Scriptface::put(const QString &propertyName, const QJSValue &value)

Reply via email to