• Re: "Fatal Python error: Aborted" errors for Python/Qt packages

    From Julian Gilbey@21:1/5 to Roland Mas on Tue Mar 12 08:10:01 2024
    On Tue, Mar 12, 2024 at 07:55:55AM +0100, Roland Mas wrote:
    Hi Julian, Ghislain, list,

    I'm working on various Qt-related Python packages, and I'm seeing strange errors when building in cowbuilder chroots (with git-buildpackage). They don't seem to happen when building out-of-chroot. So far I managed to track them down to qtpy, but I'm stumped as to the why and how to fix. For instance, when building from commit
    b360a9defbb470fe6ab1793371d16487e52b548b, I get the following output during the testsuite:

    Hi Roland,

    I wonder whether it's related to the current t64 library changes in
    unstable? These are causing all sorts of issues during the transition
    period. Do the packages build OK in a testing chroot?

    Best wishes,

    Julian

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Roland Mas@21:1/5 to All on Tue Mar 12 08:10:01 2024
    Hi Julian, Ghislain, list,

    I'm working on various Qt-related Python packages, and I'm seeing
    strange errors when building in cowbuilder chroots (with
    git-buildpackage). They don't seem to happen when building
    out-of-chroot. So far I managed to track them down to qtpy, but I'm
    stumped as to the why and how to fix. For instance, when building from
    commit b360a9defbb470fe6ab1793371d16487e52b548b, I get the following
    output during the testsuite:

    -----

    adding 'QtPy-2.4.1.dist-info/top_level.txt'
    adding 'QtPy-2.4.1.dist-info/RECORD'
    removing build/bdist.linux-x86_64/wheel
    Successfully built QtPy-2.4.1-py3-none-any.whl
    I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.11
    with "installer" module
       dh_auto_test -O--buildsystem=pybuild
    I: pybuild pybuild:310: cp -a /build/python-qtpy-2.4.1/qtpy/tests/*.ui /build/python-qtpy-2.4.1/.pybuild/cpython3_3.12_qtpy/build/qtpy/tests/
    I: pybuild base:305: cd /build/python-qtpy-2.4.1/.pybuild/cpython3_3.12_qtpy/build; python3.12
    -m pytest
    ============================= test session starts ==============================
    platform linux -- Python 3.12.2, pytest-8.0.2, pluggy-1.4.0 -- /usr/bin/python3.12
    cachedir: .pytest_cache
    PyQt5 5.15.10 -- Qt runtime 5.15.10 -- Qt compiled 5.15.10

    PyQt5: PyQt: 5.15.10 - Qt: 5.15.10
    PySide2: not installed
    PyQt6: not installed
    PySide6: not installed

    rootdir: /build/python-qtpy-2.4.1/.pybuild/cpython3_3.12_qtpy/build
    configfile: pytest.ini
    testpaths: qtpy/tests
    plugins: xvfb-3.0.0, qt-4.3.1, cov-4.1.0
    collecting ... collected 126 items

    qtpy/tests/test_cli.py::test_cli_help_does_not_fail[] PASSED            
    [  0%]
    qtpy/tests/test_cli.py::test_cli_help_does_not_fail[mypy-args] PASSED   
    [  1%]
    qtpy/tests/test_cli.py::test_cli_version PASSED                         
    [  2%]
    qtpy/tests/test_cli.py::test_cli_mypy_args PASSED                       
    [  3%]
    qtpy/tests/test_cli.py::test_cli_pyright_config PASSED                  
    [  3%]
    qtpy/tests/test_compat.py::test_isalive Fatal Python error: Aborted

    Current thread 0x00007f2e921c3040 (most recent call first):
      File "/usr/lib/python3/dist-packages/pytestqt/plugin.py", line 76 in qapp
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 917
    in call_fixture_func
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 1140
    in pytest_fixture_setup
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 1087
    in execute
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 648
    in _compute_fixture_value
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 566
    in _get_active_fixturedef
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 547
    in getfixturevalue
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 689
    in _fillfixtures
      File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1834 in
    setup
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 511 in
    setup
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 158 in pytest_runtest_setup
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 263 in <lambda>
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 342 in from_call
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 262 in call_runtest_hook
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 223 in call_and_report
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 128 in runtestprotocol
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 115 in pytest_runtest_protocol
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 352 in pytest_runtestloop
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 327 in _main
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 273 in wrap_session
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 320 in pytest_cmdline_main
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py",
    line 175 in main
      File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py",
    line 198 in console_main
      File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 7 in <module>
      File "<frozen runpy>", line 88 in _run_code
      File "<frozen runpy>", line 198 in _run_module_as_main

    Extension modules: PyQt5.QtCore, PyQt5.QtGui, PyQt5.QtWidgets,
    PyQt5.QtTest, PyQt5.QtNetwork, PyQt5.QtXmlPatterns, PyQt5.QtXml, PyQt5.QtWebSockets, PyQt5.QtPrintSupport, PyQt5.QtWebKit, PyQt5.QtWebKitWidgets, PyQt5.QtWebChannel, PyQt5.QtTextToSpeech,
    PyQt5.QtSvg, PyQt5.QtSql, PyQt5.QtSerialPort, PyQt5.QtSensors, PyQt5.QtRemoteObjects, PyQt5.QtQml, PyQt5.QtQuick, PyQt5.QtQuickWidgets, PyQt5.QtPositioning, PyQt5.QtLocation, PyQt5.QtOpenGL,
    PyQt5.QtMultimedia, PyQt5.QtMultimediaWidgets, PyQt5.QtHelp,
    PyQt5.QtDesigner, PyQt5.QtDBus, PyQt5.QtWebEngineCore,
    PyQt5.QtWebEngineWidgets (total: 31)
    Aborted
    E: pybuild pybuild:391: test: plugin pyproject failed with: exit
    code=134: cd /build/python-qtpy-2.4.1/.pybuild/cpython3_3.12_qtpy/build; python3.12 -m pytest
    I: pybuild pybuild:310: cp -a /build/python-qtpy-2.4.1/qtpy/tests/*.ui /build/python-qtpy-2.4.1/.pybuild/cpython3_3.11_qtpy/build/qtpy/tests/
    I: pybuild base:305: cd /build/python-qtpy-2.4.1/.pybuild/cpython3_3.11_qtpy/build; python3.11
    -m pytest
    ============================= test session starts ==============================
    platform linux -- Python 3.11.8, pytest-8.0.2, pluggy-1.4.0 -- /usr/bin/python3.11
    cachedir: .pytest_cache
    PyQt5 5.15.10 -- Qt runtime 5.15.10 -- Qt compiled 5.15.10

    PyQt5: PyQt: 5.15.10 - Qt: 5.15.10
    PySide2: not installed
    PyQt6: not installed
    PySide6: not installed

    rootdir: /build/python-qtpy-2.4.1/.pybuild/cpython3_3.11_qtpy/build
    configfile: pytest.ini
    testpaths: qtpy/tests
    plugins: xvfb-3.0.0, qt-4.3.1, cov-4.1.0
    collecting ... collected 126 items

    qtpy/tests/test_cli.py::test_cli_help_does_not_fail[] PASSED            
    [  0%]
    qtpy/tests/test_cli.py::test_cli_help_does_not_fail[mypy-args] PASSED   
    [  1%]
    qtpy/tests/test_cli.py::test_cli_version PASSED                         
    [  2%]
    qtpy/tests/test_cli.py::test_cli_mypy_args PASSED                       
    [  3%]
    qtpy/tests/test_cli.py::test_cli_pyright_config PASSED                  
    [  3%]
    qtpy/tests/test_compat.py::test_isalive Fatal Python error: Aborted

    Current thread 0x00007f70617ce040 (most recent call first):
      File "/usr/lib/python3/dist-packages/pytestqt/plugin.py", line 76 in qapp
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 917
    in call_fixture_func
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 1140
    in pytest_fixture_setup
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 1087
    in execute
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 648
    in _compute_fixture_value
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 566
    in _get_active_fixturedef
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 547
    in getfixturevalue
      File "/usr/lib/python3/dist-packages/_pytest/fixtures.py", line 689
    in _fillfixtures
      File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1834 in
    setup
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 511 in
    setup
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 158 in pytest_runtest_setup
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 263 in <lambda>
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 342 in from_call
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 262 in call_runtest_hook
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 223 in call_and_report
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 128 in runtestprotocol
      File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 115 in pytest_runtest_protocol
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 352 in pytest_runtestloop
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 327 in _main
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 273 in wrap_session
      File "/usr/lib/python3/dist-packages/_pytest/main.py", line 320 in pytest_cmdline_main
      File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 102 in _multicall
      File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 119 in _hookexec
      File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 501 in __call__
      File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py",
    line 175 in main
      File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py",
    line 198 in console_main
      File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 7 in <module>
      File "<frozen runpy>", line 88 in _run_code
      File "<frozen runpy>", line 198 in _run_module_as_main

    Extension modules: PyQt5.QtCore, PyQt5.QtGui, PyQt5.QtWidgets,
    PyQt5.QtTest, PyQt5.QtNetwork, PyQt5.QtXmlPatterns, PyQt5.QtXml, PyQt5.QtWebSockets, PyQt5.QtPrintSupport, PyQt5.QtWebKit, PyQt5.QtWebKitWidgets, PyQt5.QtWebChannel, PyQt5.QtTextToSpeech,
    PyQt5.QtSvg, PyQt5.QtSql, PyQt5.QtSerialPort, PyQt5.QtSensors, PyQt5.QtRemoteObjects, PyQt5.QtQml, PyQt5.QtQuick, PyQt5.QtQuickWidgets, PyQt5.QtPositioning, PyQt5.QtLocation, PyQt5.QtOpenGL,
    PyQt5.QtMultimedia, PyQt5.QtMultimediaWidgets, PyQt5.QtHelp,
    PyQt5.QtDesigner, PyQt5.QtDBus, PyQt5.QtWebEngineCore,
    PyQt5.QtWebEngineWidgets (total: 31)
    Aborted
    E: pybuild pybuild:391: test: plugin pyproject failed with: exit
    code=134: cd /build/python-qtpy-2.4.1/.pybuild/cpython3_3.11_qtpy/build; python3.11 -m pytest
    dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p
    "3.12 3.11" returned exit code 13
    make: *** [debian/rules:11: binary] Error 25
    dpkg-buildpackage: error: debian/rules binary subprocess returned exit
    status 2
    E: Failed autobuilding of package
    I: user script /var/cache/pbuilder/build/cow.833834/tmp/hooks/C50shell-on-failure starting
    I: Build failed, opening shell
    I: user script /var/cache/pbuilder/build/cow.833834/tmp/hooks/C50shell-on-failure finished
    I: unmounting /home/blagandzig/debian/dependencies filesystem
    I: unmounting dev/ptmx filesystem
    I: unmounting dev/pts filesystem
    I: unmounting dev/shm filesystem
    I: unmounting proc filesystem
    I: unmounting sys filesystem
    I: Cleaning COW directory
    I: forking: rm -rf /var/cache/pbuilder/build/cow.833834
    gbp:error: 'git-pbuilder' failed: it exited with 1
    -----

    For some reason, installing dbus in the chroot (by declaring it in the Build-Depends) fixes the testsuite run for python-qtpy. However, a
    similar "Fatal Python error: Aborted" failure happens in another package
    I'm working on (plotpy), and installing dbus doesn't help there.

    If that rings a bell to anyone, I'll gladly accept any kind of guidance
    or hints as to how/what to debug.

    Thanks,

    Roland.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Roland Mas@21:1/5 to All on Tue Mar 12 11:40:01 2024
    Le 12/03/2024 à 08:09, Julian Gilbey a écrit :
    On Tue, Mar 12, 2024 at 07:55:55AM +0100, Roland Mas wrote:
    Hi Julian, Ghislain, list,

    I'm working on various Qt-related Python packages, and I'm seeing strange
    errors when building in cowbuilder chroots (with git-buildpackage). They
    don't seem to happen when building out-of-chroot. So far I managed to track >> them down to qtpy, but I'm stumped as to the why and how to fix. For
    instance, when building from commit
    b360a9defbb470fe6ab1793371d16487e52b548b, I get the following output during >> the testsuite:
    Hi Roland,

    I wonder whether it's related to the current t64 library changes in
    unstable? These are causing all sorts of issues during the transition period. Do the packages build OK in a testing chroot?

    I only tried python-qtpy, but I get exactly the same behaviour (failure
    as-is, success with dbus installed).

    Roland.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)