Package: src:tomwer Version: 1.4.8-1 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:tomwer, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --with python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --with python3 --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer * Building wheel... Creating converter from 7 to 5 Creating converter from 5 to 7 [... snipped ...] tomwer/core/utils/tests/test_image.py::test_shift_image[False-0.0-3.6-2] PASSED [ 42%] tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 PASSED [ 43%] tomwer/core/utils/tests/test_nxtomo.py::test_get_n_series PASSED [ 43%] tomwer/core/utils/tests/test_scan_utils.py::test_format_output_location PASSED [ 44%] tomwer/core/utils/tests/test_time.py::test_timer PASSED [ 45%] tomwer/core/volume/tests/test_volumes.py::test_volume_data_parent_folder PASSED [ 45%] tomwer/core/volume/tests/test_volumes.py::test_raw_identifier PASSED [ 46%] tomwer/core/process/control/tests/test_concatenate_nxtomos.py::test_concatenate_nx_tomo_task PASSED [ 47%] tomwer/core/process/control/tests/test_concatenate_nxtomos.py::test_format_output_location PASSED [ 47%] tomwer/core/process/control/tests/test_email.py::test__ls_tomo_obj PASSED [ 48%] tomwer/core/process/control/tests/test_email.py::test_format_email_info PASSED [ 49%] tomwer/core/process/control/tests/test_h52nx_process.py::test_h52nx_process_deduce_output_file_path PASSED [ 50%] tomwer/core/process/control/tests/test_h52nx_process.py::test_edf2nx_process_deduce_output_file_path PASSED [ 50%] tomwer/core/process/control/tests/test_h52nx_process.py::test_get_default_raw_data_output_file PASSED [ 51%] tomwer/core/process/drac/tests/test_gallery.py::test_deduce_dataset_gallery_dir PASSED [ 52%] tomwer/core/process/drac/tests/test_gallery.py::test_deduce_proposal_gallery_dir PASSED [ 52%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[HDF5Volume-default] PASSED [ 53%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[HDF5Volume-change_name] PASSED [ 54%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[HDF5Volume-change_dir] PASSED [ 54%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[EDFVolume-default] PASSED [ 55%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[EDFVolume-change_name] PASSED [ 56%] tomwer/core/process/drac/tests/test_icat_processed_dataset.py::test_IcatReconstructedVolumeDataset[EDFVolume-change_dir] PASSED [ 56%] tomwer/core/process/drac/tests/test_icat_raw_dataset.py::test_IcatRawDataset PASSED [ 57%] tomwer/core/process/drac/tests/test_icat_raw_dataset.py::test_select_angles PASSED [ 58%] tomwer/core/process/edit/tests/test_darkflatpatch.py::TestDaarkFlatPatch::test PASSED [ 58%] tomwer/core/process/edit/tests/test_imagekey_editor.py::TestImageKeyEditor::test PASSED [ 59%] tomwer/core/process/edit/tests/test_imagekey_editor.py::test_ImageKeyUpgraderTask PASSED [ 60%] tomwer/core/process/reconstruction/tests/test_axis.py::test_read_x_rotation_axis_pixel_position PASSED [ 60%] tomwer/core/process/reconstruction/tests/test_axis_params.py::test_axis_resource PASSED [ 61%] tomwer/core/process/reconstruction/tests/test_axis_params.py::test_AxisCalculationInput PASSED [ 62%] tomwer/core/process/reconstruction/tests/test_darkref.py::test_quick_run_necessary_edf PASSED [ 63%] tomwer/core/process/reconstruction/tests/test_darkref.py::test_quick_run_necessary_hdf5 PASSED [ 63%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-False-False-False] PASSED [ 64%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-False-True-False] PASSED [ 65%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-False-False-True] PASSED [ 65%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-False-True-True] PASSED [ 66%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-False-False-False] PASSED [ 67%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-False-True-False] PASSED [ 67%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-False-False-True] PASSED [ 68%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-False-True-True] PASSED [ 69%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-True-False-False] PASSED [ 69%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-True-True-False] PASSED [ 70%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-True-False-True] PASSED [ 71%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[False-True-True-True] PASSED [ 71%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-True-False-False] PASSED [ 72%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-True-True-False] PASSED [ 73%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-True-False-True] PASSED [ 73%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_register_and_copy_darks_and_flats[True-True-True-True] PASSED [ 74%] tomwer/core/process/reconstruction/tests/test_darkref_copy.py::test_save_reduced_frames_to_be_copied PASSED [ 75%] tomwer/core/process/reconstruction/tests/test_params_cache.py::test_cache PASSED [ 76%] tomwer/core/process/reconstruction/tests/test_paramsbase.py::test_paramsbase PASSED [ 76%] tomwer/core/process/reconstruction/tests/test_paramsbase.py::test_get_db_fromstr PASSED [ 77%] tomwer/core/process/reconstruction/tests/test_paramsbase.py::test_basic_DKRFRP PASSED [ 78%] tomwer/core/process/reconstruction/tests/test_paramsbase.py::test_ReconsParams_from_dict[DKRFRP] PASSED [ 78%] tomwer/core/process/reconstruction/tests/test_paramsbase.py::test_ReconsParams_from_dict[AxisRP] PASSED [ 79%] tomwer/core/process/reconstruction/tests/test_saaxis.py::TestScoreFunctions::test_img_contrast_std_score PASSED [ 80%] tomwer/core/process/reconstruction/tests/test_saaxis.py::TestScoreFunctions::test_method_to_function PASSED [ 80%] tomwer/core/process/reconstruction/tests/test_saaxis.py::TestSAAxisProcess::test FAILED [ 81%] tomwer/core/process/reconstruction/tests/test_sadeltabeta.py::TestSADeltaBetaProcess::test PASSED [ 82%] tomwer/core/process/reconstruction/tests/test_utils.py::test_cor_conversion PASSED [ 82%] tomwer/core/process/script/tests/test_script.py::TestPythonScript::test PASSED [ 83%] tomwer/core/process/stitching/tests/test_metadataholder.py::test_to_dict_from_dict PASSED [ 84%] tomwer/core/process/visualization/tests/test_data_viewer.py::test_data_viewer PASSED [ 84%] tomwer/core/process/visualization/tests/test_diff_viewer.py::test_diff_viewer PASSED [ 85%] tomwer/core/process/visualization/tests/test_image_stack_viewer.py::test_image_stack_viewer PASSED [ 86%] tomwer/core/process/visualization/tests/test_radio_stack.py::test_radio_stack PASSED [ 86%] tomwer/core/process/visualization/tests/test_sample_moved.py::test_sample_moved PASSED [ 87%] tomwer/core/process/visualization/tests/test_sinogram_viewer.py::test_sinogram_viewer PASSED [ 88%] tomwer/core/process/visualization/tests/test_slice_stack.py::test_slice_stack PASSED [ 89%] tomwer/core/process/visualization/tests/test_volume_viewer.py::test_volume_viewer PASSED [ 89%] tomwer/core/process/reconstruction/nabu/test/test_castvolume.py::test_cast_volume_32bitstiff_to_16bits_tiff PASSED [ 90%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[YZ-scan0] PASSED [ 91%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[YZ-scan1] PASSED [ 91%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[XZ-scan0] PASSED [ 92%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[XZ-scan1] PASSED [ 93%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[XY-scan0] PASSED [ 93%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_recons_volume_identifier[XY-scan1] PASSED [ 94%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_multi_cor_recons_volume_identifier[scan0] PASSED [ 95%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_get_multi_cor_recons_volume_identifier[scan1] PASSED [ 95%] tomwer/core/process/reconstruction/nabu/test/test_nabu_utils.py::test_nabu_std_err_has_error PASSED [ 96%] tomwer/core/process/reconstruction/nabu/test/test_nabunormalization.py::test_normalization[norm_setting0-expected_nabu_conf0] PASSED [ 97%] tomwer/core/process/reconstruction/nabu/test/test_nabunormalization.py::test_normalization[norm_setting1-expected_nabu_conf1] PASSED [ 97%] tomwer/core/process/reconstruction/nabu/test/test_nabunormalization.py::test_normalization[norm_setting2-expected_nabu_conf2] PASSED [ 98%] tomwer/core/process/reconstruction/nabu/test/test_nabunormalization.py::test_normalization[norm_setting3-expected_nabu_conf3] PASSED [ 99%] tomwer/core/process/reconstruction/nabu/test/test_nabunormalization.py::test_normalization[norm_setting4-expected_nabu_conf4] PASSED [100%] =================================== FAILURES =================================== ____________________________ TestSAAxisProcess.test ____________________________ name = b'/tmp/tmpnqvfdj7k/tmpnqvfdj7k_multi_cor_results/tomwer_saaxis.h5' mode = 'a', userblock_size = None fapl = <h5py._debian_h5py_serial.h5p.PropFAID object at 0x7f01f9446020> fcpl = None, swmr = False def make_fid(name, mode, userblock_size, fapl, fcpl=None, swmr=False): """ Get a new FileID by opening or creating a file. Also validates mode argument.""" if userblock_size is not None: if mode in ('r', 'r+'): raise ValueError("User block may only be specified " "when creating a file") try: userblock_size = int(userblock_size) except (TypeError, ValueError): raise ValueError("User block size must be an integer") if fcpl is None: fcpl = h5p.create(h5p.FILE_CREATE) fcpl.set_userblock(userblock_size) if mode == 'r': flags = h5f.ACC_RDONLY if swmr and swmr_support: flags |= h5f.ACC_SWMR_READ fid = h5f.open(name, flags, fapl=fapl) elif mode == 'r+': fid = h5f.open(name, h5f.ACC_RDWR, fapl=fapl) elif mode in ['w-', 'x']: fid = h5f.create(name, h5f.ACC_EXCL, fapl=fapl, fcpl=fcpl) elif mode == 'w': fid = h5f.create(name, h5f.ACC_TRUNC, fapl=fapl, fcpl=fcpl) elif mode == 'a': # Open in append mode (read/write). # If that fails, create a new file only if it won't clobber an # existing one (ACC_EXCL) try: > fid = h5f.open(name, h5f.ACC_RDWR, fapl=fapl) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/h5py/_debian_h5py_serial/_hl/files.py:250: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ h5py/_debian_h5py_serial/_objects.pyx:56: in h5py._debian_h5py_serial._objects.with_phil.wrapper ??? h5py/_debian_h5py_serial/_objects.pyx:57: in h5py._debian_h5py_serial._objects.with_phil.wrapper ??? _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > ??? E FileNotFoundError: [Errno 2] Unable to synchronously open file (unable to open file: name = '/tmp/tmpnqvfdj7k/tmpnqvfdj7k_multi_cor_results/tomwer_saaxis.h5', errno = 2, error message = 'No such file or directory', flags = 1, o_flags = 2) h5py/_debian_h5py_serial/h5f.pyx:102: FileNotFoundError During handling of the above exception, another exception occurred: self = <tomwer.core.process.reconstruction.tests.test_saaxis.TestSAAxisProcess testMethod=test> def test(self): process = SAAxisTask( inputs={ "data": self.scan, "sa_axis_params": self._default_saaxis_params.to_dict(), "serialize_output_data": False, } ) self._default_saaxis_params.estimated_cor = 11 self._default_saaxis_params.research_width = 2 process = SAAxisTask( inputs={ "data": self.scan, "sa_axis_params": self._default_saaxis_params.to_dict(), "serialize_output_data": False, }, ) > process.run() tomwer/core/process/reconstruction/tests/test_saaxis.py:83: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tomwer/core/process/reconstruction/saaxis/saaxis.py:532: in run self._process_end(scan=scan, cors_res=cors_res, score_rois=rois) tomwer/core/process/reconstruction/saaxis/saaxis.py:581: in _process_end self.save_results_to_disk(scan=scan) tomwer/core/process/reconstruction/saaxis/saaxis.py:632: in save_results_to_disk with HDF5File(saaxis_results_url.file_path(), mode="a") as h5f: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/h5py/_debian_h5py_serial/_hl/files.py:564: in __init__ fid = make_fid(name, mode, userblock_size, fapl, fcpl, swmr=swmr) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/h5py/_debian_h5py_serial/_hl/files.py:264: in make_fid fid = h5f.create(name, h5f.ACC_EXCL, fapl=fapl, fcpl=fcpl) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ h5py/_debian_h5py_serial/_objects.pyx:56: in h5py._debian_h5py_serial._objects.with_phil.wrapper ??? h5py/_debian_h5py_serial/_objects.pyx:57: in h5py._debian_h5py_serial._objects.with_phil.wrapper ??? _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > ??? E FileNotFoundError: [Errno 2] Unable to synchronously create file (unable to open file: name = '/tmp/tmpnqvfdj7k/tmpnqvfdj7k_multi_cor_results/tomwer_saaxis.h5', errno = 2, error message = 'No such file or directory', flags = 15, o_flags = c2) h5py/_debian_h5py_serial/h5f.pyx:122: FileNotFoundError ------------------------------ Captured log call ------------------------------- WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/scores/params.py", line 173, in load_from_dict self.score_method = ScoreMethod.from_value(dict_["score_method"]) WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/scores/params.py", line 105, in score_method self._score_method = ScoreMethod.from_value(method) WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/saaxis/params.py", line 94, in load_from_dict self.mode = ReconstructionMode.from_value(dict_["mode"]) WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/saaxis/params.py", line 59, in mode mode = ReconstructionMode.from_value(mode) WARNING nxtomo.paths.nxtomo:nxtomo.py:447 version of the NXtomo not found. Will take the latest one (1.4) WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/saaxis/saaxis.py", line 433, in run mode = ReconstructionMode.from_value(params.mode) WARNING silx.DEPRECATION:deprecation.py:136 Function from_value is deprecated since silx version 2.1.1. Use 'Enum(value)' instead. File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/reconstruction/nabu/nabucommon.py", line 208, in __init__ self._target = Target.from_value(target) PROCESS_SUCCEED tomwer.core.process.reconstruction.saaxis.saaxis:processlog.py:60 cor scores of slice {'slice': 4} for scan NXtomo scan(master_file: tmp/tmpnqvfdj7k/tmpnqvfdj7k.h5, entry: entry) computed. =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/tomoscan/framereducer/framereducerbase.py:4 /usr/lib/python3/dist-packages/tomoscan/framereducer/framereducerbase.py:4: DeprecationWarning: numpy.core.numerictypes is deprecated and has been renamed to numpy._core.numerictypes. The numpy._core namespace contains private NumPy internals and its use is discouraged, as NumPy internals can change without warning in any release. In practice, most real-world usage of numpy.core is to access functionality in the public NumPy API. If that is the case, use the public NumPy API. If not, you are using NumPy internals. If you would still like to access an internal attribute, use numpy._core.numerictypes.generic. from numpy.core.numerictypes import generic as numy_generic ../../../../../../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', " ../../../../../../usr/lib/python3/dist-packages/orangecanvas/utils/localization/__init__.py:5 /usr/lib/python3/dist-packages/orangecanvas/utils/localization/__init__.py:5: DeprecationWarning: import 'orangecanvas.localization', not 'orangecanvas.utils.localization' warnings.warn( ../../../../../../usr/lib/python3/dist-packages/orangecanvas/utils/localization/si.py:5 /usr/lib/python3/dist-packages/orangecanvas/utils/localization/si.py:5: DeprecationWarning: import 'orangecanvas.localization.si', not 'orangecanvas.utils.localization.si' warnings.warn( tomwer/core/tests/test_utils.py::test_flat_field_normalization /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/utils/normalization.py:54: RuntimeWarning: divide by zero encountered in divide corrrectedImage = (imgData - dark) / (flat - dark) tomwer/core/process/tests/test_data_watcher.py: 24 warnings /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/control/datawatcher/datawatcherobserver.py:533: DeprecationWarning: isSet() is deprecated, use is_set() instead if self.observations.scanReadyEvent.isSet(): tomwer/core/process/tests/test_data_watcher.py: 20 warnings /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/control/datawatcher/datawatcher.py:292: DeprecationWarning: isSet() is deprecated, use is_set() instead if self.observationThread.scanReadyEvent.isSet(): tomwer/core/scan/tests/test_future_scan.py::test_simple_future_tomo_obj /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/scan/tests/test_future_scan.py:23: DeprecationWarning: There is no current event loop future = asyncio.Future() tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 /usr/lib/python3/dist-packages/numpy/matrixlib/defmatrix.py:69: PendingDeprecationWarning: the matrix subclass is not the recommended way to represent matrices or deal with linear algebra (see https://docs.scipy.org/doc/numpy/user/numpy-for-matlab-users.html). Please adjust your code to use regular ndarray. return matrix(data, dtype=dtype, copy=False) tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 tomwer/core/utils/tests/test_image.py::test_scale_img2_to_img1 /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/utils/image.py:125: DeprecationWarning: Conversion of an array with ndim > 0 to a scalar is deprecated, and will error in future. Ensure you extract a single element from your array before performing this operation. (Deprecated NumPy 1.25.) float(vec1[0]) * (img_2 * img_2) + float(vec1[1]) * img_2 + float(vec1[2]) tomwer/core/process/control/tests/test_email.py::test_format_email_info /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/control/emailnotifier.py:119: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). "timestamp": datetime.utcnow().isoformat(timespec="seconds"), tomwer/core/process/drac/tests/test_icat_processed_dataset.py: 54 warnings tomwer/core/process/drac/tests/test_icat_raw_dataset.py: 16 warnings /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build/tomwer/core/process/drac/dracbase.py:165: DeprecationWarning: 'mode' parameter is deprecated and will be removed in Pillow 13 (2026-10-15) img = Image.fromarray(image.astype(numpy.uint8), mode="L") tomwer/core/process/reconstruction/tests/test_saaxis.py: 20 warnings /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=19852) 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 tomwer/core/process/reconstruction/tests/test_saaxis.py::TestSAAxisProcess::test =========== 1 failed, 122 passed, 23 skipped, 147 warnings in 12.34s =========== E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_tomwer/build; python3.13 -m pytest -v tomwer/core/*/test_* tomwer/core/*/*/test_* tomwer/core/*/*/*/test_* tomwer/core/*/*/*/*/test_* dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make: *** [debian/rules:8: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

