Subject: [bug#76578] [PATCH 0/3] update python-dask

From: Ludovic Courtès <[email-masked]>
Date: Mon, 10 Mar 2025 13:55:34 +0100

Hi Benoit,

Benoit Martin <[email-masked]> skribis:

> This patch series updates python-dask and related packages.
>
> Benoit Martin (3):
>   gnu: python-dask-expr: Update to 1.1.21.
>   gnu: python-distributed: Update to 2024.12.1.
>   gnu: python-dask: Update to 2024.12.1.

This patch series breaks python-arboreto:

--8<---------------cut here---------------start------------->8---
starting phase `sanity-check'
validating 'arboreto' /gnu/store/k1rsw0q58s6d82bz7swp9qn5aba0j03n-python-arboreto-0.1.6/lib/python3.10/site-packages
...checking requirements: ERROR: arboreto==0.1.6 ContextualVersionConflict(bokeh 2.4.3 (/gnu/store/hm1anf9fnl635p07rgjr7vj0qg18cr06-python-bokeh-2.4.3/lib/python3.10/site-packages), Requirement.parse('bokeh>=3.1.0; extra == "diagnostics"'), {'dask'})
error: in phase 'sanity-check': uncaught exception:
%exception #<&invoke-error program: "python" arguments: ("/gnu/store/iqsjkp55pcx5bfcp2jm9yj5rlx9a0whd-sanity-check.py" "/gnu/store/k1rsw0q58s6d82bz7swp9qn5aba0j03n-python-arboreto-0.1.6/lib/python3.10/site-packages") exit-status: 1 term-signal: #f stop-signal: #f> 
phase `sanity-check' failed after 0.7 seconds
command "python" "/gnu/store/iqsjkp55pcx5bfcp2jm9yj5rlx9a0whd-sanity-check.py" "/gnu/store/k1rsw0q58s6d82bz7swp9qn5aba0j03n-python-arboreto-0.1
--8<---------------cut here---------------end--------------->8---

… and triggers one test failure in python-scitools-iris:

--8<---------------cut here---------------start------------->8---
SKIPPED [1] ../../../gnu/store/v685kxa0pv5xzss1sjina70vpkk418ad-python-scitools-iris-3.11.1/lib/python3.10/site-packages/iris/tests/test_abf.py:33: Test(s) require external data.
SKIPPED [1] ../../../gnu/store/v685kxa0pv5xzss1sjina70vpkk418ad-python-scitools-iris-3.11.1/lib/python3.10/site-packages/iris/tests/test_abf.py:21: Test(s) require external data.
FAILED tests/test_pickling.py::TestPickle::test_cube_with_deferred_unit_conversion - TypeError: cannot pickle 'Task' object: a class that defines __slots__ without defining __getstate__ cannot be pickled with protocol 0
========= 1 failed, 8680 passed, 966 skipped, 1101 warnings in 39.78s ==========
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "/gnu/store/i65m7m87830mbw56p9gckfmk27vjrs56-python-pytest-8.3.3/bin/pytest" arguments: ("-vv" "--numprocesses" "34" "--pyargs" "iris" "-k" "not test_both_transposed and not test_2d_coords_contour and not test_2d_plain_latlon and not test_2d_plain_latlon_on_polar_map and not test_2d_rotated_latlon and not test_2d_rotated_latlon and not test_ancillary_variables_pass_0 and not test_auxiliary_coordinates_pass_0 and not test_bounds and not test_bounds_pass_0 and not test_broadcast_cubes and not test_broadcast_cubes_weighted and not test_broadcast_transpose_cubes_weighted and not test_cell_measures_pass_0 and not test_common_mask_broadcast and not test_common_mask_simple and not test_compatible_cubes and not test_compatible_cubes_weighted and not test_coord_transposed and not test_coordinates_pass_0 and not test_cube_transposed and not test_data_pass_0 and not test_destructor and not test_formula_terms_pass_0 and not test_global_attributes_pass_0 and not test_grid_mapping_pass_0 and not test_grouped_dim and not test_incompatible_cubes and not test_izip_different_shaped_coords and not test_izip_different_valued_coords and not test_izip_extra_coords_both_slice_dims and not test_izip_extra_coords_slice_dim and not test_izip_extra_coords_step_dim and not test_izip_extra_dim and not test_izip_input_collections and not test_izip_missing_slice_coords and not test_izip_nd_non_ortho and not test_izip_nd_ortho and not test_izip_no_args and not test_izip_no_common_coords_on_step_dim and not test_izip_onecube_height_lat_long and not test_izip_onecube_lat and not test_izip_onecube_lat_lon and not test_izip_onecube_no_coords and not test_izip_ordered and not test_izip_returns_iterable and not test_izip_same_cube_lat and not test_izip_same_cube_lat_lon and not test_izip_same_cube_no_coords and not test_izip_same_dims_single_coord and not test_izip_same_dims_two_coords and not test_izip_subcube_of_same and not test_izip_unequal_slice_coords and not test_izip_use_in_analysis and not test_label_dim_end and not test_label_dim_start and not test_lenient_handling and not test_load_pp_timevarying_orography and not test_mdtol and not test_netcdf_v3 and not test_no_delayed_writes and not test_no_transpose and not test_non_existent_coord and not test_perfect_corr and not test_perfect_corr_all_dims and not test_python_versions and not test_realfile_loadsave_equivalence and not test_realise_data and not test_realise_data_multisource and not test_scheduler_types and not test_single_coord and not test_stream and not test_stream_multisource and not test_stream_multisource__manychunks and not test_time_of_writing and not test_ungrouped_dim and not test_variable_attribute_touch_pass_0 and not test_variable_cf_group_pass_0 and not test_weight_error") exit-status: 1 term-signal: #f stop-signal: #f> 
phase `check' failed after 40.9 seconds
--8<---------------cut here---------------end--------------->8---

Do you think you could take a look?

For the record, I checked with:

  ./pre-inst-env guix build -P1 python-dask -P1 python-distributed \
      -P1 python-dask-expr --no-grafts

Thanks for your work!

Ludo’.