Skip to content

[Bug]: test_backend_qt.py::test_fig_close causes python to Aborted #24770

Closed
@sandrotosi

Description

@sandrotosi

Bug summary

While running tests with both python3.10 and 3.11 in debian unstable, i noticed that test_backend_qt.py::test_fig_close causes a Fatal Python error: Aborted

Code for reproduction

=build/lib.linux-x86_64-cpython-311 MATPLOTLIBDATA=/build/matplotlib-3.6.2/lib/matplotlib/mpl-data/ MPLCONFIGDIR=. xvfb-run -a python3.11-dbg -m pytest --verbose --full-trace build/lib.linux-x86_64-cpython-311/matplotlib/tests/test_backend_qt.py::test_fig_close

Actual outcome

root@zion:/build/matplotlib-3.6.2# PYTHONPATH=build/lib.linux-x86_64-cpython-311 MATPLOTLIBDATA=/build/matplotlib-3.6.2/lib/matplotlib/mpl-data/ MPLCONFIGDIR=. xvfb-run -a python3.11-dbg -m pytest --verbose --full-trace build/lib.linux-x86_64-cpython-311/matplotlib/tests/test_backend_qt.py::test_fig_close                                                                      
Matplotlib is not built with the correct FreeType version to run tests.  Rebuild without setting system_freetype=1 in mplsetup.cfg.  Expect many image comparison failures below.  Expected freetype version 2.6.1.  Found freetype version 2.12.1.  Freetype build type is not local
============================================================================================================================= test session starts ==============================================================================================================================
platform linux -- Python 3.11.1, pytest-7.2.0, pluggy-1.0.0+repack -- /usr/bin/python3.11-dbg
cachedir: .pytest_cache
rootdir: /build/matplotlib-3.6.2, configfile: pytest.ini
collected 1 item                                                                                                                                                                                                                                                               

build/lib.linux-x86_64-cpython-311/matplotlib/tests/test_backend_qt.py::test_fig_close Fatal Python error: Aborted

Current thread 0x00007eff20bb7040 (most recent call first):
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backends/backend_qt.py", line 145 in _create_qApp
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backends/backend_qt.py", line 206 in __init__
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backend_bases.py", line 2822 in create_with_canvas
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backend_bases.py", line 1703 in new_manager
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backend_bases.py", line 3510 in new_figure_manager_given_figure
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/backend_bases.py", line 3505 in new_figure_manager
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/pyplot.py", line 359 in new_figure_manager
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/pyplot.py", line 783 in figure
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/_api/deprecation.py", line 454 in wrapper
  File "/build/matplotlib-3.6.2/build/lib.linux-x86_64-cpython-311/matplotlib/tests/test_backend_qt.py", line 45 in test_fig_close
  File "/usr/lib/python3/dist-packages/_pytest/python.py", line 195 in pytest_pyfunc_call
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 39 in _multicall
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 265 in __call__
  File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1789 in runtest
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 167 in pytest_runtest_call
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 39 in _multicall
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 265 in __call__
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 260 in <lambda>
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 339 in from_call
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 259 in call_runtest_hook
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 220 in call_and_report
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 131 in runtestprotocol
  File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 112 in pytest_runtest_protocol
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 39 in _multicall
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 265 in __call__
  File "/usr/lib/python3/dist-packages/_pytest/main.py", line 349 in pytest_runtestloop
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 39 in _multicall
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 265 in __call__
  File "/usr/lib/python3/dist-packages/_pytest/main.py", line 324 in _main
  File "/usr/lib/python3/dist-packages/_pytest/main.py", line 270 in wrap_session
  File "/usr/lib/python3/dist-packages/_pytest/main.py", line 317 in pytest_cmdline_main
  File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 39 in _multicall
  File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 265 in __call__
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 167 in main
  File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 190 in console_main
  File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 5 in <module>
  File "/usr/lib/python3.11/runpy.py", line 88 in _run_code
  File "/usr/lib/python3.11/runpy.py", line 198 in _run_module_as_main

Extension modules: numpy.core._multiarray_umath, numpy.core._multiarray_tests, numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, matplotlib._c_internal_utils, PIL._imaging, matplotlib._path, kiwisolver, matplotlib._image, PyQt5.QtCore, PyQt5.QtGui, PyQt5.QtWidgets (total: 21)
Aborted

(btw no idea what's that Matplotlib is not built with the correct FreeType version to run tests is about given we build with:

# grep -B1 freetype debian/mplsetup.cfg 
[libs]
system_freetype = 1

)

Expected outcome

test not failing

Additional information

No response

Operating system

Debian

Matplotlib Version

3.6.2

Matplotlib Backend

Qt

Python version

Python 3.11.1

Jupyter version

No response

Installation

from source (.tar.gz)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions