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

[RELEASE] rapids-cmake v24.10 #696

Open
wants to merge 32 commits into
base: main
Choose a base branch
from
Open

[RELEASE] rapids-cmake v24.10 #696

wants to merge 32 commits into from

Conversation

raydouglass
Copy link
Member

❄️ Code freeze for branch-24.10 and v24.10 release

What does this mean?

Only critical/hotfix level issues should be merged into branch-24.10 until release (merging of this PR).

What is the purpose of this PR?

  • Update documentation
  • Allow testing for the new release
  • Enable a means to merge branch-24.10 into main for the release

raydouglass and others added 30 commits July 19, 2024 14:49
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
Forward-merge branch-24.08 into branch-24.10
This PR removes the deprecated functions `rapids_cpm_thrust`,  `rapids_cpm_libcudacxx` and `rapids_cuda_patch_toolkit`.

Merges together #664 and #661 together to have passing CI

Authors:
  - Robert Maynard (https://github.com/robertmaynard)
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #665
Remove deprecated sigantures of `rapids_export_find_package_file` and `rapids_export_find_package_root`

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #666
Forward-merge branch-24.08 into branch-24.10
A few small tweaks to `update-version.sh` for alignment across RAPIDS.

Authors:
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: #668
This PR updates pre-commit hooks to the latest versions that are supported without causing style check errors.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: #669
…modules() docs (#670)

`rapids_cython_create_modules()` accepts an argument `ASSOCIATED_TARGETS` which is missing from the function signature in its docs.

This fixes that.

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #670
Modify `rapids_cpm_nvcomp()` to allow `CMAKE_INSTALL_LIBDIR` and `CMAKE_INSTALL_INCLUDEDIR` to be nested directories. This is needed to support building wheels that set these variables in order to put their libraries in their own package directory.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - Robert Maynard (https://github.com/robertmaynard)

URL: #675
…ack (#671)

Instead of assuming the filesystem directory layout matches `add_subdirectory` calls, we now walk the CMake
`PARENT_DIRECTORY` property.

This allows us to handle more custom layouts of CMake projects

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #671
)

Previously nvcomp wouldn't restore `nvcomp_proprietary_binary` and the install rules for nvcomp on the second execution of CMake. Now we properly restore all needed nvcomp related state so that for each execution of cmake we have consistent behavior.

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

URL: #676
This PR bumps the cuco version to the latest to fetch bug fixes for rapidsai/cudf#16405 and rapidsai/cudf#16526

Authors:
  - Yunsong Wang (https://github.com/PointKernel)

Approvers:
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #677
Updated to CPM version 0.40.2 so that we don't se any policy CMP0169 ( `FetchContent_Populate() is deprecated` ) warnings

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #678
…678)" (#679)

Proposes reverting #678.

See #680 for context.

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Robert Maynard (https://github.com/robertmaynard)
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

URL: #679
#257 updated the readme, but forgot to update `basics.rst`. Copy the text from the readme.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - James Lamb (https://github.com/jameslamb)

URL: #681
…#682)

To help reduce the amount of network traffic, rapids-cmake now reuses the same CPM.cmake even when running no CPM cache tests. This elimates one source of network errors as we don't need to fetch the same CPM.cmake multiple times per CI run.

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

URL: #682
Updated some of the cpm tests to not clone `cccl` as it has the largest size, but instead using lighter repos.
Also re-evaluated which tests exactly need `NO_CPM_CACHE` to reduce network traffic.

Authors:
  - Robert Maynard (https://github.com/robertmaynard)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #683
Contributes to rapidsai/build-planning#88

Finishes the work of dropping Python 3.9 support.

This project stopped building / testing against Python 3.9 as of rapidsai/shared-workflows#235.
This PR updates configuration and docs to reflect that.

## Notes for Reviewers

### How I tested this

Checked that there were no remaining uses like this:

```shell
git grep -E '3\.9'
git grep '39'
git grep 'py39'
```

And similar for variations on Python 3.8 (to catch things that were missed the last time this was done).

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #684
We discovered an unfortunate bug in the gcc constexpr evaluator that broke the alignment calculations in cuco.

There is a simple workaround so employ that to unbreak rapids with cccl ToT

Authors:
  - Michael Schellenberger Costa (https://github.com/miscco)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Yunsong Wang (https://github.com/PointKernel)

URL: #685
This PR updates rapidsai/pre-commit-hooks to the version 0.4.0.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: #686
Contributes to rapidsai/build-planning#40

This PR adds support for Python 3.12.

## Notes for Reviewers

This is part of ongoing work to add Python 3.12 support across RAPIDS.
It temporarily introduces a build/test matrix including Python 3.12, from rapidsai/shared-workflows#213.

A follow-up PR will revert back to pointing at the `branch-24.10` branch of `shared-workflows` once all
RAPIDS repos have added Python 3.12 support.

### This will fail until all dependencies have been updates to Python 3.12

CI here is expected to fail until all of this project's upstream dependencies support Python 3.12.

This can be merged whenever all CI jobs are passing.

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #688
Upgrade to nvcomp 4.0. As part of that change we need to refactor the `nvcomp.cmake` to be aware of the new CMake files and targets that nvcomp generates.

Authors:
  - Vukasin Milovanovic (https://github.com/vuule)
  - Robert Maynard (https://github.com/robertmaynard)
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #633
KyleFromNVIDIA and others added 2 commits September 20, 2024 15:00
If another command, such as `mpiexec`, is used to execute a target, `rapids_add_test()` currently has no way of installing the target dependency. Add an `INSTALL_TARGET` argument to support this use case.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #692
* Bump fmt (to 11.0.2) and spdlog (to 1.14.1)

* fix fmt pin in dependencies.yaml

* point at rmm testing branch

* try patching fmt

* move patch down into 'fmt' directory

* avoid unrecognized-pragma errors when fmt headers are compiled by C/C++ compilers (only want this for nvcc)

* revert testing-only changes [skip ci]

* skip CI [skip ci]
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.

9 participants