Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kf6-ksvg for openSUSE:Factory checked in at 2026-04-11 22:24:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kf6-ksvg (Old) and /work/SRC/openSUSE:Factory/.kf6-ksvg.new.21863 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kf6-ksvg" Sat Apr 11 22:24:21 2026 rev:28 rq:1345911 version:6.25.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kf6-ksvg/kf6-ksvg.changes 2026-03-16 14:18:43.268752637 +0100 +++ /work/SRC/openSUSE:Factory/.kf6-ksvg.new.21863/kf6-ksvg.changes 2026-04-11 22:28:37.521914463 +0200 @@ -1,0 +2,12 @@ +Tue Apr 7 19:19:26 UTC 2026 - Christophe Marin <[email protected]> + +- Update to 6.25.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/frameworks/6/6.25.0 +- Changes since 6.24.0: + * Update dependency version to 6.25.0 + * Add basic test for Svg + * Update version to 6.25.0 + +------------------------------------------------------------------- Old: ---- ksvg-6.24.0.tar.xz ksvg-6.24.0.tar.xz.sig New: ---- ksvg-6.25.0.tar.xz ksvg-6.25.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kf6-ksvg.spec ++++++ --- /var/tmp/diff_new_pack.yiirFy/_old 2026-04-11 22:28:38.117938874 +0200 +++ /var/tmp/diff_new_pack.yiirFy/_new 2026-04-11 22:28:38.121939039 +0200 @@ -19,11 +19,11 @@ %define qt6_version 6.8.0 %define rname ksvg -# Full KF6 version (e.g. 6.24.0) +# Full KF6 version (e.g. 6.25.0) %{!?_kf6_version: %global _kf6_version %{version}} %bcond_without released Name: kf6-ksvg -Version: 6.24.0 +Version: 6.25.0 Release: 0 Summary: Components for handling SVGs License: GPL-2.0-or-later ++++++ ksvg-6.24.0.tar.xz -> ksvg-6.25.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ksvg-6.24.0/CMakeLists.txt new/ksvg-6.25.0/CMakeLists.txt --- old/ksvg-6.24.0/CMakeLists.txt 2026-03-07 21:32:44.000000000 +0100 +++ new/ksvg-6.25.0/CMakeLists.txt 2026-04-03 19:11:24.000000000 +0200 @@ -1,12 +1,12 @@ -cmake_minimum_required(VERSION 3.27) +cmake_minimum_required(VERSION 3.29) -set(KF_VERSION "6.24.0") # handled by release scripts -set(KF_DEP_VERSION "6.24.0") # handled by release scripts +set(KF_VERSION "6.25.0") # handled by release scripts +set(KF_DEP_VERSION "6.25.0") # handled by release scripts project(KSvg VERSION ${KF_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 6.24.0 NO_MODULE) +find_package(ECM 6.25.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) @@ -37,7 +37,7 @@ ################# now find all used packages ################# -set (REQUIRED_QT_VERSION 6.8.0) +set (REQUIRED_QT_VERSION 6.9.0) find_package(Qt6 ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS Quick Gui Qml Svg QuickControls2) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ksvg-6.24.0/autotests/CMakeLists.txt new/ksvg-6.25.0/autotests/CMakeLists.txt --- old/ksvg-6.24.0/autotests/CMakeLists.txt 2026-03-07 21:32:44.000000000 +0100 +++ new/ksvg-6.25.0/autotests/CMakeLists.txt 2026-04-03 19:11:24.000000000 +0200 @@ -26,5 +26,6 @@ KSVG_UNIT_TESTS( framesvgtest imagesettest + svgtest ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ksvg-6.24.0/autotests/svgtest.cpp new/ksvg-6.25.0/autotests/svgtest.cpp --- old/ksvg-6.24.0/autotests/svgtest.cpp 1970-01-01 01:00:00.000000000 +0100 +++ new/ksvg-6.25.0/autotests/svgtest.cpp 2026-04-03 19:11:24.000000000 +0200 @@ -0,0 +1,121 @@ +/* + * SPDX-FileCopyrightText: 2026 Nicolas Fella <[email protected]> + * + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#include "svg.h" + +#include <QDirIterator> +#include <QSignalSpy> +#include <QTest> + +using namespace Qt::Literals; + +class SvgTest : public QObject +{ + Q_OBJECT + +public Q_SLOTS: + void initTestCase(); + void cleanupTestCase(); + +private Q_SLOTS: + void testSize(); + void testElements(); + +private: + KSvg::Svg *m_svg; + QDir m_themeDir; + QDir m_cacheDir; +}; + +void copyDirectory(const QString &srcDir, const QString &dstDir) +{ + QDir targetDir(dstDir); + QDirIterator it(srcDir, QDir::Filters(QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot | QDir::Name), QDirIterator::Subdirectories); + while (it.hasNext()) { + it.next(); + QString path = it.filePath(); + QString relDestPath = path.last(it.filePath().length() - srcDir.length() - 1); + if (it.fileInfo().isDir()) { + QVERIFY(targetDir.mkpath(relDestPath)); + } else { + QVERIFY(QFile::copy(path, dstDir % '/' % relDestPath)); + } + } +} + +void SvgTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); + + m_themeDir = QDir(QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) % '/' % "plasma"); + m_themeDir.removeRecursively(); + + copyDirectory(QFINDTESTDATA("data/plasma"), m_themeDir.absolutePath()); + + m_cacheDir = QDir(QStandardPaths::writableLocation(QStandardPaths::CacheLocation)); + m_cacheDir.removeRecursively(); + + m_svg = new KSvg::Svg; + m_svg->setImagePath(QFINDTESTDATA("data/background.svgz")); + QVERIFY(m_svg->isValid()); +} + +void SvgTest::cleanupTestCase() +{ + m_themeDir.removeRecursively(); +} + +void SvgTest::testSize() +{ + QSignalSpy spy(m_svg, &KSvg::Svg::sizeChanged); + + QCOMPARE(m_svg->size(), QSizeF(148, 148)); + + m_svg->resize(500, 500); + QCOMPARE(spy.count(), 1); + QCOMPARE(m_svg->size(), QSizeF(500, 500)); + + m_svg->resize(); + QCOMPARE(spy.count(), 2); + QCOMPARE(m_svg->size(), QSizeF(148, 148)); +} + +void SvgTest::testElements() +{ + QVERIFY(m_svg->hasElement("center")); + QVERIFY(m_svg->hasElement("left")); + QVERIFY(m_svg->hasElement("right")); + QVERIFY(m_svg->hasElement("top")); + QVERIFY(m_svg->hasElement("bottom")); + QVERIFY(m_svg->hasElement("topleft")); + QVERIFY(m_svg->hasElement("topright")); + QVERIFY(m_svg->hasElement("bottomleft")); + QVERIFY(m_svg->hasElement("bottomright")); + + QVERIFY(m_svg->hasElement("prefix-left")); + QVERIFY(m_svg->hasElement("prefix-right")); + QVERIFY(m_svg->hasElement("prefix-top")); + QVERIFY(m_svg->hasElement("prefix-bottom")); + QVERIFY(m_svg->hasElement("prefix-topleft")); + QVERIFY(m_svg->hasElement("prefix-topright")); + QVERIFY(m_svg->hasElement("prefix-bottomleft")); + QVERIFY(m_svg->hasElement("prefix-bottomright")); + + QVERIFY(m_svg->hasElement("hint-left-margin")); + QVERIFY(m_svg->hasElement("hint-right-margin")); + QVERIFY(m_svg->hasElement("hint-top-margin")); + QVERIFY(m_svg->hasElement("hint-bottom-margin")); + + QVERIFY(!m_svg->hasElement("banana")); + + QCOMPARE(m_svg->elementSize("left"), QSizeF(35, 26)); + + QCOMPARE(m_svg->elementRect("left").toRect(), QRect(8, 71, 35, 26)); +} + +QTEST_MAIN(SvgTest) + +#include "svgtest.moc"
