Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-129_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ dependencies:
- nbsphinx
- ninja
- nltk
- numba-cuda>=0.22.2
- numba-cuda>=0.22.2,<0.29.0
- numba>=0.60.0,<0.65.0
- numpy>=1.23,<3.0
- numpydoc
Expand Down Expand Up @@ -72,7 +72,7 @@ dependencies:
- rmm==26.6.*,>=0.0.0a0
- scikit-build-core>=0.11.0
- scikit-learn>=1.5
- scipy>=1.13.0
- scipy>=1.14.0
- seaborn
- skl2onnx
- sphinx
Expand Down
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-129_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ dependencies:
- nbsphinx
- ninja
- nltk
- numba-cuda>=0.22.2
- numba-cuda>=0.22.2,<0.29.0
- numba>=0.60.0,<0.65.0
- numpy>=1.23,<3.0
- numpydoc
Expand Down Expand Up @@ -72,7 +72,7 @@ dependencies:
- rmm==26.6.*,>=0.0.0a0
- scikit-build-core>=0.11.0
- scikit-learn>=1.5
- scipy>=1.13.0
- scipy>=1.14.0
- seaborn
- skl2onnx
- sphinx
Expand Down
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-131_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ dependencies:
- nbsphinx
- ninja
- nltk
- numba-cuda>=0.22.2
- numba-cuda>=0.22.2,<0.29.0
- numba>=0.60.0,<0.65.0
- numpy>=1.23,<3.0
- numpydoc
Expand Down Expand Up @@ -72,7 +72,7 @@ dependencies:
- rmm==26.6.*,>=0.0.0a0
- scikit-build-core>=0.11.0
- scikit-learn>=1.5
- scipy>=1.13.0
- scipy>=1.14.0
- seaborn
- skl2onnx
- sphinx
Expand Down
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-131_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ dependencies:
- nbsphinx
- ninja
- nltk
- numba-cuda>=0.22.2
- numba-cuda>=0.22.2,<0.29.0
- numba>=0.60.0,<0.65.0
- numpy>=1.23,<3.0
- numpydoc
Expand Down Expand Up @@ -72,7 +72,7 @@ dependencies:
- rmm==26.6.*,>=0.0.0a0
- scikit-build-core>=0.11.0
- scikit-learn>=1.5
- scipy>=1.13.0
- scipy>=1.14.0
- seaborn
- skl2onnx
- sphinx
Expand Down
4 changes: 2 additions & 2 deletions conda/recipes/cuml/recipe.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,10 @@ requirements:
- joblib >=0.11
- libcuml =${{ version }}
- numba >=0.60.0,<0.65.0
- numba-cuda >=0.22.2
- numba-cuda >=0.22.2,<0.29.0
- numpy >=1.23,<3.0
- scikit-learn >=1.4
- scipy >=1.11.0
- scipy >=1.14.0
Comment on lines +102 to +105

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Compare sklearn minimum constraints across the files provided in this PR context
rg -n 'scikit-learn' \
  conda/recipes/cuml/recipe.yaml \
  dependencies.yaml \
  python/cuml/pyproject.toml \
  docs/source/supported_versions.rst

Repository: rapidsai/cuml

Length of output: 533


Update scikit-learn minimum to match documented constraint.

Line 104 specifies scikit-learn >=1.4 while the documentation and all other dependency definitions (pyproject.toml, dependencies.yaml, supported_versions.rst) require scikit-learn >=1.5. This inconsistency allows conda environments below the tested minimum.

Proposed fix
-    - scikit-learn >=1.4
+    - scikit-learn >=1.5
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- numba-cuda >=0.22.2,<0.29.0
- numpy >=1.23,<3.0
- scikit-learn >=1.4
- scipy >=1.11.0
- scipy >=1.14.0
- numba-cuda >=0.22.2,<0.29.0
- numpy >=1.23,<3.0
- scikit-learn >=1.5
- scipy >=1.14.0
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@conda/recipes/cuml/recipe.yaml` around lines 102 - 105, Update the
scikit-learn minimum version in the conda recipe by changing the dependency
string "scikit-learn >=1.4" to match the documented constraint "scikit-learn
>=1.5"; locate the dependency list in the recipe.yaml where the dependencies
include "numba-cuda", "numpy", "scikit-learn", and "scipy" and replace the
scikit-learn version specifier so it aligns with pyproject.toml,
dependencies.yaml, and supported_versions.rst.

- packaging
- pylibraft =${{ minor_version }}
- python
Expand Down
8 changes: 4 additions & 4 deletions dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ dependencies:
- joblib>=0.11
- numba>=0.60.0,<0.65.0
- &numpy numpy>=1.23,<3.0
- scipy>=1.13.0
- scipy>=1.14.0
- packaging
- rich
- &scikit_learn scikit-learn>=1.5
Expand Down Expand Up @@ -824,20 +824,20 @@ dependencies:
common:
- output_types: [conda]
packages:
- &numba_cuda numba-cuda>=0.22.2
- &numba_cuda numba-cuda>=0.22.2,<0.29.0
specific:
- output_types: [requirements, pyproject]
matrices:
- matrix:
cuda: "12.*"
cuda_suffixed: "true"
packages:
- numba-cuda[cu12]>=0.22.2
- numba-cuda[cu12]>=0.22.2,<0.29.0
- matrix:
cuda: "13.*"
cuda_suffixed: "true"
packages:
- numba-cuda[cu13]>=0.22.2
- numba-cuda[cu13]>=0.22.2,<0.29.0
# fallback to numba-cuda with no extra CUDA packages if 'cuda_suffixed' isn't true
- matrix:
packages:
Expand Down
6 changes: 3 additions & 3 deletions docs/source/supported_versions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ Required Runtime Dependencies
The following dependencies are required for the cuML library:

* **NumPy**: >=1.23,<3.0a0
* **scikit-learn**: >=1.4
* **scipy**: >=1.8.0
* **scikit-learn**: >=1.5
* **scipy**: >=1.14.0
* **numba**: >=0.60.0,<0.62.0a0
* **cupy**: cupy-cuda12x>=13.6.0 (CUDA 12), cupy-cuda13x>=13.6.0 (CUDA 13)
* **treelite**: ==4.4.1
* **treelite**: >=4.6.1,<5.0.0

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Verify treelite constraints in docs vs packaging metadata/source-of-truth
rg -n 'treelite' docs/source/supported_versions.rst \
  dependencies.yaml \
  python/cuml/pyproject.toml \
  conda/recipes/cuml/recipe.yaml

Repository: rapidsai/cuml

Length of output: 504


Align treelite minimum in docs with the actual package floor.

Line 18 documents treelite>=4.6.1,<5.0.0, but the actual package constraints are >=4.7.0,<5.0.0 (per pyproject.toml and dependencies.yaml). This mismatch can direct users to unsupported versions.

Proposed fix
-* **treelite**: >=4.6.1,<5.0.0
+* **treelite**: >=4.7.0,<5.0.0
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
* **treelite**: >=4.6.1,<5.0.0
* **treelite**: >=4.7.0,<5.0.0
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/source/supported_versions.rst` at line 18, Update the documented
treelite minimum version string that currently reads "treelite: >=4.6.1,<5.0.0"
to match the actual package constraints "treelite: >=4.7.0,<5.0.0"; verify
against the authoritative constraints in pyproject.toml and dependencies.yaml
and ensure the entry in supported_versions.rst (the treelite line) is edited
accordingly so docs and package constraints are consistent.


Dask Runtime Dependencies
-------------------------
Expand Down
5 changes: 2 additions & 3 deletions python/cuml/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ markers = [
"stress: Longest running tests focused on stressing hardware compute resources",
"mg: Multi-GPU tests",
"memleak: Test that checks for memory leaks",
"no_bad_cuml_array_check: Test that should not check for bad CumlArray uses",
"ucx: Run _only_ Dask UCXX tests",
]

Expand Down Expand Up @@ -86,15 +85,15 @@ dependencies = [
"cupy-cuda13x>=13.6.0",
"joblib>=0.11",
"libcuml==26.6.*,>=0.0.0a0",
"numba-cuda>=0.22.2",
"numba-cuda>=0.22.2,<0.29.0",
"numba>=0.60.0,<0.65.0",
"numpy>=1.23,<3.0",
"packaging",
"pylibraft==26.6.*,>=0.0.0a0",
"rich",
"rmm==26.6.*,>=0.0.0a0",
"scikit-learn>=1.5",
"scipy>=1.13.0",
"scipy>=1.14.0",
"treelite>=4.7.0,<5.0.0",
] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`.
classifiers = [
Expand Down
2 changes: 0 additions & 2 deletions python/cuml/tests/test_incremental_pca.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
(500, 250, 14, True, 0.07, "csr", 1, True),
],
)
@pytest.mark.no_bad_cuml_array_check
def test_fit(
nrows,
ncols,
Expand Down Expand Up @@ -92,7 +91,6 @@ def test_fit(
(5000, 4, 2, 0.1, 100, False),
],
)
@pytest.mark.no_bad_cuml_array_check
def test_partial_fit(
nrows, ncols, n_components, density, batch_size_divider, whiten
):
Expand Down
Loading