diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index a018544c96e..aea81c152e0 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -180,16 +180,11 @@ jobs: build-all --verbose -j$(nproc --ignore=1) -DBUILD_CUGRAPH_MG_TESTS=ON; sccache -s; telemetry-summarize: - runs-on: ubuntu-latest + # This job must use a self-hosted runner to record telemetry traces. + runs-on: linux-amd64-cpu4 needs: pr-builder if: ${{ vars.TELEMETRY_ENABLED == 'true' && !cancelled() }} continue-on-error: true steps: - - name: Load stashed telemetry env vars - uses: rapidsai/shared-actions/telemetry-dispatch-load-base-env-vars@main - with: - load_service_name: true - name: Telemetry summarize - uses: rapidsai/shared-actions/telemetry-dispatch-write-summary@main - with: - cert_concat: "${{ secrets.OTEL_EXPORTER_OTLP_CA_CERTIFICATE }};${{ secrets.OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE }};${{ secrets.OTEL_EXPORTER_OTLP_CLIENT_KEY }}" + uses: rapidsai/shared-actions/telemetry-dispatch-summarize@main diff --git a/ci/build_docs.sh b/ci/build_docs.sh index ad77c9a0e60..46a6005b8dc 100755 --- a/ci/build_docs.sh +++ b/ci/build_docs.sh @@ -63,6 +63,8 @@ rapids-logger "Build CPP docs" pushd cpp/doxygen doxygen Doxyfile export XML_DIR_LIBCUGRAPH="$(pwd)/xml" +mkdir -p "${RAPIDS_DOCS_DIR}/libcugraph/xml_tar" +tar -czf "${RAPIDS_DOCS_DIR}/libcugraph/xml_tar"/xml.tar.gz -C xml . popd rapids-logger "Build Python docs" diff --git a/ci/release/update-version.sh b/ci/release/update-version.sh index a73745f2c0e..2890011bc7f 100755 --- a/ci/release/update-version.sh +++ b/ci/release/update-version.sh @@ -58,7 +58,6 @@ DEPENDENCIES=( dask-cudf libcudf libraft - libraft-headers librmm pylibcugraph pylibwholegraph diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index d98db2232e2..7b2fddb7422 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -13,6 +13,7 @@ dependencies: - certifi - cmake>=3.26.4,!=3.30.0 - cuda-nvtx +- cuda-python>=11.8.5,<12.0a0 - cuda-version=11.8 - cudatoolkit - cudf==25.2.*,>=0.0.0a0 @@ -27,7 +28,6 @@ dependencies: - graphviz - ipython - libcudf==25.2.*,>=0.0.0a0 -- libraft-headers==25.2.*,>=0.0.0a0 - libraft==25.2.*,>=0.0.0a0 - librmm==25.2.*,>=0.0.0a0 - nbsphinx @@ -67,11 +67,10 @@ dependencies: - sphinx-markdown-tables - sphinx<6 - sphinxcontrib-websupport -- thriftpy2!=0.5.0,!=0.5.1 +- thriftpy2>=0.4.15,!=0.5.0,!=0.5.1 - torchdata - torchmetrics - ucx-proc=*=gpu - ucx-py==0.42.*,>=0.0.0a0 -- wget - wheel name: all_cuda-118_arch-x86_64 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 34bef310fed..87a2417bbc4 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -16,6 +16,7 @@ dependencies: - cuda-nvcc - cuda-nvtx-dev - cuda-profiler-api +- cuda-python>=12.6.2,<13.0a0 - cuda-version=12.5 - cudf==25.2.*,>=0.0.0a0 - cupy>=12.0.0 @@ -33,7 +34,6 @@ dependencies: - libcurand-dev - libcusolver-dev - libcusparse-dev -- libraft-headers==25.2.*,>=0.0.0a0 - libraft==25.2.*,>=0.0.0a0 - librmm==25.2.*,>=0.0.0a0 - nbsphinx @@ -72,11 +72,10 @@ dependencies: - sphinx-markdown-tables - sphinx<6 - sphinxcontrib-websupport -- thriftpy2!=0.5.0,!=0.5.1 +- thriftpy2>=0.4.15,!=0.5.0,!=0.5.1 - torchdata - torchmetrics - ucx-proc=*=gpu - ucx-py==0.42.*,>=0.0.0a0 -- wget - wheel name: all_cuda-125_arch-x86_64 diff --git a/conda/recipes/libcugraph/meta.yaml b/conda/recipes/libcugraph/meta.yaml index 922d5e577b2..eb948e08d14 100644 --- a/conda/recipes/libcugraph/meta.yaml +++ b/conda/recipes/libcugraph/meta.yaml @@ -70,7 +70,6 @@ requirements: - doxygen {{ doxygen_version }} - libcudf ={{ minor_version }} - libraft ={{ minor_version }} - - libraft-headers ={{ minor_version }} - librmm ={{ minor_version }} - nccl {{ nccl_version }} - ucx-proc=*=gpu @@ -114,7 +113,6 @@ outputs: - libcusparse {% endif %} - libraft ={{ minor_version }} - - libraft-headers ={{ minor_version }} - librmm ={{ minor_version }} - nccl {{ nccl_version }} - ucx-proc=*=gpu diff --git a/dependencies.yaml b/dependencies.yaml index b271abc6276..eb4bb68dc9d 100755 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -11,18 +11,23 @@ files: - cpp_build - cuda - cuda_version - - docs - - python_build_rapids - - python_build_wheel - - python_build_cythonize - - depends_on_rmm - depends_on_cudf + - depends_on_cupy + - depends_on_dask_cuda - depends_on_dask_cudf + - depends_on_libcudf + - depends_on_libraft + - depends_on_librmm - depends_on_pylibraft - - depends_on_raft_dask - depends_on_pylibwholegraph - - depends_on_cupy - depends_on_pytorch + - depends_on_raft_dask + - depends_on_rmm + - depends_on_ucx_py + - docs + - python_build_cythonize + - python_build_rapids + - python_build_wheel - python_run_cugraph - test_notebook - test_python_common @@ -48,6 +53,7 @@ files: output: none includes: - cuda_version + - depends_on_pylibwholegraph - py_version - test_notebook - test_python_common @@ -69,8 +75,8 @@ files: extras: table: build-system includes: - - python_build_rapids - python_build_cythonize + - python_build_rapids py_rapids_build_cugraph: output: pyproject pyproject_dir: python/cugraph @@ -79,21 +85,23 @@ files: key: requires includes: - common_build - - depends_on_rmm - - depends_on_pylibraft - depends_on_pylibcugraph + - depends_on_pylibraft + - depends_on_rmm py_run_cugraph: output: pyproject pyproject_dir: python/cugraph extras: table: project includes: - - depends_on_rmm - depends_on_cudf + - depends_on_cupy + - depends_on_dask_cuda - depends_on_dask_cudf - - depends_on_raft_dask - depends_on_pylibcugraph - - depends_on_cupy + - depends_on_raft_dask + - depends_on_rmm + - depends_on_ucx_py - python_run_cugraph py_test_cugraph: output: pyproject @@ -102,17 +110,17 @@ files: table: project.optional-dependencies key: test includes: + - depends_on_pylibwholegraph - test_python_common - test_python_cugraph - - depends_on_pylibwholegraph py_build_pylibcugraph: output: pyproject pyproject_dir: python/pylibcugraph extras: table: build-system includes: - - python_build_rapids - python_build_cythonize + - python_build_rapids py_rapids_build_pylibcugraph: output: pyproject pyproject_dir: python/pylibcugraph @@ -121,8 +129,8 @@ files: key: requires includes: - common_build - - depends_on_rmm - depends_on_pylibraft + - depends_on_rmm py_run_pylibcugraph: output: pyproject pyproject_dir: python/pylibcugraph @@ -130,8 +138,8 @@ files: table: project includes: - cuda_wheels - - depends_on_rmm - depends_on_pylibraft + - depends_on_rmm py_test_pylibcugraph: output: pyproject pyproject_dir: python/pylibcugraph @@ -171,10 +179,14 @@ files: extras: table: project includes: - - depends_on_rmm - depends_on_cudf - - depends_on_dask_cudf + - depends_on_cugraph + - depends_on_cugraph_service_client - depends_on_cupy + - depends_on_dask_cuda + - depends_on_dask_cudf + - depends_on_rmm + - depends_on_ucx_py - python_run_cugraph_service_server py_test_cugraph_service_server: output: pyproject @@ -290,10 +302,6 @@ dependencies: packages: - c-compiler - cxx-compiler - - libcudf==25.2.*,>=0.0.0a0 - - libraft-headers==25.2.*,>=0.0.0a0 - - libraft==25.2.*,>=0.0.0a0 - - librmm==25.2.*,>=0.0.0a0 - openmpi # Required for building cpp-mgtests (multi-GPU tests) specific: - output_types: [conda] @@ -384,7 +392,6 @@ dependencies: - output_types: [conda, pyproject] packages: - &dask rapids-dask-dependency==25.2.*,>=0.0.0a0 - - &dask_cuda dask-cuda==25.2.*,>=0.0.0a0 - &numba numba>=0.57 - &numpy numpy>=1.23,<3.0a0 - output_types: conda @@ -394,67 +401,34 @@ dependencies: - requests - nccl>=2.19 - ucx-proc=*=gpu - - &ucx_py_unsuffixed ucx-py==0.42.*,>=0.0.0a0 - output_types: pyproject packages: # cudf uses fsspec but is protocol independent. cugraph # dataset APIs require [http] extras for use with cudf. - fsspec[http]>=0.6.0 specific: - - output_types: pyproject + - output_types: [conda, requirements, pyproject] matrices: - - matrix: - cuda: "11.*" - cuda_suffixed: "true" - packages: - - &ucx_py_cu11 ucx-py-cu11==0.42.*,>=0.0.0a0 - matrix: cuda: "12.*" - cuda_suffixed: "true" packages: - - &ucx_py_cu12 ucx-py-cu12==0.42.*,>=0.0.0a0 - - matrix: + - cuda-python>=12.6.2,<13.0a0 + - matrix: # All CUDA 11 versions packages: - - *ucx_py_unsuffixed + - cuda-python>=11.8.5,<12.0a0 python_run_cugraph_service_client: common: - output_types: [conda, pyproject] packages: - - &thrift thriftpy2!=0.5.0,!=0.5.1 + - &thrift thriftpy2>=0.4.15,!=0.5.0,!=0.5.1 python_run_cugraph_service_server: common: - output_types: [conda, pyproject] packages: - *dask - - *dask_cuda - *numba - *numpy - *thrift - - output_types: conda - packages: - - *ucx_py_unsuffixed - specific: - - output_types: pyproject - matrices: - - matrix: - cuda: "11.*" - cuda_suffixed: "true" - packages: - - &cugraph_cu11 cugraph-cu11==25.2.*,>=0.0.0a0 - - cugraph-service-client-cu11==25.2.*,>=0.0.0a0 - - *ucx_py_cu11 - - matrix: - cuda: "12.*" - cuda_suffixed: "true" - packages: - - &cugraph_cu12 cugraph-cu12==25.2.*,>=0.0.0a0 - - cugraph-service-client-cu12==25.2.*,>=0.0.0a0 - - *ucx_py_cu12 - - matrix: - packages: - - &cugraph_unsuffixed cugraph==25.2.*,>=0.0.0a0 - - cugraph-service-client==25.2.*,>=0.0.0a0 - - *ucx_py_unsuffixed test_cpp: common: - output_types: conda @@ -467,9 +441,6 @@ dependencies: - certifi - ipython - notebook>=0.5.0 - - output_types: [conda] - packages: - - wget test_python_common: common: - output_types: [conda, pyproject] @@ -491,7 +462,6 @@ dependencies: - scikit-learn>=0.23.1 - output_types: [conda] packages: - - &pylibwholegraph_unsuffixed pylibwholegraph==25.2.*,>=0.0.0a0 - *thrift test_python_pylibcugraph: common: @@ -499,11 +469,47 @@ dependencies: packages: - *numpy + depends_on_cugraph: + common: + - output_types: conda + packages: + - &cugraph_unsuffixed cugraph==25.2.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + specific: + - output_types: [requirements, pyproject] + matrices: + - matrix: + cuda: "12.*" + cuda_suffixed: "true" + packages: + - cugraph-cu12==25.2.*,>=0.0.0a0 + - matrix: + cuda: "11.*" + cuda_suffixed: "true" + packages: + - cugraph-cu11==25.2.*,>=0.0.0a0 + - {matrix: null, packages: [*cugraph_unsuffixed]} + + depends_on_cugraph_service_client: + common: + - output_types: [conda, requirements, pyproject] + packages: + - cugraph-service-client==25.2.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + depends_on_pytorch: common: - output_types: [conda] packages: - - &pytorch_conda pytorch>=2.3,<2.5a0 + - pytorch>=2.3,<2.5a0 - torchdata - pydantic - ogb @@ -535,7 +541,7 @@ dependencies: common: - output_types: conda packages: - - *pylibwholegraph_unsuffixed + - &pylibwholegraph_unsuffixed pylibwholegraph==25.2.*,>=0.0.0a0 - output_types: requirements packages: # pip recognizes the index as a global option for the requirements.txt file @@ -556,6 +562,24 @@ dependencies: - pylibwholegraph-cu11==25.2.*,>=0.0.0a0 - {matrix: null, packages: [*pylibwholegraph_unsuffixed]} + depends_on_libcudf: + common: + - output_types: conda + packages: + - libcudf==25.2.*,>=0.0.0a0 + + depends_on_libraft: + common: + - output_types: conda + packages: + - libraft==25.2.*,>=0.0.0a0 + + depends_on_librmm: + common: + - output_types: conda + packages: + - librmm==25.2.*,>=0.0.0a0 + depends_on_rmm: common: - output_types: conda @@ -606,6 +630,17 @@ dependencies: - cudf-cu11==25.2.*,>=0.0.0a0 - {matrix: null, packages: [*cudf_unsuffixed]} + depends_on_dask_cuda: + common: + - output_types: [conda, pyproject, requirements] + packages: + - dask-cuda==25.2.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + depends_on_dask_cudf: common: - output_types: conda @@ -724,3 +759,28 @@ dependencies: packages: &cupy_packages_cu11 - cupy-cuda11x>=12.0.0 - {matrix: null, packages: *cupy_packages_cu11} + + depends_on_ucx_py: + common: + - output_types: conda + packages: + - &ucx_py_unsuffixed ucx-py==0.42.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + specific: + - output_types: [requirements, pyproject] + matrices: + - matrix: + cuda: "12.*" + cuda_suffixed: "true" + packages: + - ucx-py-cu12==0.42.*,>=0.0.0a0 + - matrix: + cuda: "11.*" + cuda_suffixed: "true" + packages: + - ucx-py-cu11==0.42.*,>=0.0.0a0 + - {matrix: null, packages: [*ucx_py_unsuffixed]} diff --git a/python/cugraph-service/client/pyproject.toml b/python/cugraph-service/client/pyproject.toml index ac5e6bad0d5..093a578db2b 100644 --- a/python/cugraph-service/client/pyproject.toml +++ b/python/cugraph-service/client/pyproject.toml @@ -20,7 +20,7 @@ authors = [ license = { text = "Apache 2.0" } requires-python = ">=3.10" dependencies = [ - "thriftpy2!=0.5.0,!=0.5.1", + "thriftpy2>=0.4.15,!=0.5.0,!=0.5.1", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../../dependencies.yaml and run `rapids-dependency-file-generator`. classifiers = [ "Intended Audience :: Developers", diff --git a/python/cugraph-service/server/pyproject.toml b/python/cugraph-service/server/pyproject.toml index adb18f57216..29ee41854f8 100644 --- a/python/cugraph-service/server/pyproject.toml +++ b/python/cugraph-service/server/pyproject.toml @@ -30,7 +30,7 @@ dependencies = [ "numpy>=1.23,<3.0a0", "rapids-dask-dependency==25.2.*,>=0.0.0a0", "rmm==25.2.*,>=0.0.0a0", - "thriftpy2!=0.5.0,!=0.5.1", + "thriftpy2>=0.4.15,!=0.5.0,!=0.5.1", "ucx-py==0.42.*,>=0.0.0a0", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../../dependencies.yaml and run `rapids-dependency-file-generator`. classifiers = [ diff --git a/python/cugraph/pyproject.toml b/python/cugraph/pyproject.toml index 481f151ac22..8fa3a0938e8 100644 --- a/python/cugraph/pyproject.toml +++ b/python/cugraph/pyproject.toml @@ -23,6 +23,7 @@ authors = [ license = { text = "Apache 2.0" } requires-python = ">=3.10" dependencies = [ + "cuda-python>=11.8.5,<12.0a0", "cudf==25.2.*,>=0.0.0a0", "cupy-cuda11x>=12.0.0", "dask-cuda==25.2.*,>=0.0.0a0",