-
Notifications
You must be signed in to change notification settings - Fork 17
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
Allow testing of earliest/latest dependencies. #228
Conversation
@@ -108,15 +108,16 @@ jobs: | |||
|
|||
echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" | |||
test: | |||
name: ${{ matrix.CUDA_VER }}, ${{ matrix.PY_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }}, ${{ matrix.gpu }} | |||
name: ${{ matrix.CUDA_VER }}, ${{ matrix.PY_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }}, ${{ matrix.GPU }}, ${{ matrix.DRIVER }}-driver, ${{ matrix.DEPENDENCIES }}-deps |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should definitely proceed here because we need to do it sooner than we'll be able to switch to uv, but JFYI in case it's useful for the future, uv supports using the oldest instead of newest compatible versions via a flag. It won't be as surgical as what you are doing here though. |
Rebased. Do we need to discuss if the pattern in the RMM PR pattern is nice enough to be pushed to most RAPIDS repos? Using |
TBH if we could use |
I guess the question is then if we should wait for One thing wI could do is pull out the |
Changes this to 24.10. Should we go head with this, or redesign/wait for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should proceed now with this. It is not much churn if/when we use uv to achieve this purpose.
- { ARCH: 'amd64', PY_VER: '3.10', CUDA_VER: '11.8.0', LINUX_VER: 'ubuntu22.04', GPU: 'v100', DRIVER: 'latest' } | ||
- { ARCH: 'amd64', PY_VER: '3.10', CUDA_VER: '12.0.1', LINUX_VER: 'rockylinux8', GPU: 'v100', DRIVER: 'latest' } | ||
- { ARCH: 'amd64', PY_VER: '3.11', CUDA_VER: '12.5.1', LINUX_VER: 'ubuntu22.04', GPU: 'v100', DRIVER: 'latest' } | ||
- { ARCH: 'amd64', PY_VER: '3.9', CUDA_VER: '11.4.3', LINUX_VER: 'rockylinux8', GPU: 'v100', DRIVER: 'earliest', DEPENDENCIES: 'oldest' } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the pattern for DRIVER is already 'earliest' and 'latest', can we keep that pattern for DEPENDENCIES also? In other words, just limit the values that a human has to remember?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Had changed it after the discussion here, OTOH, also happy to change it again. I agree here it is a bit of a dissonance.
What else is still needed here? |
Can we psh this forward? I am happy to change the name, right now it seems like a toss-up to me (slightly nicer, but diverges from the other one), so I am slightly tempted to keep it as is. |
@msarahan what do you think? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I support this, thanks!
Mostly identical to gh-1606, which allows the testing of oldest/latest dependencies. What oldest/latest dependencies means exactly has to be set by each project in their `dependencies.yaml` file for the test env. See rapidsai/shared-workflows#228 for the workflow changes. This is part of preparing for 2.0 (which should just work, but in the end no need to include it in the same PR). *Modifications from draft PR:* - I renamed it to `oldest`, as suggested by Matthew. - Noticed that the name is different between wheel and conda workflows, so modified both to include all matrix information. (Draft, since the shared workflow should be pushed in first to revert the branch renaming probably. Need to test that the wheel workflow is correct.) Authors: - Sebastian Berg (https://github.com/seberg) - Bradley Dice (https://github.com/bdice) Approvers: - James Lamb (https://github.com/jameslamb) - https://github.com/jakirkham URL: #1613
This PR allows the testing of earliest/latest dependencies. This is meant to be interpreted by each repository as it wishes, with CI scripts and
rapids-dependency-file-generator
to mediate which dependency versions are selected. For example, cuDF may wish to test early versions ofnumpy
andpandas
, while cuGraph may wish to test early versions ofnetworkx
, etc.This is an experimental PR to prompt discussion / further work with @seberg.