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

Use tool.scikit-build.cmake.version #1637

Merged

Conversation

KyleFromNVIDIA
Copy link
Contributor

Description

cmake.minimum-version has been deprecated since scikit-build-core 0.8, and is now causing conflicts in 0.10 due to its attempts to auto-detect cmake.version from CMakeLists.txt. Bump the minimum scikit-build-core to 0.10 and use the suggested cmake.version.

Contributes to rapidsai/build-planning#58

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@KyleFromNVIDIA KyleFromNVIDIA requested a review from a team as a code owner August 6, 2024 21:16
@KyleFromNVIDIA KyleFromNVIDIA requested a review from bdice August 6, 2024 21:16
@github-actions github-actions bot added Python Related to RMM Python API conda labels Aug 6, 2024
@KyleFromNVIDIA KyleFromNVIDIA added bug Something isn't working non-breaking Non-breaking change labels Aug 6, 2024
Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

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

Just one suggestion, otherwise LGTM. Let's apply these changes across all of RAPIDS.

Should we be concerned about this affecting the 24.08 release?

python/librmm/pyproject.toml Show resolved Hide resolved
cmake.minimum-version has been deprecated since 0.8, and is now
causing conflicts in 0.10 due to its attempts to auto-detect
cmake.version from CMakeLists.txt. Bump the minimum scikit-build-core
to 0.10 and used the suggested cmake.version.
@KyleFromNVIDIA KyleFromNVIDIA force-pushed the scikit-build-cmake-version branch from 2a96628 to f5b9b7b Compare August 6, 2024 21:22
@KyleFromNVIDIA KyleFromNVIDIA changed the base branch from branch-24.10 to branch-24.08 August 6, 2024 21:22
@henryiii
Copy link

henryiii commented Aug 6, 2024

causing conflicts in 0.10 due to its attempts to auto-detect cmake.version from CMakeLists.txt

It's not supposed to do this unless minimum-version is unset or set to 0.10+.

@henryiii
Copy link

henryiii commented Aug 6, 2024

Oh, is minimum-version unset and you are using cmake.minimum-version? I might not have worked out that possibility (Edit: it seems fine, actually, in our tests). What's breaking, though, if it auto-detects the version?

@bdice
Copy link
Contributor

bdice commented Aug 6, 2024

#1638 (comment)

That's right, @henryiii. scikit-build-core 0.10.0 sees that the minimum-version (for scikit-build-core) is unset, and thus automatically sets cmake.version, which conflicts with our manually set cmake.minimum-version.

    WARNING: Use cmake.version instead of cmake.minimum-version with scikit-build-core >= 0.8
    ERROR: Cannot set both cmake.minimum_version and cmake.version; use version only for scikit-build-core >= 0.8.

@henryiii
Copy link

henryiii commented Aug 6, 2024

But it's not supposed to do this. I'm trying to see if I can reproduce this in our tests. It's supposed to take minimum-version if it's set and version isn't.

@henryiii
Copy link

henryiii commented Aug 6, 2024

I see the bug. I don't see why I can't trigger the bug in our tests yet. Could you try a branch? scikit-build/scikit-build-core#853

@jameslamb
Copy link
Member

Could you try a branch?

Sure! I just pushed to #1638.

The wheel-build-* jobs will be the ones to watch: https://github.com/rapidsai/rmm/actions/runs/10275261685/job/28433610205?pr=1638

Using that PR which contains 0 other changes instead of this one because it'd tell us if new behavior from your scikit-build-core branch would allow RAPIDS to build successfully with a new version of scikit-build-core that contains that patch.

@jameslamb
Copy link
Member

@henryiii it does look to me like the wheel builds are succeeding with your patch!

https://github.com/rapidsai/rmm/actions/runs/10275391215/job/28434079051?pr=1638

(ignore the failing conda-* jobs there... those are still pulling in scikit-build-core==0.10.0)

@jakirkham
Copy link
Member

We are seeing this error on CI:

    ERROR: Cannot set cmake.verbose if minimum-version is set to 0.10 or higher

This should be fixed by upstream PR: rapidsai/devcontainers#377

@henryiii
Copy link

henryiii commented Aug 7, 2024

0.10.1 is out, with this regression fixed. In general, not setting minimum-version means you might be affected by updates, but this was a mistake. I'd recommend going 0.10+, of course, but the regression should be fixed. :)

@jameslamb
Copy link
Member

Thank you SO MUCH for the quick fix @henryiii !!!

You're right of course, we should be setting minimum-version.

@henryiii
Copy link

henryiii commented Aug 7, 2024

Pushed to conda-forge too, that should be live in a few minutes.

@jameslamb
Copy link
Member

Pushed to conda-forge too, that should be live in a few minutes.

Yep I see 0.10.1 there: https://anaconda.org/conda-forge/scikit-build-core

Thanks again @henryiii !!

@jameslamb jameslamb changed the base branch from branch-24.08 to branch-24.10 August 7, 2024 14:21
@jameslamb
Copy link
Member

The devcontainers build should be fixed once rapidsai/devcontainers#377 is merged.

python/rmm/pyproject.toml Outdated Show resolved Hide resolved
Co-authored-by: jakirkham <jakirkham@gmail.com>
@jakirkham
Copy link
Member

/merge

@rapids-bot rapids-bot bot merged commit 8336979 into rapidsai:branch-24.10 Aug 8, 2024
57 checks passed
@jakirkham
Copy link
Member

Thanks all! 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working conda non-breaking Non-breaking change Python Related to RMM Python API
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants