Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,4 @@ files-to-customize.txt
.netlify
__pycache__/
node_modules
projects-to-versions.json
rapids-docs-env/
10 changes: 10 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ ci:
autoupdate_branch: ""
autoupdate_commit_msg: "[pre-commit.ci] pre-commit autoupdate"
autoupdate_schedule: quarterly
skip:
# requires 'jq' and 'yq', which don't come pre-installed in the pre-commit.ci image
- generate-projects-to-versions
Copy link
Member Author

Choose a reason for hiding this comment

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

This was something I hadn't considered when implementing this in a shell script and then introducing a pre-commit hook... for language: system types of hooks, you have to manage your own dependencies (https://pre-commit.com/#system).

And on pre-commit.ci, we don't have any ability (as far as I can tell) to pre-install things before pre-commit runs.

For now, to restore all the API docs, let's just skip this in CI.

I can put up a follow-up switching this to a Python script... that'd be easier to maintain anyway 😁

submodules: false

repos:
Expand Down Expand Up @@ -35,6 +38,13 @@ repos:
.devcontainer/devcontainer.json
)
- id: check-yaml
- repo: local
hooks:
- id: generate-projects-to-versions
name: generate-projects-to-versions
entry: ./ci/generate-projects-to-versions.sh
language: system
pass_filenames: false
- repo: https://github.com/sirosen/texthooks
rev: 0.7.1
hooks:
Expand Down
121 changes: 121 additions & 0 deletions _data/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,28 @@ apis:
legacy: 1
stable: 1
nightly: 1
cugraph:
name: cuGraph
path: cugraph
desc: 'cuGraph is a GPU accelerated graph analytics library, with functionality like NetworkX, which is seamlessly integrated into the RAPIDS data science platform. cuGraph supports GNNs with PyG, DGL packages, cugraph-service for analytics on a remote graph, and WHOLEGRAPH for memory management.'
Copy link
Contributor

Choose a reason for hiding this comment

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

Non-blocking: This needs to be updated, the GNN functionality has been split out.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'll address this in a follow-up... it does need to be updated (to remove DGL and to mention the specific library names for searchability), but not because the GNN functionality has been split out.

The whole family of cugraph packages builds its docs from one repo: https://github.com/rapidsai/cugraph-docs

Instead of uploading from individual projects' CI like the rest of RAPIDS. That is also why you don't see a separate entry for nx-cugraph in https://github.com/rapidsai/docs/blob/main/_data/docs.yml, I think.

I'll put up a follow-up with a proposal we can discuss.

cc @acostadon

Copy link
Member Author

Choose a reason for hiding this comment

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

Put up a proposal at #671

ghlink: https://github.com/rapidsai/cugraph
cllink: https://github.com/rapidsai/cugraph/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
cuxfilter:
name: cuxfilter
path: cuxfilter
desc: 'cuxfilter acts as a connector library, which provides the connections between different visualization libraries and a GPU dataframe without much hassle. This also allows the user to use charts from different libraries in a single dashboard, while also providing the interaction.'
ghlink: https://github.com/rapidsai/cuxfilter
cllink: https://github.com/rapidsai/cuxfilter/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
cudf-java:
name: 'Java + cuDF'
path: cudf-java
Expand All @@ -46,6 +68,83 @@ apis:
legacy: 1
stable: 1
nightly: 0
cucim:
name: cuCIM
path: cucim
desc: 'The RAPIDS cuCIM is an extensible toolkit designed to provide GPU accelerated I/O, computer vision & image processing primitives for N-Dimensional images with a focus on biomedical imaging.'
ghlink: https://github.com/rapidsai/cucim
cllink: https://github.com/rapidsai/cucim/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
cuvs:
name: cuVS
path: cuvs
desc: 'cuVS is a library for GPU-accelerated vector search and clustering.'
ghlink: https://github.com/rapidsai/cuvs
cllink: https://github.com/rapidsai/cuvs/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
kvikio:
name: KvikIO
path: kvikio
desc: "KvikIO is a Python and C++ library for high performance file IO using GPUDirect Storage (GDS)."
ghlink: https://github.com/rapidsai/kvikio
cllink: https://github.com/rapidsai/kvikio/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
raft:
name: RAFT
path: raft
desc: "RAFT contains fundamental widely-used algorithms and primitives for vector search, machine learning, and information retrieval."
ghlink: https://github.com/rapidsai/raft
cllink: https://github.com/rapidsai/raft/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
dask-cuda:
name: Dask-CUDA
path: dask-cuda
desc: "Various utilities to improve deployment and management of Dask workers on CUDA-enabled systems."
ghlink: https://github.com/rapidsai/dask-cuda
cllink: https://github.com/rapidsai/dask-cuda/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
rmm:
name: RMM
path: rmm
desc: 'RAPIDS Memory Manager (RMM) is a central place for all device memory allocations in cuDF (C++ and Python) and other RAPIDS libraries. In addition, it is a replacement allocator for CUDA Device Memory (and CUDA Managed Memory) and a pool allocator to make CUDA device memory allocation / deallocation faster and asynchronous.'
ghlink: https://github.com/rapidsai/rmm
cllink: https://github.com/rapidsai/rmm/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
rapidsmpf:
name: RapidsMPF
path: rapidsmpf
desc: 'RAPIDS Multi-Process Foundation (rapidsmpf) is a collection of multi-GPU, distributed memory algorithms written in C++ and exposed to Python.'
ghlink: https://github.com/rapidsai/rapidsmpf
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 0
stable: 1
nightly: 1


# RAPIDS "Libs" - lower-level libraries that are building blocks for creating
# custom tools and integrate with other libraries
Expand Down Expand Up @@ -73,6 +172,28 @@ libs:
legacy: 1
stable: 1
nightly: 1
libcuml:
name: libcuml
path: libcuml
desc: 'libcuml is a C/C++ CUDA library for cuML.'
ghlink: https://github.com/rapidsai/cuml
cllink: https://github.com/rapidsai/cuml/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
libkvikio:
name: libkvikio
path: libkvikio
desc: "libkvikio is a C++ header-only library providing bindings to cuFile, which enables GPUDirect Storage (GDS)."
ghlink: https://github.com/rapidsai/kvikio
cllink: https://github.com/rapidsai/kvikio/blob/main/CHANGELOG.md
versions:
# enable or disable links; 0 = disabled, 1 = enabled
legacy: 1
stable: 1
nightly: 1
libucxx:
name: libucxx
path: libucxx
Expand Down
112 changes: 112 additions & 0 deletions ci/customization/projects-to-versions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
{
"cucim": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"cudf": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"cudf-java": {
"legacy": "25.06",
"stable": "25.08"
},
"cugraph": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"cuml": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"cuproj": {
"legacy": "25.02",
"stable": "25.04"
},
"cusignal": {},
"cuspatial": {
"legacy": "25.02",
"stable": "25.04"
},
"cuvs": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"cuxfilter": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"dask-cuda": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"dask-cudf": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"kvikio": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"libcudf": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"libcuml": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"libcuproj": {
"legacy": "25.02",
"stable": "25.04"
},
"libcuspatial": {
"legacy": "25.02",
"stable": "25.04"
},
"libkvikio": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"librmm": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"libucxx": {
"legacy": "0.44",
"nightly": "0.46",
"stable": "0.45"
},
"raft": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"rapids-cmake": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
},
"rapidsmpf": {
"nightly": "25.10",
"stable": "25.08"
},
"rmm": {
"legacy": "25.06",
"nightly": "25.10",
"stable": "25.08"
}
}
2 changes: 1 addition & 1 deletion ci/download_from_s3.sh
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ download_lib_docs() {
SRC VERSION_NAME VERSION_NUMBER

echo "--- processing RAPIDS libraries ---"
PROJECTS_TO_VERSIONS_JSON=$(./ci/get-projects-to-versions.sh)
PROJECTS_TO_VERSIONS_JSON=$(cat "./ci/customization/projects-to-versions.json")
for PROJECT in $(jq -r 'keys | .[]' <<< "${PROJECTS_TO_VERSIONS_JSON}"); do

# extract the map of versions to download for this project, which will look something like:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
#
# Only that mapping is written to stdout, so this is safe to use inline like this:
#
# PROJECTS_TO_VERSIONS=$(./ci/get-projects-to-versions.sh)
# PROJECTS_TO_VERSIONS=$(./ci/generate-projects-to-versions.sh)
#
# WARNING: no guarantees are made about the ordering of output in this mapping.
#
Expand Down Expand Up @@ -130,4 +130,4 @@ for PROJECT in $(yq -r 'keys | .[]' <<< "$INACTIVE_PROJECT_MAP"); do
)
done

echo -n "${PROJECTS_TO_VERSIONS}"
echo "${PROJECTS_TO_VERSIONS}" > ./ci/customization/projects-to-versions.json
1 change: 0 additions & 1 deletion ci/post-process.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ CURRENT_DIR=$(dirname $(realpath $0))
pip install -r "${CURRENT_DIR}/customization/requirements.txt"

PROJECTS_TO_VERSIONS_PATH="${CURRENT_DIR}"/customization/projects-to-versions.json
"${CURRENT_DIR}"/get-projects-to-versions.sh > "${PROJECTS_TO_VERSIONS_PATH}"

"${CURRENT_DIR}"/update_symlinks.sh "${PROJECTS_TO_VERSIONS_PATH}"

Expand Down