Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qt6-base for openSUSE:Factory 
checked in at 2026-10-18 19:22:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-base (Old)
 and      /work/SRC/openSUSE:Factory/.qt6-base.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qt6-base"

Sun Oct 18 19:22:05 2026 rev:87 rq:1384606 version:6.12.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-base/qt6-base.changes        2026-08-26 
19:51:40.431398499 +0200
+++ /work/SRC/openSUSE:Factory/.qt6-base.new.3698736/qt6-base.changes   
2026-10-18 19:22:12.000964346 +0200
@@ -1,0 +2,17 @@
+Tue Oct 13 12:14:02 UTC 2026 - Christophe Marin <[email protected]>
+
+- Add upstream changes:
+  * 6.12.0_Fix_touchpad_scrolling.patch
+  * build_with_md4c_0_6_0.patch
+
+-------------------------------------------------------------------
+Wed Sep 30 16:08:30 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.12.0
+  https://www.qt.io/blog/qt-6.12-released
+- Drop patches:
+  * 0001-CMake-Handle-generated-headers-in-syncqt-scan-all-mo.patch
+  * 0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
+  * 0001-Use-newer-GCC-on-Leap.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-CMake-Handle-generated-headers-in-syncqt-scan-all-mo.patch
  0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
  0001-Use-newer-GCC-on-Leap.patch
  qtbase-everywhere-src-6.11.2.tar.xz

New:
----
  6.12.0_Fix_touchpad_scrolling.patch
  build_with_md4c_0_6_0.patch
  qtbase-everywhere-src-6.12.0.tar.xz

----------(Old B)----------
  Old:- Drop patches:
  * 0001-CMake-Handle-generated-headers-in-syncqt-scan-all-mo.patch
  * 0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
  Old:  * 0001-CMake-Handle-generated-headers-in-syncqt-scan-all-mo.patch
  * 0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
  * 0001-Use-newer-GCC-on-Leap.patch
  Old:  * 0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
  * 0001-Use-newer-GCC-on-Leap.patch
----------(Old E)----------

----------(New B)----------
  New:- Add upstream changes:
  * 6.12.0_Fix_touchpad_scrolling.patch
  * build_with_md4c_0_6_0.patch
  New:  * 6.12.0_Fix_touchpad_scrolling.patch
  * build_with_md4c_0_6_0.patch
----------(New E)----------

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

Other differences:
------------------
++++++ qt6-base.spec ++++++
--- /var/tmp/diff_new_pack.NNWVaN/_old  2026-10-18 19:22:14.371062606 +0200
+++ /var/tmp/diff_new_pack.NNWVaN/_new  2026-10-18 19:22:14.374062730 +0200
@@ -16,8 +16,8 @@
 #
 
 
-%define real_version 6.11.2
-%define short_version 6.11
+%define real_version 6.12.0
+%define short_version 6.12
 %define tar_name qtbase-everywhere-src
 %define tar_suffix %{nil}
 #
@@ -29,11 +29,8 @@
 %ifarch %{arm} aarch64
 %global with_gles 1
 %endif
-%if 0%{?suse_version} > 1500
-%bcond_without system_md4c
-%endif
 Name:           qt6-base%{?pkg_suffix}
-Version:        6.11.2
+Version:        6.12.0
 Release:        0
 Summary:        Qt 6 core components (Core, Gui, Widgets, Network...)
 # Legal: qtpaths is BSD-3-Clause
@@ -42,8 +39,8 @@
 Source0:        
https://download.qt.io/official_releases/qt/%{short_version}/%{real_version}%{tar_suffix}/submodules/%{tar_name}-%{real_version}%{tar_suffix}.tar.xz
 Source99:       qt6-base-rpmlintrc
 # Patches 0-100 are upstream patches #
-Patch0:         0001-CMake-Handle-generated-headers-in-syncqt-scan-all-mo.patch
-Patch1:         0001-QIconLoader-Don-t-consider-fallbackThemeName-in-them.patch
+Patch0:         build_with_md4c_0_6_0.patch
+Patch1:         6.12.0_Fix_touchpad_scrolling.patch
 # Patches 100-200 are openSUSE and/or non-upstream(able) patches #
 # No need to pollute the library dir with object files, install them in the 
qt6 subfolder
 Patch100:       0001-CMake-Install-objects-files-into-ARCHDATADIR.patch
@@ -51,16 +48,10 @@
 # Change a couple default build system settings
 Patch102:       0001-Change-default-settings-for-Qt-packages.patch
 # Conditional patches depending on the leap version
-Patch201:       0001-Use-newer-GCC-on-Leap.patch
-Patch202:       0001-Use-newer-GCC-on-Leap-16.patch
+Patch201:       0001-Use-newer-GCC-on-Leap-16.patch
 ##
 BuildRequires:  cmake >= 3.18.3
 BuildRequires:  cups-devel
-# The default GCC version in Leap 15 is too old
-%if 0%{?suse_version} == 1500
-BuildRequires:  gcc14-PIE
-BuildRequires:  gcc14-c++
-%endif
 %if 0%{?suse_version} >= 1600 && 0%{?suse_version} < 1699
 BuildRequires:  gcc15-PIE
 BuildRequires:  gcc15-c++
@@ -77,15 +68,13 @@
 BuildRequires:  qt6-macros >= 20260508
 %ifnarch ppc64le s390x
 %if 0%{?suse_version} >= 1699
-# Not available in Leap 15 nor 16, and fails to build for ppc and s390x
+# Not available in Leap 16, and fails to build for ppc and s390x
 BuildRequires:  renderdoc-devel
 %endif
 %endif
 BuildRequires:  xmlstarlet
 BuildRequires:  cmake(double-conversion)
-%if %{with system_md4c}
 BuildRequires:  cmake(md4c)
-%endif
 BuildRequires:  pkgconfig(atspi-2)
 BuildRequires:  pkgconfig(dbus-1)
 BuildRequires:  pkgconfig(egl)
@@ -253,11 +242,6 @@
 Summary:        Development files for the Qt 6 Core library
 Requires:       libQt6Core6 = %{version}
 Requires:       qt6-base-common-devel = %{version}
-# Some KDE packages start using gcc features not available in gcc < 14
-%if 0%{?suse_version} == 1500
-Requires:       gcc14-PIE
-Requires:       gcc14-c++
-%endif
 %if 0%{?suse_version} >= 1600 && 0%{?suse_version} < 1699
 Requires:       gcc15-PIE
 Requires:       gcc15-c++
@@ -808,11 +792,8 @@
 %prep
 %setup -q -n %{tar_name}-%{real_version}%{tar_suffix}
 %autopatch -p1 -m 0 -M 200
-%if 0%{?suse_version} == 1500
-%patch -p1 -P 201
-%endif
 %if 0%{?suse_version} >= 1600 && 0%{?suse_version} < 1699
-%patch -p1 -P 202
+%patch -p1 -P 201
 %endif
 
 # Copy the freetype license file to prevent errors when building docs
@@ -823,10 +804,8 @@
 sed -i '/\/3rdparty\/blake2/d' src/corelib/CMakeLists.txt
 
 # We don't want to use these 3rdparty libraries
-rm -r 
src/3rdparty/{blake2,double-conversion,freetype,harfbuzz-ng,libjpeg,libpng,pcre2,sqlite,xcb,zlib}
-%if %{with system_md4c}
-rm -r src/3rdparty/md4c
-%endif
+rm -r 
src/3rdparty/{blake2,double-conversion,freetype,harfbuzz-ng,libjpeg,libpng,md4c,pcre2,sqlite,xcb,zlib}
+
 # Remove license files symlinked to deleted 3rdparty libraries
 rm LICENSES/{FTL.txt,IJG.txt,libpng-2.0.txt,Zlib.txt}
 
@@ -944,6 +923,8 @@
 %dir %{_qt6_mkspecsdir}/modules
 %{_bindir}/androiddeployqt6
 %{_bindir}/androidtestrunner6
+%{_bindir}/harmonydeployqt6
+%{_bindir}/harmonyostestrunner6
 %{_bindir}/qdbuscpp2xml6
 %{_bindir}/qdbusxml2cpp6
 %{_bindir}/qmake6
@@ -954,6 +935,8 @@
 %{_bindir}/wasmdeployqt6
 %{_qt6_bindir}/androiddeployqt
 %{_qt6_bindir}/androidtestrunner
+%{_qt6_bindir}/harmonydeployqt
+%{_qt6_bindir}/harmonyostestrunner
 %{_qt6_bindir}/qdbuscpp2xml
 %{_qt6_bindir}/qdbusxml2cpp
 %{_qt6_bindir}/qmake

++++++ 6.12.0_Fix_touchpad_scrolling.patch ++++++
>From 606c9a40b5f4d4b86136bd8523af25fa1956de26 Mon Sep 17 00:00:00 2001
From: David Redondo <[email protected]>
Date: Fri, 9 Oct 2026 07:14:36 +0000
Subject: [PATCH] Revert "wayland: Report pixelScroll capability for touchpads"

This reverts commit 1f94e2782c071c9c687da1bc0141f55118943623.

Reason for revert: While touchpads indeed have pixel scroll, currently all 
events
are attributed to this device if it exists also the ones that come from mice. 
This
has further side effects like slow scrolling in widgets or not working 
functionality
in QTabbar. If we want to go in this direction it needs more work likely also in
widgets.
Task: QTBUG-150280

Change-Id: I1e774fce9888caa4c485405679b2a45499429813
Pick-to: 6.12
---
 src/plugins/platforms/wayland/qwaylandinputdevice.cpp | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/plugins/platforms/wayland/qwaylandinputdevice.cpp 
b/src/plugins/platforms/wayland/qwaylandinputdevice.cpp
index 8cf3ae935ee..0c667be52ef 100644
--- a/src/plugins/platforms/wayland/qwaylandinputdevice.cpp
+++ b/src/plugins/platforms/wayland/qwaylandinputdevice.cpp
@@ -414,13 +414,10 @@ void QWaylandInputDevice::seat_capabilities(uint32_t caps)
 
         auto *pointerGestures = mQDisplay->pointerGestures();
         if (pointerGestures) {
-              QInputDevice::Capabilities  pointerCapabilities = 
QInputDevice::Capability::Position
-                                                             | 
QInputDevice::Capability::PixelScroll
-                                                             | 
QInputDevice::Capability::Scroll;
             // NOTE: The name of the device and its system ID are not exposed 
on Wayland.
             mTouchPadDevice = new QPointingDevice(
                     QLatin1StringView("touchpad"), 0, 
QInputDevice::DeviceType::TouchPad,
-                    QPointingDevice::PointerType::Finger, pointerCapabilities,
+                    QPointingDevice::PointerType::Finger, 
QInputDevice::Capability::Position,
                     MaxTouchPoints, 0, mSeatName, QPointingDeviceUniqueId(), 
this);
             QWindowSystemInterface::registerInputDevice(mTouchPadDevice);
             
mPointerGesturePinch.reset(pointerGestures->createPointerGesturePinch(this));
-- 
2.55.0


++++++ build_with_md4c_0_6_0.patch ++++++
Note : The following change was trimmed. 3rd party code update was dropped
from the patch (unneeded for our package)

>From c8e56913ff414fe18d8ba5675819c7eaef4946cb Mon Sep 17 00:00:00 2001
From: Shawn Rutledge <[email protected]>
Date: Wed, 23 Sep 2026 22:23:16 +0200
Subject: [PATCH] Update md4c to 0.6.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Amends d377d1f3a921488525f6e75c850632f559707747 : Qt's definition of
GitHub dialect remains as it was, while md4c has recently added features
that we don't yet support. We need to verify that the new features are
not inadvertently turned on before Qt is ready to handle them, and deal
with the clashing feature flag (0x100000 is for FrontMatter in Qt,
footnotes in md4c). It seems for now that we will not be able to support
footnotes, both because of the clashing flag and because it would be
hard to change the text-editing components to support them; so a test is
added to verify that the markdown footnote syntax is NOT interpreted
specially. Likewise, a test verifies that a markdown "admonition" is
treated as an ordinary block quote for now (but this can be improved
later).

[ChangeLog][Third-Party Code] Updated md4c to version 0.6.0.

Fixes: QTBUG-148738
Fixes: QTBUG-150636
Fixes: QTBUG-150661
Task-number: QTBUG-149921
Pick-to: 6.12.0 6.8 6.5
Change-Id: Iffd17982fe0d606b0f5003e25ee85b2db6ad019a
Reviewed-by: Oliver Eftevaag <[email protected]>
Reviewed-by: Kai Köhne <[email protected]>
(cherry picked from commit 032643f99e090e0304ef935c2ee11c109d55c8a1)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
---

diff --git a/src/gui/text/qtextmarkdownimporter.cpp 
b/src/gui/text/qtextmarkdownimporter.cpp
index 3f57c700fa8..3ee8b4104de 100644
--- a/src/gui/text/qtextmarkdownimporter.cpp
+++ b/src/gui/text/qtextmarkdownimporter.cpp
@@ -51,8 +51,10 @@ 
static_assert(int(QTextMarkdownImporter::FeaturePermissiveAutoLinks) == MD_FLAG_
 static_assert(int(QTextMarkdownImporter::FeatureTasklists) == 
MD_FLAG_TASKLISTS);
 static_assert(int(QTextMarkdownImporter::FeatureNoHTML) == MD_FLAG_NOHTML);
 static_assert(int(QTextMarkdownImporter::DialectCommonMark) == 
MD_DIALECT_COMMONMARK);
+// We don't yet support all the features in MD_DIALECT_GITHUB
 static_assert(int(QTextMarkdownImporter::DialectGitHub) ==
-              (MD_DIALECT_GITHUB | MD_FLAG_UNDERLINE | 
QTextMarkdownImporter::FeatureFrontMatter));
+              (MD_FLAG_PERMISSIVEAUTOLINKS | MD_FLAG_TABLES | 
MD_FLAG_STRIKETHROUGH | MD_FLAG_TASKLISTS
+                | MD_FLAG_UNDERLINE | 
QTextMarkdownImporter::FeatureFrontMatter));
 
 // --------------------------------------------------------
 // MD4C callback function wrappers
@@ -167,7 +169,7 @@ void QTextMarkdownImporter::import(const QString &markdown)
 {
     MD_PARSER callbacks = {
         0, // abi_version
-        unsigned(m_features),
+        unsigned(m_features) & unsigned(0xFFEFFFFF), // exclude 
MD_FLAG_FOOTNOTES: unsupported in Qt
         &CbEnterBlock,
         &CbLeaveBlock,
         &CbEnterSpan,
diff --git a/src/gui/text/qtextmarkdownimporter_p.h 
b/src/gui/text/qtextmarkdownimporter_p.h
index 8b8f4ec9bb8..ba188a3b33e 100644
--- a/src/gui/text/qtextmarkdownimporter_p.h
+++ b/src/gui/text/qtextmarkdownimporter_p.h
@@ -47,6 +47,10 @@ public:
         FeatureTasklists =                0x0800,
         FeatureUnderline =                0x4000,
         FeatureFrontMatter =            0x100000, // Qt feature, not yet in 
MD4C
+        // NOTE: flags above are kept in sync with #define MD_FLAG_*; 
therefore,
+        // do NOT add any more Qt-specific flags (within the lower 32 bits).
+        // Because we have FeatureFrontMatter, we cannot support 
MD_FLAG_FOOTNOTES.
+
         // composite flags
         FeaturePermissiveAutoLinks = FeaturePermissiveMailAutoLinks
             | FeaturePermissiveURLAutoLinks | FeaturePermissiveWWWAutoLinks,
diff --git a/tests/auto/gui/text/qtextmarkdownimporter/data/admonitions.md 
b/tests/auto/gui/text/qtextmarkdownimporter/data/admonitions.md
new file mode 100644
index 00000000000..040d133fbd7
--- /dev/null
+++ b/tests/auto/gui/text/qtextmarkdownimporter/data/admonitions.md
@@ -0,0 +1,17 @@
+Admonitions, AKA Alerts:
+https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts
+
+> [!NOTE]
+> Useful information that users should know, even when skimming content.
+
+> [!TIP]
+> Helpful advice for doing things better or more easily.
+
+> [!IMPORTANT]
+> Key information users need to know to achieve their goal.
+
+> [!WARNING]
+> Urgent info that needs immediate user attention to avoid problems.
+
+> [!CAUTION]
+> Advises about risks or negative outcomes of certain actions.
diff --git a/tests/auto/gui/text/qtextmarkdownimporter/data/footnotes.md 
b/tests/auto/gui/text/qtextmarkdownimporter/data/footnotes.md
new file mode 100644
index 00000000000..91c3f84011a
--- /dev/null
+++ b/tests/auto/gui/text/qtextmarkdownimporter/data/footnotes.md
@@ -0,0 +1,13 @@
+From https://www.markdownguide.org/extended-syntax/#footnotes
+
+Here's a simple footnote,[^1] and here's a longer one.[^bignote]
+
+[^1]: This is the first footnote.
+
+[^bignote]: Here's one with multiple paragraphs and code.
+
+    Indent paragraphs to include them in the footnote.
+
+    `{ my code }`
+
+    Add as many paragraphs as you like.
diff --git 
a/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp 
b/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
index 001f3ff00d7..0f0dd80a8da 100644
--- a/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
+++ b/tests/auto/gui/text/qtextmarkdownimporter/tst_qtextmarkdownimporter.cpp
@@ -46,6 +46,8 @@ private slots:
     void fencedCodeBlocks();
     void frontMatter_data();
     void frontMatter();
+    void admonitions();
+    void footnotes();
     void toRawText_data();
     void toRawText();
 
@@ -719,6 +721,90 @@ void tst_QTextMarkdownImporter::frontMatter()
     QCOMPARE(doc.metaInformation(QTextDocument::FrontMatter).size(), 
expectedFrontMatterSize);
 }
 
+void tst_QTextMarkdownImporter::admonitions() // QTBUG-149922
+{
+    // QTextDocument doesn't have a representation for admonitions yet.
+    // But test what happens when we parse a markdown file that has them.
+    // We expect them to be seen as block quotes; the syntax like "[!NOTE]"
+    // comes out as-is for now, whereas in the future it could trigger some 
CSS style.
+    QTextDocument doc;
+    QFile f(QFINDTESTDATA("data/admonitions.md"));
+    QVERIFY(f.open(QFile::ReadOnly));
+    doc.setMarkdown(f.readAll());
+
+#ifdef DEBUG_WRITE_HTML
+    {
+        QFile out("/tmp/admonitions.html");
+        out.open(QFile::WriteOnly);
+        out.write(doc.toHtml().toLatin1());
+        out.close();
+    }
+#endif
+
+    QTextFrame::iterator iterator = doc.rootFrame()->begin();
+    QTextFrame *currentFrame = iterator.currentFrame();
+    int blockQuoteCount = 0;
+    int plainBlockCount = 0;
+    while (!iterator.atEnd()) {
+        // There are no child frames
+        QCOMPARE(iterator.currentFrame(), currentFrame);
+        // Check BlockQuoteLevel
+        QTextBlock block = iterator.currentBlock();
+        const bool blockQuote = 
block.blockFormat().hasProperty(QTextFormat::BlockQuoteLevel);
+        if (blockQuote) {
+            
QCOMPARE(block.blockFormat().intProperty(QTextFormat::BlockQuoteLevel), 1);
+            ++blockQuoteCount;
+        } else {
+            ++plainBlockCount;
+        }
+        qCDebug(lcTests) << (blockQuoteCount ? "quote" : "text") << 
block.text();
+        ++iterator;
+    }
+    QCOMPARE(blockQuoteCount, 5);
+    QCOMPARE(plainBlockCount, 1);
+}
+
+void tst_QTextMarkdownImporter::footnotes() // QTBUG-149923
+{
+    // QTextDocument doesn't have a representation for footnotes yet.
+    // But test what happens when we parse a markdown file that has them.
+    QTextDocument doc;
+    QFile f(QFINDTESTDATA("data/footnotes.md"));
+    QVERIFY(f.open(QFile::ReadOnly));
+    doc.setMarkdown(f.readAll());
+
+#ifdef DEBUG_WRITE_HTML
+    {
+        QFile out("/tmp/footnotes.html");
+        out.open(QFile::WriteOnly);
+        out.write(doc.toHtml().toLatin1());
+        out.close();
+    }
+#endif
+
+    QTextFrame::iterator iterator = doc.rootFrame()->begin();
+    QTextFrame *currentFrame = iterator.currentFrame();
+    int nonEmptyBlockCount = 0;
+    int firstFootNoteIndex = -1;
+    while (!iterator.atEnd()) {
+        // There are no child frames
+        QCOMPARE(iterator.currentFrame(), currentFrame);
+        QTextBlock block = iterator.currentBlock();
+        if (!block.text().isEmpty()) {
+            qCDebug(lcTests) << block.text();
+            // Without MD_FLAG_FOOTNOTES (which QTD cannot support right now),
+            // the special syntax is ignored, and the first footnote is an 
ordinary inline paragraph.
+            // If MD_FLAG_FOOTNOTES got turned on, md4c would emit it into the 
last block instead.
+            if (block.text().contains("This is the first footnote."))
+                firstFootNoteIndex = nonEmptyBlockCount;
+            ++nonEmptyBlockCount;
+        }
+        ++iterator;
+    }
+    QCOMPARE(nonEmptyBlockCount, 7);
+    QCOMPARE(firstFootNoteIndex, 2);
+}
+
 void tst_QTextMarkdownImporter::toRawText_data()
 {
     QTest::addColumn<QString>("input");
-- 
2.55.0


++++++ qtbase-everywhere-src-6.11.2.tar.xz -> 
qtbase-everywhere-src-6.12.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/qt6-base/qtbase-everywhere-src-6.11.2.tar.xz 
/work/SRC/openSUSE:Factory/.qt6-base.new.3698736/qtbase-everywhere-src-6.12.0.tar.xz
 differ: char 26, line 1

Reply via email to