Package: src:silx Version: 2.2.1+dfsg-3 Severity: serious Tags: ftbfs forky sid
Dear maintainer: During a rebuild of all packages in unstable, your package failed to build. Below you will find how the build ends (probably the most relevant part, but not necessarily). If required, the full build log is available here: https://people.debian.org/~sanvila/build-logs/202509/ About the archive rebuild: The build was made on virtual machines from AWS, using sbuild and a reduced chroot with only build-essential packages. If you could not reproduce the bug please contact me privately, as I am willing to provide ssh access to a virtual machine where the bug is fully reproducible. If this is really a bug in one of the build-depends, please use reassign and add an affects on src:silx, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild pybuild --clean -i python{version} -p 3.13 rm -rf .pybuild/ find . -name \*.pyc -exec rm {} \; dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild rm -f debian/debhelper-build-stamp rm -rf debian/.debhelper/ rm -f -- debian/silx.substvars debian/python3-silx.substvars debian/python-silx-doc.substvars debian/files rm -fr -- debian/silx/ debian/tmp/ debian/python3-silx/ debian/python-silx-doc/ find . \( \( \ \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -type f -a \ [... snipped ...] # temporary install the scipy dataset before running the test pybuild --test -s custom --test-args="mkdir -p {home_dir}/.cache/scipy-data/ && cp debian/dataset-ascent/ascent.dat {home_dir}/.cache/scipy-data/" I: pybuild base:311: mkdir -p /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_silx/.cache/scipy-data/ && cp debian/dataset-ascent/ascent.dat /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_silx/.cache/scipy-data/ GPU=False WITH_QT_TEST=False SILX_OPENCL=False SILX_TEST_LOW_MEM=False \ dh_auto_test pybuild --test --test-pytest -i python{version} -p 3.13 I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_silx/build; python3.13 -m pytest ============================= test session starts ============================== platform linux -- Python 3.13.7, pytest-8.4.1, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_silx/build configfile: pyproject.toml plugins: xvfb-3.0.0, mock-3.14.1, typeguard-4.4.4 collected 2523 items silx/app/compare/test/test_compare.py ss [ 0%] silx/app/compare/test/test_launcher.py sssss [ 0%] silx/app/test/test_convert.py .... [ 0%] silx/app/utils/test/test_parseutils.py ..... [ 0%] silx/app/view/test/test_launcher.py sssss [ 0%] silx/app/view/test/test_plotselection.py sssss [ 1%] silx/app/view/test/test_view.py ssssssssssssssssssssssssssssssssss [ 2%] silx/gui/_glutils/test/test_gl.py ss [ 2%] silx/gui/data/test/test_arraywidget.py ssssssssssssssss [ 3%] silx/gui/data/test/test_dataviewer.py ssssssssssssssssssssssssssssssssss [ 4%] ssssssss [ 4%] silx/gui/data/test/test_numpyaxesselector.py sssssssss [ 5%] silx/gui/data/test/test_textformatter.py ssssssssssssssssssssssss [ 6%] silx/gui/dialog/test/test_colormapdialog.py ssssssssssssssssssssssssssss [ 7%] s [ 7%] silx/gui/dialog/test/test_datafiledialog.py ssssssssssssssssssssssssssss [ 8%] sssssss [ 8%] silx/gui/dialog/test/test_imagefiledialog.py sssssssssssssssssssssssssss [ 9%] sssssss [ 9%] silx/gui/fit/test/test_backgroundwidget.py ssss [ 10%] silx/gui/fit/test/test_fitconfig.py ssss [ 10%] silx/gui/fit/test/test_fitwidget.py sss [ 10%] silx/gui/hdf5/test/test_hdf5.py ssssssssssssssssssssssssssssssssssssssss [ 11%] sssssssssssssssssssssssssssssssssssss [ 13%] silx/gui/plot/_utils/test/test_dtime_ticklayout.py sssss [ 13%] silx/gui/plot/_utils/test/test_ticklayout.py sss [ 13%] silx/gui/plot/test/test_alphaslider.py sssssssss [ 14%] silx/gui/plot/test/test_axis.py ssss [ 14%] silx/gui/plot/test/test_colorbar.py ssssssssss [ 14%] silx/gui/plot/test/test_compareimages.py sssssssssssssssssssssssssssssss [ 15%] sssssssssssssssss [ 16%] silx/gui/plot/test/test_compleximageview.py s [ 16%] silx/gui/plot/test/test_curvesroiwidget.py ssssssssssssss [ 17%] silx/gui/plot/test/test_imagestack.py ssss [ 17%] silx/gui/plot/test/test_imageview.py ssssssss [ 17%] silx/gui/plot/test/test_interaction.py s [ 17%] silx/gui/plot/test/test_item.py sssssssssssssssssssssssssssssssssssss [ 19%] silx/gui/plot/test/test_legendselector.py ss [ 19%] silx/gui/plot/test/test_limitconstraints.py sssssssss [ 19%] silx/gui/plot/test/test_masktoolswidget.py sssss [ 19%] silx/gui/plot/test/test_pixelintensityhistoaction.py ssss [ 19%] silx/gui/plot/test/test_plotactions.py ss [ 20%] silx/gui/plot/test/test_plotinteraction.py sssssssssssssssssssss [ 20%] silx/gui/plot/test/test_plotwidget.py ssssssssssssssssssssssssssssssssss [ 22%] ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 25%] ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 27%] sssssssss [ 28%] silx/gui/plot/test/test_plotwidgetactiveitem.py sssssssssssssssss [ 28%] silx/gui/plot/test/test_plotwidgetdatamargins.py sssssssss [ 29%] silx/gui/plot/test/test_plotwidgetnobackend.py sssssssssssssssssssssss [ 30%] silx/gui/plot/test/test_plotwindow.py ssssss [ 30%] silx/gui/plot/test/test_roistatswidget.py ssssssssssss [ 30%] silx/gui/plot/test/test_saveaction.py ss [ 30%] silx/gui/plot/test/test_scattermasktoolswidget.py sssss [ 31%] silx/gui/plot/test/test_scatterview.py ss [ 31%] silx/gui/plot/test/test_stackview.py ssssssssss [ 31%] silx/gui/plot/test/test_stats.py sssssssssssssssssssssssssssssssss [ 32%] silx/gui/plot/test/test_utilsaxis.py sssssssssssssss [ 33%] silx/gui/plot/tools/test/test_curvelegendswidget.py ss [ 33%] silx/gui/plot/tools/test/test_profile.py sssssssssss [ 34%] silx/gui/plot/tools/test/test_roicore.py ssssssssssss [ 34%] silx/gui/plot/tools/test/test_roiitems.py sssssssssssssssssssssssssss [ 35%] silx/gui/plot/tools/test/test_scatterprofiletoolbar.py sss [ 35%] silx/gui/plot/tools/test/test_tools.py sssss [ 35%] silx/gui/plot3d/scene/test/test_transform.py s [ 35%] silx/gui/plot3d/scene/test/test_utils.py ssssssss [ 36%] silx/gui/plot3d/test/test_gl.py s [ 36%] silx/gui/plot3d/test/test_scalarfieldview.py sss [ 36%] silx/gui/plot3d/test/test_scenewidget.py s [ 36%] silx/gui/plot3d/test/test_scenewidgetpicking.py ssssss [ 36%] silx/gui/plot3d/test/test_scenewindow.py sssss [ 36%] silx/gui/plot3d/test/test_statswidget.py ss [ 37%] silx/gui/plot3d/tools/test/test_positioninfowidget.py s [ 37%] silx/gui/test/test_colors.py sssssssssssssssssssssssssssssssssssssssssss [ 38%] ssssss [ 39%] silx/gui/test/test_console.py ss [ 39%] silx/gui/test/test_icons.py ssssssssssssssss [ 39%] silx/gui/test/test_qt.py ssss [ 39%] silx/gui/utils/test/test_async.py sss [ 39%] silx/gui/utils/test/test_blocksignals.py ss [ 40%] silx/gui/utils/test/test_glutils.py ssss [ 40%] silx/gui/utils/test/test_image.py ssssss [ 40%] silx/gui/utils/test/test_qtutils.py sssss [ 40%] silx/gui/utils/test/test_testutils.py s [ 40%] silx/gui/widgets/test/test_boxlayoutdockwidget.py s [ 40%] silx/gui/widgets/test/test_elidedlabel.py ssssssss [ 41%] silx/gui/widgets/test/test_floatedit.py ssss [ 41%] silx/gui/widgets/test/test_flowlayout.py s [ 41%] silx/gui/widgets/test/test_framebrowser.py s [ 41%] silx/gui/widgets/test/test_hierarchicaltableview.py sss [ 41%] silx/gui/widgets/test/test_legendiconwidget.py sss [ 41%] silx/gui/widgets/test/test_periodictable.py ssssssss [ 41%] silx/gui/widgets/test/test_printpreview.py ssss [ 42%] silx/gui/widgets/test/test_rangeslider.py sss [ 42%] silx/gui/widgets/test/test_stackedprogressbar.py ssss [ 42%] silx/gui/widgets/test/test_tablewidget.py s [ 42%] silx/gui/widgets/test/test_threadpoolpushbutton.py sssss [ 42%] silx/gui/widgets/test/test_urlselectiontable.py ssss [ 42%] silx/gui/widgets/test/test_waitingoverlay.py ss [ 42%] silx/image/marchingsquares/test/test_funcapi.py .. [ 42%] silx/image/marchingsquares/test/test_mergeimpl.py ...................... [ 43%] .... [ 43%] silx/image/test/test_bb.py .... [ 44%] silx/image/test/test_bilinear.py ...... [ 44%] silx/image/test/test_medianfilter.py .s [ 44%] silx/image/test/test_shapes.py ............ [ 44%] silx/image/test/test_tomography.py ss [ 44%] silx/io/test/test_commonh5.py ............................... [ 46%] silx/io/test/test_dictdump.py .........................F........ [ 47%] silx/io/test/test_fabioh5.py ................................... [ 48%] silx/io/test/test_fioh5.py ................. [ 49%] silx/io/test/test_h5link_utils.py . [ 49%] silx/io/test/test_h5py_utils.py ....... [ 49%] silx/io/test/test_nxdata.py .................... [ 50%] silx/io/test/test_octaveh5.py .. [ 50%] silx/io/test/test_rawh5.py ... [ 50%] silx/io/test/test_sliceh5.py ............ [ 51%] silx/io/test/test_specfile.py ....................s. [ 52%] silx/io/test/test_specfilewrapper.py .......... [ 52%] silx/io/test/test_spech5.py ............................................ [ 54%] .. [ 54%] silx/io/test/test_spectoh5.py ...... [ 54%] silx/io/test/test_url.py ............................................... [ 56%] .. [ 56%] silx/io/test/test_utils.py ............................................. [ 58%] ....................... [ 59%] silx/io/test/test_write_to_h5.py ... [ 59%] silx/math/fft/test/test_fft.py ssss.ss.s [ 59%] silx/math/fit/test/test_bgtheories.py ...... [ 60%] silx/math/fit/test/test_filters.py ... [ 60%] silx/math/fit/test/test_fit.py ......... [ 60%] silx/math/fit/test/test_fitmanager.py ............. [ 60%] silx/math/fit/test/test_functions.py .......... [ 61%] silx/math/fit/test/test_peaks.py .......................... [ 62%] silx/math/medianfilter/test/test_medianfilter.py ....................... [ 63%] ............ [ 63%] silx/math/test/test_HistogramndLut_nominal.py .......................... [ 64%] ......................... [ 65%] silx/math/test/test_calibration.py ................. [ 66%] silx/math/test/test_colormap.py ........... [ 66%] silx/math/test/test_combo.py ..... [ 67%] silx/math/test/test_histogramnd_error.py ......................... [ 68%] silx/math/test/test_histogramnd_nominal.py ............................. [ 69%] .............................................. [ 71%] silx/math/test/test_histogramnd_vs_np.py ....s.........s.........s...... [ 72%] ...s.........s.........s.........s.........s.........s.........s........ [ 75%] .s.........s.........s.........s.........s.........s.........s.........s [ 78%] .........s.........s.........s.........s.........s.........s.........s.. [ 80%] .......s.........s..... [ 81%] silx/math/test/test_interpolate.py .... [ 81%] silx/math/test/test_marchingcubes.py .. [ 82%] silx/opencl/codec/test/test_bitshuffle_lz4.py ssssssssssssssssssssssss [ 82%] silx/opencl/codec/test/test_byte_offset.py sssssss [ 83%] silx/opencl/test/test_addition.py sss [ 83%] silx/opencl/test/test_array_utils.py s [ 83%] silx/opencl/test/test_backprojection.py sss [ 83%] silx/opencl/test/test_convolution.py sssssssssssssssssssssssssssssssssss [ 84%] ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 87%] ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 90%] sssssssssssss [ 91%] silx/opencl/test/test_doubleword.py sssssssss [ 91%] silx/opencl/test/test_image.py sss [ 91%] silx/opencl/test/test_kahan.py ss [ 91%] silx/opencl/test/test_linalg.py sss [ 91%] silx/opencl/test/test_medfilt.py s [ 91%] silx/opencl/test/test_projection.py s [ 91%] silx/opencl/test/test_sparse.py ss [ 91%] silx/opencl/test/test_stats.py s [ 92%] silx/test/test_resources.py ................................ [ 93%] silx/test/test_sx.py ssssssss [ 93%] silx/test/test_version.py . [ 93%] silx/utils/test/test_array_like.py ..................... [ 94%] silx/utils/test/test_debug.py .... [ 94%] silx/utils/test/test_deprecation.py ....... [ 94%] silx/utils/test/test_enum.py . [ 94%] silx/utils/test/test_external_resources.py ss [ 95%] silx/utils/test/test_launcher.py ............... [ 95%] silx/utils/test/test_number.py .......................... [ 96%] silx/utils/test/test_proxy.py ............................... [ 97%] silx/utils/test/test_retry.py ...... [ 98%] silx/utils/test/test_testutils.py ....... [ 98%] silx/utils/test/test_weakref.py ........................................ [100%] =================================== FAILURES =================================== ______________________________ test_dicttonx_pint ______________________________ tmp_h5py_file = <HDF5 file "<_io.BytesIO object at 0x7faa94714b30>" (mode r+)> @pytest.mark.skipif(pint is None, reason="Require pint") def test_dicttonx_pint(tmp_h5py_file): ureg = pint.UnitRegistry() treedict = { "array_mm": pint.Quantity([1, 2, 3], ureg.mm), "value_kg": 3 * ureg.kg, } > dictdump.dicttonx(treedict, tmp_h5py_file) silx/io/test/test_dictdump.py:836: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ silx/io/dictdump.py:737: in dicttonx nxtreedict = nexus_to_h5_dict(treedict, parents=parents, add_nx_class=add_nx_class) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ silx/io/dictdump.py:480: in nexus_to_h5_dict copy[(key, "units")] = f"{value.units:~C}" ^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/pint/facets/plain/unit.py:67: in __format__ return self._REGISTRY.formatter.format_unit(self, spec) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/pint/delegates/formatter/full.py:138: in format_unit return self.get_formatter(uspec).format_unit( /usr/lib/python3/dist-packages/pint/delegates/formatter/plain.py:209: in format_unit numerator, denominator = prepare_compount_unit( /usr/lib/python3/dist-packages/pint/delegates/formatter/_compound_unit_helpers.py:297: in prepare_compount_unit numerator = sort_func(numerator, registry) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/pint/delegates/formatter/_compound_unit_helpers.py:189: in sort_by_unit_name return sorted(items, key=lambda el: el[2]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/pint/delegates/formatter/_compound_unit_helpers.py:160: in to_symbol_exponent_name return registry._get_symbol(el[0]), el[1], el[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/pint/facets/plain/registry.py:711: in _get_symbol return self._units[name].symbol ^^^^^^^^^^^^^^^^^ /usr/lib/python3.13/collections/__init__.py:1019: in __getitem__ return self.__missing__(key) # support subclasses that define __missing__ ^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = ChainMap({'meter': UnitDefinition(name='meter', defined_symbol='m', aliases=('metre',), converter=ScaleConverter(scale...se', defined_symbol='cP', aliases=(), converter=ScaleConverter(scale=0.01), reference=<UnitsContainer({'poise': 1})>)}) key = 'millimeter' def __missing__(self, key): > raise KeyError(key) E KeyError: 'millimeter' /usr/lib/python3.13/collections/__init__.py:1011: KeyError =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/jupyter_client/connect.py:22 /usr/lib/python3/dist-packages/jupyter_client/connect.py:22: DeprecationWarning: Jupyter is migrating its paths to use standard platformdirs given by the platformdirs library. To remove this warning and see the appropriate new directories, set the environment variable `JUPYTER_PLATFORM_DIRS=1` and then run `jupyter --paths`. The use of platformdirs will be the default in `jupyter_core` v6 from jupyter_core.paths import jupyter_data_dir, jupyter_runtime_dir, secure_write ../../../../../../usr/lib/python3/dist-packages/pytools/persistent_dict.py:52 /usr/lib/python3/dist-packages/pytools/persistent_dict.py:52: RecommendedHashNotFoundWarning: Unable to import recommended hash 'siphash24.siphash13', falling back to 'hashlib.sha256'. Run 'python3 -m pip install siphash24' to install the recommended hash. warn("Unable to import recommended hash 'siphash24.siphash13', " silx/io/test/test_h5py_utils.py: 10 warnings /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=398) is multi-threaded, use of fork() may lead to deadlocks in the child. self.pid = os.fork() -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED silx/io/test/test_dictdump.py::test_dicttonx_pint - KeyError: 'millime... ========== 1 failed, 1152 passed, 1370 skipped, 12 warnings in 21.81s ========== E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_silx/build; python3.13 -m pytest rm -fr -- /tmp/dh-xdg-rundir-3K5065Zw dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make[1]: *** [debian/rules:68: override_dh_auto_test] Error 25 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:28: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

