Skip to content

Commit 339d7c7

Browse files
mdboomclauderwgk
authored
TST: Pin test dependencies to exact versions (#2230)
* TST: Pin test dependencies to exact versions; add dependabot pip monitoring Pin all unpinned test dependency specifiers in [dependency-groups] to exact versions (==) across cuda_bindings, cuda_core, and cuda_pathfinder. Also add pip ecosystem entries to dependabot.yml so PRs are opened when newer versions become available on PyPI. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Move matplotlib down * Move numpy back for Python 3.10 compat * Loosen Numpy because of broad range of Python support required * Loosen numpy and matplotlib dependencies * Allow newer version of numpy --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Ralf W. Grosse-Kunstleve <rgrossekunst@nvidia.com>
1 parent 6177de4 commit 339d7c7

4 files changed

Lines changed: 66 additions & 17 deletions

File tree

.github/dependabot.yml

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,51 @@
1-
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
1+
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
22
#
33
# SPDX-License-Identifier: Apache-2.0
44

55
version: 2
66
updates:
7+
# Python test-dependency updates for cuda_bindings
8+
- package-ecosystem: pip
9+
directory: /cuda_bindings
10+
schedule:
11+
interval: "monthly"
12+
time: "09:00"
13+
timezone: "America/Los_Angeles"
14+
open-pull-requests-limit: 5
15+
groups:
16+
test-deps:
17+
applies-to: version-updates
18+
patterns: ["*"]
19+
update-types: ["major", "minor", "patch"]
20+
21+
# Python test-dependency updates for cuda_core
22+
- package-ecosystem: pip
23+
directory: /cuda_core
24+
schedule:
25+
interval: "monthly"
26+
time: "09:00"
27+
timezone: "America/Los_Angeles"
28+
open-pull-requests-limit: 5
29+
groups:
30+
test-deps:
31+
applies-to: version-updates
32+
patterns: ["*"]
33+
update-types: ["major", "minor", "patch"]
34+
35+
# Python test-dependency updates for cuda_pathfinder
36+
- package-ecosystem: pip
37+
directory: /cuda_pathfinder
38+
schedule:
39+
interval: "monthly"
40+
time: "09:00"
41+
timezone: "America/Los_Angeles"
42+
open-pull-requests-limit: 5
43+
groups:
44+
test-deps:
45+
applies-to: version-updates
46+
patterns: ["*"]
47+
update-types: ["major", "minor", "patch"]
48+
749
# GitHub Actions updates targeting the default branch (main)
850
- package-ecosystem: github-actions
951
directory: /

cuda_bindings/pyproject.toml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@ all = [
4646
[dependency-groups]
4747
test = [
4848
"cython>=3.2,<3.3",
49-
"setuptools>=77.0.0",
49+
"setuptools>=80.0.0",
5050
# TODO: remove the Python 3.15 guard once 3.15 is officially supported
51-
"matplotlib>=3.5.0; python_version < '3.15'",
52-
"numpy>=1.21.1",
53-
"pytest>=6.2.4",
54-
"pytest-benchmark>=3.4.1",
55-
"pytest-repeat",
56-
"pytest-randomly",
57-
"pyglet>=2.1.9",
51+
"matplotlib>=3.5.0,<=3.10.9; python_version < '3.15'",
52+
"numpy>=1.21.1,<=2.5.0",
53+
"pytest==9.1.0",
54+
"pytest-benchmark==5.2.3",
55+
"pytest-repeat==0.9.4",
56+
"pytest-randomly==4.1.0",
57+
"pyglet==2.1.14",
5858
]
5959

6060
[project.urls]

cuda_core/pyproject.toml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,18 @@ cu13 = ["cuda-bindings[all]==13.*", "cuda-toolkit==13.*"]
6060

6161
[dependency-groups]
6262
test = [
63-
"cython>=3.2,<3.3", "setuptools", "pytest>=6.2.4", "pytest-benchmark",
64-
"pytest-randomly", "pytest-repeat", "pytest-rerunfailures", "pytest-timeout",
65-
"cloudpickle", "psutil",
63+
"cython>=3.2,<3.3",
64+
"setuptools>=80",
65+
"pytest==9.1.0",
66+
"pytest-benchmark==5.2.3",
67+
"pytest-randomly==4.1.0",
68+
"pytest-repeat==0.9.4",
69+
"pytest-rerunfailures==16.3",
70+
"pytest-timeout==2.4.0",
71+
"cloudpickle==3.1.2",
72+
"psutil==7.2.2",
6673
# TODO: remove the Python 3.15 guard once 3.15 is officially supported
67-
"cffi; python_version < '3.15'",
74+
"cffi==2.0.0; python_version < '3.15'",
6875
]
6976
ml-dtypes = ["ml-dtypes>=0.5.4,<0.6.0"]
7077
test-cu12 = [ {include-group = "ml-dtypes" }, {include-group = "test" }, "cupy-cuda12x; python_version < '3.14'", "cuda-toolkit[cudart]==12.*"] # runtime headers needed by CuPy

cuda_pathfinder/pyproject.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ dependencies = []
1212

1313
[dependency-groups]
1414
test = [
15-
"pytest>=6.2.4",
16-
"pytest-mock",
17-
"pytest-repeat",
18-
"pytest-randomly",
15+
"pytest==9.1.0",
16+
"pytest-mock==3.15.1",
17+
"pytest-repeat==0.9.4",
18+
"pytest-randomly==4.1.0",
1919
]
2020
# Internal organization of test dependencies.
2121
cu12 = [

0 commit comments

Comments
 (0)