diff --git a/pkgs/development/python-modules/dask-glm/default.nix b/pkgs/development/python-modules/dask-glm/default.nix index 3801ae817917..9c4045be8fc4 100644 --- a/pkgs/development/python-modules/dask-glm/default.nix +++ b/pkgs/development/python-modules/dask-glm/default.nix @@ -1,50 +1,60 @@ { lib, - stdenv, buildPythonPackage, fetchFromGitHub, # build-system + setuptools, setuptools-scm, # dependencies cloudpickle, + dask, distributed, multipledispatch, + numba, + numpy, scikit-learn, scipy, sparse, - dask, # tests pytest-xdist, pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "dask-glm"; - version = "0.3.2"; + version = "0.4.0"; pyproject = true; + __structuredAttrs = true; src = fetchFromGitHub { owner = "dask"; repo = "dask-glm"; - tag = version; - hash = "sha256-q98QMmw1toashimS16of54cgZgIPqkua3xGD1FZ1nTc="; + tag = finalAttrs.version; + hash = "sha256-u3KASmBamc7qU/GxGT0QBqWJ1HDk81xI0MOoRng8BzA="; }; - # ValueError: The truth value of an empty array is ambiguous. Use `array.size > 0` to check that an array is not empty. + # The iprint parameter of `scipy.optimize.fmin_l_bfgs_b` was removed in 1.18.0 + # https://github.com/scipy/scipy/blob/b881cb179463e85a74f3368f6242986d713adbdc/doc/source/release/1.18.0-notes.rst?plain=1#L291-L292 postPatch = '' - substituteInPlace dask_glm/utils.py \ - --replace-fail "if arr:" "if (arr is not None) and (arr.size > 0):" + substituteInPlace dask_glm/algorithms.py \ + --replace-fail "iprint=(verbose > 0) - 1," "" ''; - build-system = [ setuptools-scm ]; + build-system = [ + setuptools + setuptools-scm + ]; dependencies = [ cloudpickle + dask distributed multipledispatch + numba + numpy scikit-learn scipy sparse @@ -58,23 +68,11 @@ buildPythonPackage rec { pythonImportsCheck = [ "dask_glm" ]; - disabledTests = [ - # ValueError: can be computed for one-element arrays only. - "test_dot_with_sparse" - - # ValueError: `shape` was not provided. - "test_sparse" - ]; - - # On darwin, tests saturate the entire system, even when constrained to run single-threaded - # Removing pytest-xdist AND setting --cores to one does not prevent the load from exploding - doCheck = !stdenv.hostPlatform.isDarwin; - meta = { description = "Generalized Linear Models with Dask"; homepage = "https://github.com/dask/dask-glm/"; - changelog = "https://github.com/dask/dask-glm/releases/tag/${version}"; + changelog = "https://github.com/dask/dask-glm/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) diff --git a/pkgs/development/python-modules/dask-ml/default.nix b/pkgs/development/python-modules/dask-ml/default.nix index 4153970a052e..842cbad62466 100644 --- a/pkgs/development/python-modules/dask-ml/default.nix +++ b/pkgs/development/python-modules/dask-ml/default.nix @@ -24,22 +24,24 @@ pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "dask-ml"; version = "2025.1.0"; pyproject = true; + __structuredAttrs = true; src = fetchFromGitHub { owner = "dask"; repo = "dask-ml"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-DHxx0LFuJmGWYuG/WGHj+a5XHAEekBmlHUUb90rl2IY="; }; postPatch = '' substituteInPlace pyproject.toml \ - --replace-fail 'addopts = "-rsx -v --durations=10 --color=yes"' \ - 'addopts = ["-rsx", "-v", "--durations=10", "--color=yes"]' + --replace-fail \ + 'addopts = "-rsx -v --durations=10 --color=yes"' \ + 'addopts = ["-rsx", "-v", "--durations=10", "--color=yes"]' ''; build-system = [ @@ -73,6 +75,18 @@ buildPythonPackage rec { pytestCheckHook ]; + pytestFlags = [ + # Skipping check check_array_api_input for KMeans because it raised SkipTest: + # SCIPY_ARRAY_API is not set: not checking array_api input + "-Wignore::sklearn.exceptions.SkipTestWarning" + + # pandas.errors.Pandas4Warning: For backward compatibility, 'str' dtypes are included by select_dtypes when 'object' dtype is specified. + # This behavior is deprecated and will be removed in a future version. + # Explicitly pass 'str' to `include` to select them, or to `exclude` to remove them and silence this warning. + # See https://pandas.pydata.org/docs/user_guide/migration-3-strings.html#string-migration-select-dtypes for details on how to write code that works with pandas 2 and 3. + "-Wignore::pandas.errors.Pandas4Warning" + ]; + disabledTestPaths = [ # RuntimeError: Attempting to use an asynchronous Client in a synchronous context of `dask.compute` # https://github.com/dask/dask-ml/issues/1016 @@ -131,4 +145,4 @@ buildPythonPackage rec { license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) diff --git a/pkgs/development/python-modules/dask/default.nix b/pkgs/development/python-modules/dask/default.nix index 3c83bd0e6eda..691504cc6a98 100644 --- a/pkgs/development/python-modules/dask/default.nix +++ b/pkgs/development/python-modules/dask/default.nix @@ -44,7 +44,7 @@ buildPythonPackage (finalAttrs: { pname = "dask"; - version = "2026.7.1"; + version = "2026.8.0"; pyproject = true; __structuredAttrs = true; @@ -52,7 +52,7 @@ buildPythonPackage (finalAttrs: { owner = "dask"; repo = "dask"; tag = finalAttrs.version; - hash = "sha256-Hh3QMSLMn7xCbwoiu4gjjF590YXZfiG5rp20kWX+Kms="; + hash = "sha256-DFPd46cBirwztmZJvRKS8u5qvYMEIWfy90QR2AeBu3c="; }; postPatch = lib.optionalString stdenv.hostPlatform.isLinux '' diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix index 9f2fb7ebe6c3..a01910fa3853 100644 --- a/pkgs/development/python-modules/distributed/default.nix +++ b/pkgs/development/python-modules/distributed/default.nix @@ -26,7 +26,7 @@ buildPythonPackage (finalAttrs: { pname = "distributed"; - version = "2026.7.1"; + version = "2026.8.0"; pyproject = true; __structuredAttrs = true; @@ -34,7 +34,7 @@ buildPythonPackage (finalAttrs: { owner = "dask"; repo = "distributed"; tag = finalAttrs.version; - hash = "sha256-9QZb7PpPhdJEc4Kgoc3PE6TU7LHmiw58jkgfaoSNSg4="; + hash = "sha256-Z7T/ik8GDnFESDl2OuvSGFo+SBcEY7gpVx31CoTTvao="; }; build-system = [