Source: python-pyvista Version: 0.46.5-3 Severity: normal Control: forwarded -1 https://github.com/pyvista/pyvista/issues/8275
python-pyvista 0.46.5 has started failing test_vtk_error_catcher with vtk9 9.5.2+dfsg3, which only added parallel HDF5 and xdmf3 support. Tests previously passed with vtk9 9.5.2+dfsg2. But it's not obvious that the configuration changes to vtk9 should cause test_vtk_error_catcher to start failing. A log for the failing test is found at https://ci.debian.net/packages/p/python-pyvista/unstable/amd64/68202056/ or also https://ci.debian.net/packages/p/python-pyvista/testing/amd64/68216018/ I can reproduce the error locally with a command line run of pytest. pytest-3 -v tests/core/test_utilities.py -k test_vtk_error_catcher $ pytest-3 -v tests/core/test_utilities.py -k test_vtk_error_catcher ================================================================================================================================== test session starts =================================================================================================================================== platform linux -- Python 3.13.11, pytest-9.0.2, pluggy-1.6.0 -- /usr/bin/python3 cachedir: .pytest_cache hypothesis profile 'default' Test order randomisation NOT enabled. Enable with --random-order or --random-order-bucket=<bucket_type> benchmark: 5.2.3 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000) required packages: matplotlib-3.10.7+dfsg1, numpy-2.3.5, pillow-12.1.0, pooch-1.8.2, scooby-0.11.0, typing-extensions-4.15.0, vtk (not found), vtk (not found), vtk (not found) optional 'colormaps' package: colorcet-3.1.0 optional 'io' packages: imageio-2.37.2, meshio-5.3.5 optional 'jupyter' packages: ipywidgets-8.1.5, nest_asyncio-1.6.0 optional packages not found: cmcrameri, cmocean, jupyter-server-proxy, trame-client, trame-server, trame-vtk, trame-vuetify, trame rootdir: /projects/python/build/python-pyvista configfile: pyproject.toml plugins: rerunfailures-16.1, remotedata-0.4.1, anyio-4.11.0, cov-5.0.0, arraydiff-0.6.1, xdist-3.8.0, mock-3.15.1, hypothesis-6.150.0, filter-subpackage-0.2.0, timeout-2.4.0, typeguard-4.4.4, xvfb-3.0.0, astropy-0.11.0, random-order-0.0.0, openfiles-0.6.0, benchmark-5.2.3, mpi-0.6, asyncio-1.3.0, astropy-header-0.2.2, doctestplus-1.7.1 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collected 276 items / 275 deselected / 1 selected tests/core/test_utilities.py::test_vtk_error_catcher FAILED [100%] ======================================================================================================================================== FAILURES ======================================================================================================================================== _________________________________________________________________________________________________________________________________ test_vtk_error_catcher _________________________________________________________________________________________________________________________________ def test_vtk_error_catcher(): # raise_errors: False error_catcher = pv.core.utilities.observers.VtkErrorCatcher() with error_catcher: _generate_vtk_err() _generate_vtk_err() > assert len(error_catcher.events) == 2 E AssertionError: assert 4 == 2 E + where 4 = len([VtkEvent(kind='ERROR', path='vtkStreamingDemandDrivenPipeline.cxx', address='0x2b71b5d0', alert='The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71b020) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3.'), VtkEvent(kind='ERROR', path='vtkTrivialProducer.cxx', address='0x2b71b020', alert='This data object does not contain the requested extent.'), VtkEvent(kind='ERROR', path='vtkStreamingDemandDrivenPipeline.cxx', address='0x2b71a110', alert='The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71a740) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3.'), VtkEvent(kind='ERROR', path='vtkTrivialProducer.cxx', address='0x2b71a740', alert='This data object does not contain the requested extent.')]) E + where [VtkEvent(kind='ERROR', path='vtkStreamingDemandDrivenPipeline.cxx', address='0x2b71b5d0', alert='The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71b020) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3.'), VtkEvent(kind='ERROR', path='vtkTrivialProducer.cxx', address='0x2b71b020', alert='This data object does not contain the requested extent.'), VtkEvent(kind='ERROR', path='vtkStreamingDemandDrivenPipeline.cxx', address='0x2b71a110', alert='The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71a740) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3.'), VtkEvent(kind='ERROR', path='vtkTrivialProducer.cxx', address='0x2b71a740', alert='This data object does not contain the requested extent.')] = <pyvista.core.utilities.observers.VtkErrorCatcher object at 0x7f8692bc6cf0>.events tests/core/test_utilities.py:756: AssertionError ---------------------------------------------------------------------------------------------------------------------------------- Captured stderr call ---------------------------------------------------------------------------------------------------------------------------------- 2026-01-30 16:47:01.939 ( 3.612s) [ 7F86FDC9A200]vtkStreamingDemandDrive:878 ERR| vtkStreamingDemandDrivenPipeline (0x2b71b5d0): The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71b020) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3. 2026-01-30 16:47:01.940 ( 3.613s) [ 7F86FDC9A200] vtkTrivialProducer.cxx:230 ERR| vtkTrivialProducer (0x2b71b020): This data object does not contain the requested extent. 2026-01-30 16:47:01.943 ( 3.617s) [ 7F86FDC9A200]vtkStreamingDemandDrive:878 ERR| vtkStreamingDemandDrivenPipeline (0x2b71a110): The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71a740) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3. 2026-01-30 16:47:01.944 ( 3.617s) [ 7F86FDC9A200] vtkTrivialProducer.cxx:230 ERR| vtkTrivialProducer (0x2b71a740): This data object does not contain the requested extent. ----------------------------------------------------------------------------------------------------------------------------------- Captured log call ------------------------------------------------------------------------------------------------------------------------------------ ERROR root:observers.py:142 The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71b020) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3. ERROR root:observers.py:142 This data object does not contain the requested extent. ERROR root:observers.py:142 The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer (0x2b71a740) is 0 39 0 39 0 39, which is outside the whole extent 0 3 0 3 0 3. ERROR root:observers.py:142 This data object does not contain the requested extent. ================================================================================================================================ short test summary info ================================================================================================================================= FAILED tests/core/test_utilities.py::test_vtk_error_catcher - AssertionError: assert 4 == 2 =========================================================================================================================== 1 failed, 275 deselected in 1.85s ============================================================================================================================ Issue #8275 raised upstream https://github.com/pyvista/pyvista/issues/8275

