Skip to content

Conversation

@bdice
Copy link
Contributor

@bdice bdice commented Dec 5, 2025

Description

This PR removes pre-release upper bound pinnings from non-RAPIDS dependencies.

The presence of pre-release indicators like <...a0 tells pip "pre-releases are OK, even if --pre was not passed to pip install." RAPIDS projects currently use such constraints in situations where it's not actually desirable to get pre-releases.

xref: rapidsai/build-planning#144

Summary by CodeRabbit

  • Chores
    • Updated dependency bounds across environments and project configs to remove prerelease/dev upper-bound suffixes, aligning with stable release upper limits. Affected packages: rapids-build-backend, numpy, and cuda-python. Changes tighten allowed version ranges consistently across build, host, and run settings.

✏️ Tip: You can customize this high-level summary in your review settings.

@bdice bdice requested a review from a team as a code owner December 5, 2025 18:11
@bdice bdice requested a review from gforsyth December 5, 2025 18:11
@bdice bdice added non-breaking Introduces a non-breaking change improvement Improves an existing functionality labels Dec 5, 2025
@coderabbitai
Copy link

coderabbitai bot commented Dec 5, 2025

📝 Walkthrough

Walkthrough

Removed prerelease suffixes (.dev0, a0) from upper-bound version constraints for rapids-build-backend, cuda-python, and numpy across conda environment files, conda recipes, dependency manifests, and Python pyproject/build-system files.

Changes

Cohort / File(s) Summary
Conda environment files
conda/environments/all_cuda-129_arch-aarch64.yaml, conda/environments/all_cuda-129_arch-x86_64.yaml, conda/environments/all_cuda-130_arch-aarch64.yaml, conda/environments/all_cuda-130_arch-x86_64.yaml
Removed prerelease upper-bound qualifiers: cuda-python (<13.0a0<13.0, <14.0a0<14.0) and numpy (<3.0a0<3.0); updated rapids-build-backend bounds where present.
Conda recipe files
conda/recipes/cuopt-server/recipe.yaml, conda/recipes/cuopt/recipe.yaml, conda/recipes/mps-parser/recipe.yaml
Tightened host/build/run requirements by removing prerelease qualifiers: rapids-build-backend (<0.5.0.dev0<0.5.0) and numpy (<3.0a0<3.0); adjusted conditional cuda-python upper bounds accordingly.
Python pyproject / build configs
python/cuopt/cuopt/linear_programming/pyproject.toml, python/cuopt/pyproject.toml, python/cuopt_server/pyproject.toml, python/libcuopt/pyproject.toml
Aligned build-system and project dependency bounds to stable releases by removing .dev0 / a0 suffixes for rapids-build-backend, cuda-python, and numpy.
Dependency manifest
dependencies.yaml
Unified dependency pins by removing prerelease qualifiers for rapids_build_backend, cuda-python variants, and numpy (<3.0a0<3.0).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Remove alpha specs from non-RAPIDS dependencies' accurately and specifically describes the main change across all files in the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 82d376e and 3a40815.

📒 Files selected for processing (12)
  • conda/environments/all_cuda-129_arch-aarch64.yaml
  • conda/environments/all_cuda-129_arch-x86_64.yaml
  • conda/environments/all_cuda-130_arch-aarch64.yaml
  • conda/environments/all_cuda-130_arch-x86_64.yaml
  • conda/recipes/cuopt-server/recipe.yaml
  • conda/recipes/cuopt/recipe.yaml
  • conda/recipes/mps-parser/recipe.yaml
  • dependencies.yaml
  • python/cuopt/cuopt/linear_programming/pyproject.toml
  • python/cuopt/pyproject.toml
  • python/cuopt_server/pyproject.toml
  • python/libcuopt/pyproject.toml
🚧 Files skipped from review as they are similar to previous changes (7)
  • python/libcuopt/pyproject.toml
  • python/cuopt/pyproject.toml
  • conda/environments/all_cuda-129_arch-x86_64.yaml
  • conda/recipes/mps-parser/recipe.yaml
  • conda/environments/all_cuda-130_arch-x86_64.yaml
  • dependencies.yaml
  • python/cuopt_server/pyproject.toml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: wheel-build-cuopt-sh-client / 13.0.2, 3.10, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.12, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.13, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.10, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.10, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.13, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.12, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.11, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.11, amd64, rockylinux8
🔇 Additional comments (5)
python/cuopt/cuopt/linear_programming/pyproject.toml (1)

7-7: LGTM! Prerelease suffixes correctly removed from dependency upper bounds.

The removal of .dev0 from rapids-build-backend and a0 from numpy upper bounds aligns with the PR objective to prevent pip from treating pre-releases as acceptable when --pre is not passed. Changes are consistently applied across build-system.requires, project.dependencies, and tool.rapids-build-backend.requires.

Also applies to: 22-22, 77-77

conda/environments/all_cuda-129_arch-aarch64.yaml (1)

19-19: LGTM! Prerelease suffixes correctly removed.

The removal of a0 from cuda-python and numpy, and .dev0 from rapids-build-backend upper bounds is consistent with the PR objective and aligns with changes across other environment files.

Also applies to: 49-49, 61-61

conda/environments/all_cuda-130_arch-aarch64.yaml (1)

19-19: LGTM! Prerelease suffixes correctly removed.

The removal of a0 from cuda-python and numpy, and .dev0 from rapids-build-backend upper bounds is consistent with the PR objective. Changes align with the CUDA 12.9 environment file pattern.

Also applies to: 49-49, 61-61

conda/recipes/cuopt-server/recipe.yaml (1)

32-32: LGTM! Prerelease suffixes correctly removed from recipe requirements.

The removal of .dev0 from rapids-build-backend in host requirements and a0 from numpy in run requirements is consistent with the PR objective and aligns with changes across other recipe files.

Also applies to: 40-40

conda/recipes/cuopt/recipe.yaml (1)

65-65: LGTM! Prerelease suffixes correctly removed from all requirements.

The removal of prerelease suffixes is consistent across all dependencies:

  • .dev0 removed from rapids-build-backend in host requirements
  • a0 removed from cuda-python in both conditional branches (CUDA 12 and 13) for host and run requirements
  • a0 removed from numpy in run requirements

All changes align with the PR objective and maintain consistency with other recipe files.

Also applies to: 70-71, 81-81, 93-94


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gforsyth
Copy link
Contributor

gforsyth commented Dec 5, 2025

/merge

@github-actions
Copy link

🔔 Hi @anandhkb, this pull request has had no activity for 7 days. Please update or let us know if it can be closed. Thank you!

If this is an "epic" issue, then please add the "epic" label to this issue.
If it is a PR and not ready for review, then please convert this to draft.
If you just want to switch off this notification, then use the "skip inactivity reminder" label.

@bdice
Copy link
Contributor Author

bdice commented Dec 18, 2025

/merge

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
conda/recipes/cuopt/recipe.yaml (1)

81-81: Update numpy upper bound constraint to <3.0 for consistency.

Line 81 contains numpy >=1.23,<3.0a0 with a pre-release upper bound indicator. All other recipe files (cuopt-server, mps-parser) and environment files use <3.0 without the a0 suffix. Update this constraint to <3.0 to align with the rest of the codebase.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ac62225 and e90f1f5.

📒 Files selected for processing (7)
  • conda/environments/all_cuda-129_arch-aarch64.yaml (3 hunks)
  • conda/environments/all_cuda-129_arch-x86_64.yaml (3 hunks)
  • conda/environments/all_cuda-130_arch-aarch64.yaml (3 hunks)
  • conda/environments/all_cuda-130_arch-x86_64.yaml (3 hunks)
  • conda/recipes/cuopt/recipe.yaml (2 hunks)
  • dependencies.yaml (3 hunks)
  • python/cuopt/pyproject.toml (3 hunks)
🚧 Files skipped from review as they are similar to previous changes (5)
  • python/cuopt/pyproject.toml
  • conda/environments/all_cuda-129_arch-aarch64.yaml
  • conda/environments/all_cuda-129_arch-x86_64.yaml
  • dependencies.yaml
  • conda/environments/all_cuda-130_arch-aarch64.yaml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
  • GitHub Check: wheel-build-cuopt-server / compute-matrix
  • GitHub Check: wheel-build-cuopt-sh-client / 13.0.2, 3.10, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.12, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.10, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.13, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.12, amd64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.11, arm64, rockylinux8
  • GitHub Check: wheel-build-cuopt-mps-parser / 13.0.2, 3.11, amd64, rockylinux8
🔇 Additional comments (2)
conda/environments/all_cuda-130_arch-x86_64.yaml (1)

19-19: LGTM! Pre-release suffixes correctly removed.

The removal of pre-release suffixes from cuda-python, numpy, and rapids-build-backend upper bounds is correct and aligns with the PR objectives. These changes prevent pip from treating pre-releases as acceptable when --pre is not specified.

Also applies to: 49-49, 61-61

conda/recipes/cuopt/recipe.yaml (1)

65-65: LGTM! Pre-release suffixes correctly removed.

The removal of pre-release suffixes from rapids-build-backend and cuda-python constraints is correct and aligns with the PR objectives.

Also applies to: 70-71, 93-94

@github-actions
Copy link

🔔 Hi @anandhkb, this pull request has had no activity for 7 days. Please update or let us know if it can be closed. Thank you!

If this is an "epic" issue, then please add the "epic" label to this issue.
If it is a PR and not ready for review, then please convert this to draft.
If you just want to switch off this notification, then use the "skip inactivity reminder" label.

@rapids-bot rapids-bot bot merged commit 1c8e311 into NVIDIA:main Dec 31, 2025
92 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants