#1113084 kpublictransport: FTBFS with CMake 4

#1113084#5
Date:
2025-08-31 22:56:54 UTC
From:
To:
Dear maintainer,

During a test rebuild for CMake 4, kpublictransport failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedPositionParsers(lufthansa)
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
45: QWARN  : PublicTransportManagerTest::testTripRequestOutOfCoverage() org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedPositionParsers(ouigo-es)
45: XFAIL  : PublicTransportManagerTest::testTripRequestOutOfCoverage() NoBackend error handling not correctly implemented yet
45:    Loc: [./autotests/publictransportmanagertest.cpp(168)]
45: PASS   : PublicTransportManagerTest::testTripRequestOutOfCoverage()
45: PASS   : PublicTransportManagerTest::cleanupTestCase()
45: Totals: 12 passed, 0 failed, 0 skipped, 0 blacklisted, 64ms
45: ********* Finished testing of PublicTransportManagerTest *********
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(cd-railjet)
47/49 Test #45: publictransportmanagertest .......   Passed    0.10 sec
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(db-ice)
20: PASS   : BackendTest::testCoverageBenchmark()
20: RESULT : BackendTest::testCoverageBenchmark():
20:      0.029 msecs per iteration (total: 60, iterations: 2048)
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(db-ice-canceled-stops)
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(db-zugportal)
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(flat) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: PASS   : BackendTest::testBackendModel(flat)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(db-zugportal-canceled)
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(db-zugportal-occupancy)
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
20: QWARN  : BackendTest::testBackendModel(groupByCountry) org.kde.kpublictransport: Unknown backend setting: "supportedOutputFormats"
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(sncf-inoui)
20: PASS   : BackendTest::testBackendModel(groupByCountry)
20: PASS   : BackendTest::cleanupTestCase()
20: Totals: 7 passed, 0 failed, 0 skipped, 0 blacklisted, 312ms
20: ********* Finished testing of BackendTest *********
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(sbb)
48/49 Test #20: backendtest ......................   Passed    0.36 sec
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(oebb-railnet)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(oebb-railnet-tracks)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(ana)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(unite-panasonic)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(cathay-pacific)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(eurowings)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(lufthansa)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(united)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(nstrein)
49: PASS   : OnboardStatusTest::testScriptedJourneyParsers(ouigo-es)
49: PASS   : OnboardStatusTest::testScriptedSupport(cd-railjet)
49: PASS   : OnboardStatusTest::testScriptedSupport(db-ice)
49: PASS   : OnboardStatusTest::testScriptedSupport(db-zugportal)
49: PASS   : OnboardStatusTest::testScriptedSupport(sncf-inoui)
49: PASS   : OnboardStatusTest::testScriptedSupport(sbb)
49: PASS   : OnboardStatusTest::testScriptedSupport(thalys)
49: PASS   : OnboardStatusTest::testScriptedSupport(ana)
49: PASS   : OnboardStatusTest::testScriptedSupport(united)
49: PASS   : OnboardStatusTest::testScriptedSupport(cathay-pacific)
49: PASS   : OnboardStatusTest::testScriptedSupport(aegean)
49: PASS   : OnboardStatusTest::testScriptedSupport(eurowings)
49: PASS   : OnboardStatusTest::cleanupTestCase()
49: Totals: 46 passed, 0 failed, 0 skipped, 0 blacklisted, 97ms
49: ********* Finished testing of OnboardStatusTest *********
49/49 Test #49: onboardstatustest ................   Passed    0.14 sec

98% tests passed, 1 tests failed out of 49

Total Test time (real) =   0.51 sec

The following tests FAILED:
	 46 - cachetest (Failed)
Errors while running CTest
make[1]: *** [Makefile:74: test] Error 8
make[1]: Leaving directory '/build/reproducible-path/kpublictransport-25.04.3/obj-aarch64-linux-gnu'
dh_auto_test: error: cd obj-aarch64-linux-gnu && make -j8 test ARGS\+=--verbose ARGS\+=-j8 returned exit code 2
make: *** [debian/rules:13: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-08-30T02:23:53Z
-------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/artifact/2398167/

The most likely cause of build failures is the removed backwards compatibility for
CMake versions earlier than 3.5. You can find additional information in my
debian-devel announcement:

https://lists.debian.org/debian-devel/2025/04/msg00310.html

About the archive rebuild: The build was made on debusine.debian.net,
using sbuild.

You can find the build task here:
https://debusine.debian.net/work-request/153566/

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Thanks,
Timo

#1113084#12
Date:
2025-09-01 11:51:50 UTC
From:
To:
I have downgraded the bug to non-RC severity temporarily and reverted
CMake in unstable to version 3.31.6. I plan to re-upgrade in about a
month's time. I realize that despite my April announcement, the upload
to unstable came rather surprising, and I don't want to cause
unnecessary pain.

Also, the build log URL has an unfortunate mistake. The correct URL
should include the workspace, i.e.,

https://debusine.debian.net/debian/developers/artifact/XXXX

CMake 4 will also be available in experimental again, so it can be
used to verify that the bug is fixed.

Cheers
Timo

#1113084#19
Date:
2025-10-29 10:34:26 UTC
From:
To:
Source: kpublictransport
Followup-For: Bug #1113084
Control: severity -1 important
Control: retitle -1 kpublictransport: sporadic test suite failure

Hi,

the failure in the log file is the following:

********* Start testing of CacheTest *********
Config: Using QtTest library 6.8.2, Qt 6.8.2 (arm64-little_endian-lp64 shared (dynamic) release build; by GCC 14.3.0), debian unknown
PASS   : CacheTest::initTestCase()
QWARN  : CacheTest::testLocationCache() QIODevice::write (QFile, "/build/reproducible-path/kpublictransport-25.04.3/debian/.debhelper/generated/_source/home/.qttest/cache/org.kde.kpublictransport/backends/unittest/location/d5ad7d49e02f5cec70f1eab4288db4d936f3fa62.attribution"): device not open
FAIL!  : CacheTest::testLocationCache() Compared values are not the same
   Actual   (entry.type)            : 0
   Expected (CacheHitType::Positive): 1
   Loc: [./autotests/cachetest.cpp(58)]
PASS   : CacheTest::testLocationCacheKey()
PASS   : CacheTest::cleanupTestCase()
Totals: 3 passed, 1 failed, 0 skipped, 0 blacklisted, 2ms
********* Finished testing of CacheTest *********

I tried to reproduce it with both
- cmake 3.31.6 -- as currently available in unstable
- cmake 4.1.2 -- as currently available in experimental
and the build passed in both cases. My thought here is that the failure
is simply a flakiness, possibly (but that's a very broad speculation
though) due to the parallelism of the tests. Because of this, I'm
- downgrading the severity to important
- retitling accordingly, dropping the cmake 4 reference
- dropping the cmake-4 user tagging

If anyone has a reliable way to reproduce it, please do followup here
so it can be properly investigated & fixed.

Thanks,

#1113084#30
Date:
2025-10-29 13:29:21 UTC
From:
To:
/Sune