Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add cuda-cccl conflict with thrust/cub packages. #428

Merged
merged 1 commit into from
Apr 5, 2023

Conversation

bdice
Copy link
Contributor

@bdice bdice commented Apr 5, 2023

Checklist

  • Ran python show_diff.py and posted the output as part of the PR. (see below)
  • Modifications won't affect packages built in the future.

@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@bdice
Copy link
Contributor Author

bdice commented Apr 5, 2023

cc: @kkraus14

@bdice
Copy link
Contributor Author

bdice commented Apr 5, 2023

Output of show_diff.py:

Downloading: https://conda.anaconda.org/conda-forge/noarch/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/noarch/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-64/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-64/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-armv7l/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-armv7l/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-aarch64/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-aarch64/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-ppc64le/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/linux-ppc64le/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/osx-64/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/osx-64/repodata.json.bz2
linux-64::cub-1.10.0-2.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.10.0-3.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.11.0-ha770c72_0.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.11.0-ha770c72_1.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.15.0-h0800d71_0.tar.bz2
-    "thrust 1.15.0.*"
+    "thrust 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.16.0-h0800d71_1.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.16.0-ha770c72_0.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::cub-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::cub-1.9.10-1.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::cub-1.9.10-2.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::cub-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::cub-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::thrust-1.10.0-0.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.10.0-1.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.11.0-ha770c72_0.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.11.0-ha770c72_1.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.15.0-h0800d71_0.tar.bz2
-    "cub 1.15.0.*"
+    "cub 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.16.0-h0800d71_1.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.16.0-ha770c72_0.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
linux-64::thrust-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::thrust-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-64::thrust-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-64 <0.0.0a0"
+  ]
linux-aarch64::cub-1.11.0-h8af1aa0_1.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::cub-1.15.0-h1212f3d_0.tar.bz2
-    "thrust 1.15.0.*"
+    "thrust 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::cub-1.16.0-h1212f3d_1.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::cub-1.16.0-h8af1aa0_0.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::thrust-1.11.0-h8af1aa0_1.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::thrust-1.15.0-h1212f3d_0.tar.bz2
-    "cub 1.15.0.*"
+    "cub 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::thrust-1.16.0-h1212f3d_1.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-aarch64::thrust-1.16.0-h8af1aa0_0.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-aarch64 <0.0.0a0"
linux-ppc64le::cub-1.11.0-ha3edaa6_1.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::cub-1.15.0-hc9efd5c_0.tar.bz2
-    "thrust 1.15.0.*"
+    "thrust 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::cub-1.16.0-ha3edaa6_0.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::cub-1.16.0-hc9efd5c_1.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::thrust-1.11.0-ha3edaa6_1.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::thrust-1.15.0-hc9efd5c_0.tar.bz2
-    "cub 1.15.0.*"
+    "cub 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::thrust-1.16.0-ha3edaa6_0.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
linux-ppc64le::thrust-1.16.0-hc9efd5c_1.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_linux-ppc64le <0.0.0a0"
osx-64::cub-1.10.0-2.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::cub-1.10.0-3.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::cub-1.11.0-h694c41f_0.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::cub-1.11.0-h694c41f_1.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::cub-1.16.0-h694c41f_0.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::cub-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::cub-1.9.10-1.tar.bz2
-  "version": "1.9.10"
Downloading: https://conda.anaconda.org/conda-forge/osx-arm64/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/osx-arm64/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/win-32/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/win-32/repodata.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/win-64/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/win-64/repodata.json.bz2
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::cub-1.9.10-2.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::cub-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::cub-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::thrust-1.10.0-0.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.10.0-1.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.11.0-h694c41f_0.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.11.0-h694c41f_1.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.15.0-h50699ec_0.tar.bz2
-    "cub 1.15.0.*"
+    "cub 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.16.0-h694c41f_0.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.16.0-hda26842_1.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
osx-64::thrust-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::thrust-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
osx-64::thrust-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_osx-64 <0.0.0a0"
+  ]
win-64::cub-1.10.0-2.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.10.0-3.tar.bz2
-    "thrust 1.10.0.*"
+    "thrust 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.11.0-h57928b3_0.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.11.0-h57928b3_1.tar.bz2
-    "thrust 1.11.0.*"
+    "thrust 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.15.0-h929061a_0.tar.bz2
-    "thrust 1.15.0.*"
+    "thrust 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.16.0-h57928b3_0.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.16.0-h929061a_1.tar.bz2
-    "thrust 1.16.0.*"
+    "thrust 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::cub-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::cub-1.9.10-1.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::cub-1.9.10-2.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::cub-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::cub-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::thrust-1.10.0-0.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.10.0-1.tar.bz2
-    "cub 1.10.0.*"
+    "cub 1.10.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.11.0-h57928b3_0.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.11.0-h57928b3_1.tar.bz2
-    "cub 1.11.0.*"
+    "cub 1.11.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.15.0-h929061a_0.tar.bz2
-    "cub 1.15.0.*"
+    "cub 1.15.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.16.0-h57928b3_0.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.16.0-h929061a_1.tar.bz2
-    "cub 1.16.0.*"
+    "cub 1.16.0.*",
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
win-64::thrust-1.9.10-0.tar.bz2
-  "version": "1.9.10"
+  "version": "1.9.10",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::thrust-1.9.8-0.tar.bz2
-  "version": "1.9.8"
+  "version": "1.9.8",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]
win-64::thrust-1.9.9-0.tar.bz2
-  "version": "1.9.9"
+  "version": "1.9.9",
+  "constrains": [
+    "cuda-cccl <0.0.0a0",
+    "cuda-cccl-impl <0.0.0a0",
+    "cuda-cccl_win-64 <0.0.0a0"
+  ]

@bdice bdice marked this pull request as ready for review April 5, 2023 15:48
@bdice bdice requested a review from a team as a code owner April 5, 2023 15:48
@kkraus14
Copy link
Contributor

kkraus14 commented Apr 5, 2023

I'm not clear why some package report the diff as constrains while others don't.

@conda-forge/core is this normal?

EDIT: This is because the cub / thrust packages changed how they handled their dependencies vs constrains with regards to each other at the time. This is fine.

@kkraus14 kkraus14 merged commit ade31d6 into conda-forge:main Apr 5, 2023
@bdice
Copy link
Contributor Author

bdice commented Apr 5, 2023

Thanks @kkraus14!

@jakirkham
Copy link
Member

Thanks Keith and Bradley! 🙏

Should we also add this constraint to the thrust and cub feedstocks?

Asking as I think we would want any new packages to have these constraints as well

@kkraus14
Copy link
Contributor

kkraus14 commented Apr 5, 2023

Should we also add this constraint to the thrust and cub feedstocks?

My intention was to get the cuda-cccl recipe merged and then immediately archive the existing thrust and cub recipes.

@leofang
Copy link
Member

leofang commented Apr 5, 2023

@kkraus14 Right now librmm on conda-forge still uses thrust, it might be an issue:
https://github.com/conda-forge/librmm-feedstock/blob/4bae48eb13c3fad6a0941047a89d2edfd2830736/recipe/meta.yaml#L31
(though, IIRC librmm also came with a bundled Thrust, so maybe for this case we just need to update the recipe and rebuild. But the point here is there might be other packages depending on thrust/cub and we should not archive them right away.)

@jakirkham
Copy link
Member

I'm not clear why some package report the diff as constrains while others don't.

...

EDIT: This is because the cub / thrust packages changed how they handled their dependencies vs constrains with regards to each other at the time. This is fine.

Was also confused about this and had to dig further to understand what was going on. AIUI cub and thrust use to have run dependencies on each other. These were later softened to run_constrained in PRs ( conda-forge/cub-feedstock#8 ) ( conda-forge/thrust-feedstock#4 ).

Since some packages have run, the diff above shows those packages with constrains as a newly added field with this patch. As the rest have run_constrained, they show a diff with constrains adding new items (so constrains itself is not new).

Anyways hopefully this makes it clearer for anyone else stumbling upon this and looking for more context

@kkraus14
Copy link
Contributor

kkraus14 commented Apr 5, 2023

@kkraus14 Right now librmm on conda-forge still uses thrust, it might be an issue: https://github.com/conda-forge/librmm-feedstock/blob/4bae48eb13c3fad6a0941047a89d2edfd2830736/recipe/meta.yaml#L31 (though, IIRC librmm also came with a bundled Thrust, so maybe for this case we just need to update the recipe and rebuild. But the point here is there might be other packages depending on thrust/cub and we should not archive them right away.)

Archiving the repo doesn't remove or mark the existing packages as broken as far as I'm aware. It just makes it clear that no future changes will happen to the recipe and no further packages will be produced.

See: https://conda-forge.org/docs/maintainer/updating_pkgs.html#archiving-feedstocks

@bdice
Copy link
Contributor Author

bdice commented Apr 5, 2023

For what it's worth, $ mamba repoquery whoneeds -c conda-forge thrust indicates that thrust is only used by librmm. cub has no consumers besides thrust. @leofang Luckily we don't need to worry about other downstream consumers.

I think it's safe to archive the repos for thrust/cub. We can adapt the conda-forge librmm to use cuda-cccl-impl at some point, and perhaps add CUDA 12 support at the same time.

@jakirkham
Copy link
Member

Let's go ahead and fix those feedstocks since the usual process is fix the feedstock and then add a repodata patch with link to the PR fixing the feedstock

As to archiving them, could someone please follow this process to archive feedstocks?

@leofang
Copy link
Member

leofang commented Apr 5, 2023

For what it's worth, $ mamba repoquery whoneeds -c conda-forge thrust indicates that thrust is only used by librmm. cub has no consumers besides thrust. @leofang Luckily we don't need to worry about other downstream consumers.

I think it's safe to archive the repos for thrust/cub. We can adapt the conda-forge librmm to use cuda-cccl-impl at some point, and perhaps add CUDA 12 support at the same time.

@bdice It's confusing. Could you try this search instead?
https://github.com/search?q=org%3Aconda-forge+thrust+lang%3Ayaml&type=code
I found at least one more feedstock:
https://github.com/conda-forge/polyhedral-gravity-model-feedstock/blob/0a98ab21a5e271832fc736df30d492433cd3577d/recipe/meta.yaml#L33
I

@leofang
Copy link
Member

leofang commented Apr 5, 2023

And please do the same check for cub:
https://github.com/search?q=org%3Aconda-forge+cub+lang%3Ayaml&type=code
(it doesn't seem GH supports regex search? but I found at least one other feedstock using it: https://github.com/conda-forge/deepmd-kit-feedstock/blob/f05ad9822864fbf8eee87ce1e6099c2712e6811b/recipe/meta.yaml#L45)

@leofang
Copy link
Member

leofang commented Apr 5, 2023

Let's go ahead and fix those feedstocks since the usual process is fix the feedstock and then add a repodata patch with link to the PR fixing the feedstock

Well sometimes I was asked to do it differently, but anyway @bdice has kindly sent fixes:

@bdice
Copy link
Contributor Author

bdice commented Apr 5, 2023

@leofang Good find. Apparently mamba repoquery wasn't complete.

I searched with these queries (thrust, cub) and found the following packages depending on thrust or cub. I can confirm @leofang's findings above.

  • deepmd-kit -- this only depends on cub for CUDA 10.2, which is being explicitly skip'd, so it may not be used
  • polyhedral-gravity-model -- this can probably be left alone or updated to cuda-cccl-impl
  • librmm, discussed above

Probably no significant action/migration is needed here. Archival and dependence on existing versions should be fine. I can leave issues on those feedstocks to notify their maintainers of the change, once it is ready.

@leofang
Copy link
Member

leofang commented Apr 5, 2023

Yup. Or we can create a migrator for doing the work for us, once cccl is up. This would ensure the entire CF infra does not use thrust/cub anymore (now or future), not just touching the feedstocks we find.

@jakirkham
Copy link
Member

Yeah think since thrust and cub are header only, searching for package dependencies winds up being a subset (as packages may only use them during the build)

new_constrains = record.get('constrains', [])
new_constrains.append("cuda-cccl <0.0.0a0")
new_constrains.append("cuda-cccl-impl <0.0.0a0")
new_constrains.append(f"cuda-cccl_{subdir} <0.0.0a0")
Copy link
Member

Choose a reason for hiding this comment

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

Why do you need this? This package does not conflict

Copy link
Contributor Author

@bdice bdice Apr 6, 2023

Choose a reason for hiding this comment

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

You're correct that the thrust/cub packages don't clobber files in cuda-cccl_{subdir} (which installs to targets/.../include). They only clobber cuda-cccl-impl and cuda-cccl. However, I left this in because @kkraus14 suggested it, and it might not be a good idea to allow thrust/cub to be installed together with CUDA 12 packages. The thrust/cub versions shipped on conda-forge are not up-to-date, and don't have official support for CUDA 12. Meanwhile, cuda-cccl_{subdir} is specific to CUDA 12. I would be comfortable saying this is an unsupported case that would fall in the same bucket as cudatoolkit (CUDA 11) not being installable at the same time as cuda-nvcc_{subdir} (CUDA 12) despite not clobbering files (to my knowledge). What do you think?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants