Source: libportal
Version: 0.7.1-1
Severity: important
Tags: patch ftbfs
Justification: fails to build from source (but built successfully in the past)
User: [email protected]
Usertags: riscv64
X-Debbugs-Cc: [email protected]

Dear maintainer,

libportal fails to build from source on riscv64 (and a few other slow
architectures) with a timeout in a test:

| ==================================== 2/2 =====================================
| test:         pytest
| start time:   16:03:45
| duration:     60.05s
| result:       killed by signal 15 SIGTERM
| command:      MALLOC_PERTURB_=44 
LD_LIBRARY_PATH=/<<PKGBUILDDIR>>/obj-riscv64-linux-gnu/libportal 
GI_TYPELIB_PATH=/<<PKGBUILDDIR>>/obj-riscv64-linux-gnu/libportal 
/usr/bin/pytest-3 --verbose --log-level=DEBUG
| ----------------------------------- stdout -----------------------------------
| ============================= test session starts 
==============================
| platform linux -- Python 3.11.5, pytest-7.4.1, pluggy-1.3.0 -- 
/usr/bin/python3
| cachedir: .pytest_cache
| rootdir: /<<PKGBUILDDIR>>/tests
| collecting ... collected 30 items
| 
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_close_session 
PASSED [  3%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_connect_to_eis 
PASSED [  6%]
| 
pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_connect_to_eis_fail_connect_before_start
 PASSED [ 10%]
| 
pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_connect_to_eis_fail_reconnect
 PASSED [ 13%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_connect_to_eis_v1 
PASSED [ 16%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_create_session 
PASSED [ 20%]
| 
pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_create_session_no_outputs
 PASSED [ 23%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_axis 
PASSED [ 26%]
| 
pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_axis_discrete
 PASSED [ 30%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_button 
PASSED [ 33%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_key PASSED 
[ 36%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_motion 
PASSED [ 40%]
| 
pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_motion_absolute
 PASSED [ 43%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_notify_touch 
PASSED [ 46%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_session_start 
PASSED [ 50%]
| pyportaltest/test_remotedesktop.py::TestRemoteDesktop::test_version PASSED [ 
53%]
| pyportaltest/test_screencast.py::TestScreenCast::test_close_session PASSED [ 
56%]
| pyportaltest/test_screencast.py::TestScreenCast::test_create_session PASSED [ 
60%]
| pyportaltest/test_screencast.py::TestScreenCast::test_create_session_v3
| ==============================================================================
| 
| 
| Summary of Failures:
| 
| 2/2 pytest       TIMEOUT        60.05s   killed by signal 15 SIGTERM
| 
| Ok:                 1
| Expected Fail:      0
| Fail:               0
| Unexpected Pass:    0
| Skipped:            0
| Timeout:            1
| dh_auto_test: error: cd obj-riscv64-linux-gnu && 
DEB_PYTHON_INSTALL_LAYOUT=deb LC_ALL=C.UTF-8 MESON_TESTTHREADS=4 meson test 
returned exit code 1
| make[1]: *** [debian/rules:60: override_dh_auto_test] Error 25
| make[1]: Leaving directory '/<<PKGBUILDDIR>>'
| make: *** [debian/rules:51: binary-arch] Error 2
| dpkg-buildpackage: error: debian/rules binary-arch subprocess returned exit 
status 2

The full build log is available there:
https://buildd.debian.org/status/fetch.php?pkg=libportal&arch=riscv64&ver=0.7.1-1&stamp=1694361910&raw=0

After investigation, it appeared the test actually passes, but needs
85 seconds instead of the 60 seconds it got allocated. The
following patch uses the --timeout-multiplier feature of meson to
increase the timeout. I didn't try to use a different multiplier
depending on the architecture as it has no impact on working tests
anyway.

--- libportal-0.7.1/debian/rules
+++ libportal-0.7.1/debian/rules
@@ -57,4 +57,4 @@
                $(NULL)
 
 override_dh_auto_test:
-       xvfb-run -a dh_auto_test
+       xvfb-run -a dh_auto_test -- --timeout-multiplier 2


Regards
Aurelien

Reply via email to