Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qgis for openSUSE:Factory checked in at 2021-08-24 10:54:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qgis (Old) and /work/SRC/openSUSE:Factory/.qgis.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qgis" Tue Aug 24 10:54:19 2021 rev:25 rq:911938 version:3.20.1 Changes: -------- --- /work/SRC/openSUSE:Factory/qgis/qgis.changes 2021-08-03 22:49:14.872460169 +0200 +++ /work/SRC/openSUSE:Factory/.qgis.new.1899/qgis.changes 2021-08-24 10:55:07.824300480 +0200 @@ -1,0 +2,11 @@ +Wed Aug 11 18:40:04 UTC 2021 - Jason Craig <o...@jacraig.com> + +- Add fix-infinite-loop.patch: fix startup of QGIS. This will be + integrated upstream in 3.20.2. + +------------------------------------------------------------------- +Thu Aug 5 17:41:56 UTC 2021 - D. Berge <opens...@navlost.eu> + +- Enable PDAL (add qgis-fix-cmake-findpdal.patch) + +------------------------------------------------------------------- @@ -750 +760,0 @@ - New: ---- fix-infinite-loop.patch qgis-fix-cmake-findpdal.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qgis.spec ++++++ --- /var/tmp/diff_new_pack.pFM1k3/_old 2021-08-24 10:55:08.956298980 +0200 +++ /var/tmp/diff_new_pack.pFM1k3/_new 2021-08-24 10:55:08.956298980 +0200 @@ -39,7 +39,12 @@ Patch2: qgis-fix-missing-qwt-inc.patch # PATCH-FIX-UPSTREAM - https://github.com/qgis/QGIS/commit/581cb40603dd3daca2916b564a4cd2630d005556 Patch3: qgis-fix-missing-qwt-inc-part2.patch +# PATCH-FIX-UPSTREAM - scan for pdal-config instead of pdal in cmake +Patch4: qgis-fix-cmake-findpdal.patch +# PATCH-FIX-UPSTREAM - gh#qgis/QGIS#44293 +Patch5: fix-infinite-loop.patch BuildRequires: FastCGI-devel +BuildRequires: PDAL-devel BuildRequires: bison >= 2.4 BuildRequires: cmake >= 3.0.0 BuildRequires: fdupes @@ -117,6 +122,7 @@ BuildRequires: pkgconfig(gsl) >= 1.8 BuildRequires: pkgconfig(libpq) > 9.4 BuildRequires: pkgconfig(libzip) +BuildRequires: pkgconfig(pdal) >= 2.2.0 BuildRequires: pkgconfig(proj) >= 6.3.1 BuildRequires: pkgconfig(python3) >= 3.7 BuildRequires: pkgconfig(qca2-qt5) @@ -127,6 +133,7 @@ Requires: libQt5Sql5-sqlite # proj.db is required Requires: proj +Requires: pdal Requires: python3-GDAL Requires: python3-Jinja2 Requires: python3-OWSLib @@ -222,6 +229,7 @@ -DWITH_SERVER=TRUE \ -DWITH_SERVER_PLUGINS=TRUE \ -DWITH_POSTGRESQL=TRUE \ + -DWITH_PDAL=TRUE \ -DWITH_QTWEBKIT=FALSE \ -DFCGI_INCLUDE_DIR=%{_includedir}/fastcgi \ -DPOSTGRES_LIBRARY=%{_libdir}/libpq.so \ ++++++ fix-infinite-loop.patch ++++++ >From 2055199a3a4a01f5fcc9fe54a14d3ca27a21961b Mon Sep 17 00:00:00 2001 From: PeterPetrik <zil...@gmail.com> Date: Fri, 2 Jul 2021 14:40:59 +0200 Subject: [PATCH 1/2] fix infinite loop in qgsstyle --- src/core/symbology/qgsstyle.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/core/symbology/qgsstyle.cpp b/src/core/symbology/qgsstyle.cpp index 6ca37dde3a15..c87305b3c8fa 100644 --- a/src/core/symbology/qgsstyle.cpp +++ b/src/core/symbology/qgsstyle.cpp @@ -2755,6 +2755,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the symbol, should already be present + e = e.nextSiblingElement(); continue; } @@ -2810,6 +2811,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the ramp, should already be present + e = e.nextSiblingElement(); continue; } @@ -2859,6 +2861,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the format, should already be present + e = e.nextSiblingElement(); continue; } @@ -2904,6 +2907,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the settings, should already be present + e = e.nextSiblingElement(); continue; } @@ -2950,6 +2954,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the shape, should already be present + e = e.nextSiblingElement(); continue; } @@ -2995,6 +3000,7 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the symbol, should already be present + e = e.nextSiblingElement(); continue; } >From d03c4b4806ca241c8daed446c98ae66988bd1dcd Mon Sep 17 00:00:00 2001 From: Nyall Dawson <nyall.daw...@gmail.com> Date: Thu, 22 Jul 2021 10:30:05 +1000 Subject: [PATCH 2/2] Cleanup style upgrade loop Refs https://github.com/qgis/QGIS/pull/44038/files#r663350654 --- src/core/symbology/qgsstyle.cpp | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/src/core/symbology/qgsstyle.cpp b/src/core/symbology/qgsstyle.cpp index c87305b3c8fa..b4f57116d81e 100644 --- a/src/core/symbology/qgsstyle.cpp +++ b/src/core/symbology/qgsstyle.cpp @@ -2749,13 +2749,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) if ( version == QLatin1String( STYLE_CURRENT_VERSION ) || version == QLatin1String( "1" ) ) { // For the new style, load symbols individually - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the symbol, should already be present - e = e.nextSiblingElement(); continue; } @@ -2787,7 +2786,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } } else @@ -2805,13 +2803,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) // load color ramps QDomElement rampsElement = docEl.firstChildElement( QStringLiteral( "colorramps" ) ); e = rampsElement.firstChildElement(); - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the ramp, should already be present - e = e.nextSiblingElement(); continue; } @@ -2843,7 +2840,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } // load text formats @@ -2855,13 +2851,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { const QDomElement textFormatElement = docEl.firstChildElement( QStringLiteral( "textformats" ) ); e = textFormatElement.firstChildElement(); - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the format, should already be present - e = e.nextSiblingElement(); continue; } @@ -2892,7 +2887,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } } @@ -2901,13 +2895,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { const QDomElement labelSettingsElement = docEl.firstChildElement( QStringLiteral( "labelsettings" ) ); e = labelSettingsElement.firstChildElement(); - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the settings, should already be present - e = e.nextSiblingElement(); continue; } @@ -2938,7 +2931,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } } } @@ -2948,13 +2940,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { const QDomElement legendPatchShapesElement = docEl.firstChildElement( QStringLiteral( "legendpatchshapes" ) ); e = legendPatchShapesElement.firstChildElement(); - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the shape, should already be present - e = e.nextSiblingElement(); continue; } @@ -2985,7 +2976,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } } @@ -2994,13 +2984,12 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { const QDomElement symbols3DElement = docEl.firstChildElement( QStringLiteral( "symbols3d" ) ); e = symbols3DElement.firstChildElement(); - while ( !e.isNull() ) + for ( ; !e.isNull(); e = e.nextSiblingElement() ) { const int entityAddedVersion = e.attribute( QStringLiteral( "addedVersion" ) ).toInt(); if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion ) { // skip the symbol, should already be present - e = e.nextSiblingElement(); continue; } @@ -3036,7 +3025,6 @@ bool QgsStyle::importXml( const QString &filename, int sinceVersion ) { QgsDebugMsg( "unknown tag: " + e.tagName() ); } - e = e.nextSiblingElement(); } } ++++++ qgis-fix-cmake-findpdal.patch ++++++ --- a/cmake/FindPDAL.cmake 2021-08-05 12:51:21.255398497 +0000 +++ b/cmake/FindPDAL.cmake 2021-08-05 12:51:42.319428567 +0000 @@ -40,7 +40,7 @@ FIND_LIBRARY(PDAL_UTIL_LIBRARY NAMES pda ) FIND_LIBRARY(PDAL_UTIL_LIBRARY NAMES pdal_util libpdal_util) -FIND_PROGRAM(PDAL_BIN pdal +FIND_PROGRAM(PDAL_BIN pdal-config $ENV{LIB_DIR}/bin /usr/local/bin/ /usr/bin/