From fb81fc3326fa6499f0d792423c6505942b2e43d8 Mon Sep 17 00:00:00 2001 From: Ben Frederickson Date: Wed, 11 Dec 2024 09:15:47 -0800 Subject: [PATCH 1/5] Use nvidia-sphinx-theme for docs --- conda/environments/all_cuda-118_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-118_arch-x86_64.yaml | 2 +- conda/environments/all_cuda-125_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-125_arch-x86_64.yaml | 2 +- dependencies.yaml | 2 +- docs/source/conf.py | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-aarch64.yaml b/conda/environments/all_cuda-118_arch-aarch64.yaml index 50aa3fe7e..c16823b5c 100644 --- a/conda/environments/all_cuda-118_arch-aarch64.yaml +++ b/conda/environments/all_cuda-118_arch-aarch64.yaml @@ -42,9 +42,9 @@ dependencies: - numpy>=1.23,<3.0a0 - numpydoc - nvcc_linux-aarch64=11.8 +- nvidia-sphinx-theme - openblas - pre-commit -- pydata-sphinx-theme - pylibraft==25.2.*,>=0.0.0a0 - pytest-cov - pytest==7.* diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 8f15b6164..1af2970f3 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -42,9 +42,9 @@ dependencies: - numpy>=1.23,<3.0a0 - numpydoc - nvcc_linux-64=11.8 +- nvidia-sphinx-theme - openblas - pre-commit -- pydata-sphinx-theme - pylibraft==25.2.*,>=0.0.0a0 - pytest-cov - pytest==7.* diff --git a/conda/environments/all_cuda-125_arch-aarch64.yaml b/conda/environments/all_cuda-125_arch-aarch64.yaml index f194c01a3..8a98a19de 100644 --- a/conda/environments/all_cuda-125_arch-aarch64.yaml +++ b/conda/environments/all_cuda-125_arch-aarch64.yaml @@ -38,9 +38,9 @@ dependencies: - ninja - numpy>=1.23,<3.0a0 - numpydoc +- nvidia-sphinx-theme - openblas - pre-commit -- pydata-sphinx-theme - pylibraft==25.2.*,>=0.0.0a0 - pytest-cov - pytest==7.* diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 912d1629b..e6ea455ed 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -38,9 +38,9 @@ dependencies: - ninja - numpy>=1.23,<3.0a0 - numpydoc +- nvidia-sphinx-theme - openblas - pre-commit -- pydata-sphinx-theme - pylibraft==25.2.*,>=0.0.0a0 - pytest-cov - pytest==7.* diff --git a/dependencies.yaml b/dependencies.yaml index eca97d2f5..2c9b5e4e3 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -399,7 +399,7 @@ dependencies: - graphviz - ipython - numpydoc - - pydata-sphinx-theme + - nvidia-sphinx-theme - recommonmark - sphinx-copybutton - sphinx-markdown-tables diff --git a/docs/source/conf.py b/docs/source/conf.py index 0d667833a..c14919568 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -99,7 +99,7 @@ # a list of builtin themes. # -html_theme = "pydata_sphinx_theme" +html_theme = "nvidia_sphinx_theme" # Theme options are theme-specific and customize the look and feel of a theme From 3d659298e9aeeab7f14c2528531d175f5afa8b83 Mon Sep 17 00:00:00 2001 From: Ben Frederickson Date: Wed, 11 Dec 2024 15:15:34 -0800 Subject: [PATCH 2/5] fix for installing nvidia-sphinx-theme via pypi --- conda/environments/all_cuda-118_arch-aarch64.yaml | 3 ++- conda/environments/all_cuda-118_arch-x86_64.yaml | 3 ++- conda/environments/all_cuda-125_arch-aarch64.yaml | 3 ++- conda/environments/all_cuda-125_arch-x86_64.yaml | 3 ++- dependencies.yaml | 5 +++-- 5 files changed, 11 insertions(+), 6 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-aarch64.yaml b/conda/environments/all_cuda-118_arch-aarch64.yaml index c16823b5c..b7e74ae3a 100644 --- a/conda/environments/all_cuda-118_arch-aarch64.yaml +++ b/conda/environments/all_cuda-118_arch-aarch64.yaml @@ -42,7 +42,6 @@ dependencies: - numpy>=1.23,<3.0a0 - numpydoc - nvcc_linux-aarch64=11.8 -- nvidia-sphinx-theme - openblas - pre-commit - pylibraft==25.2.*,>=0.0.0a0 @@ -56,4 +55,6 @@ dependencies: - sphinx-copybutton - sphinx-markdown-tables - sysroot_linux-aarch64==2.17 +- pip: + - nvidia-sphinx-theme name: all_cuda-118_arch-aarch64 diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 1af2970f3..549e6f8a5 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -42,7 +42,6 @@ dependencies: - numpy>=1.23,<3.0a0 - numpydoc - nvcc_linux-64=11.8 -- nvidia-sphinx-theme - openblas - pre-commit - pylibraft==25.2.*,>=0.0.0a0 @@ -56,4 +55,6 @@ dependencies: - sphinx-copybutton - sphinx-markdown-tables - sysroot_linux-64==2.17 +- pip: + - nvidia-sphinx-theme name: all_cuda-118_arch-x86_64 diff --git a/conda/environments/all_cuda-125_arch-aarch64.yaml b/conda/environments/all_cuda-125_arch-aarch64.yaml index 8a98a19de..5b7d07261 100644 --- a/conda/environments/all_cuda-125_arch-aarch64.yaml +++ b/conda/environments/all_cuda-125_arch-aarch64.yaml @@ -38,7 +38,6 @@ dependencies: - ninja - numpy>=1.23,<3.0a0 - numpydoc -- nvidia-sphinx-theme - openblas - pre-commit - pylibraft==25.2.*,>=0.0.0a0 @@ -52,4 +51,6 @@ dependencies: - sphinx-copybutton - sphinx-markdown-tables - sysroot_linux-aarch64==2.17 +- pip: + - nvidia-sphinx-theme name: all_cuda-125_arch-aarch64 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index e6ea455ed..91bed646c 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -38,7 +38,6 @@ dependencies: - ninja - numpy>=1.23,<3.0a0 - numpydoc -- nvidia-sphinx-theme - openblas - pre-commit - pylibraft==25.2.*,>=0.0.0a0 @@ -52,4 +51,6 @@ dependencies: - sphinx-copybutton - sphinx-markdown-tables - sysroot_linux-64==2.17 +- pip: + - nvidia-sphinx-theme name: all_cuda-125_arch-x86_64 diff --git a/dependencies.yaml b/dependencies.yaml index 2c9b5e4e3..cee4e3cc6 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -399,17 +399,18 @@ dependencies: - graphviz - ipython - numpydoc - - nvidia-sphinx-theme - recommonmark - sphinx-copybutton - sphinx-markdown-tables + - pip: + - nvidia-sphinx-theme rust: common: - output_types: [conda] packages: - make - rust - # clang/liblclang only needed for bindgen support + # clang/libclang only needed for bindgen support - clang - libclang build_wheels: From 336de13c90c6a3b045fb014be96d4ef719186739 Mon Sep 17 00:00:00 2001 From: Ben Frederickson Date: Thu, 12 Dec 2024 11:25:08 -0800 Subject: [PATCH 3/5] bump sphinx version nvidia-sphinx-theme calls `sphinx.util.fileutil.copy_asset_file` with a Path - but sphinx v7.* expects a `str` , which causes the build to fail. Require sphinx v8 here to make this work --- conda/environments/all_cuda-118_arch-aarch64.yaml | 1 + conda/environments/all_cuda-118_arch-x86_64.yaml | 1 + conda/environments/all_cuda-125_arch-aarch64.yaml | 1 + conda/environments/all_cuda-125_arch-x86_64.yaml | 1 + dependencies.yaml | 1 + 5 files changed, 5 insertions(+) diff --git a/conda/environments/all_cuda-118_arch-aarch64.yaml b/conda/environments/all_cuda-118_arch-aarch64.yaml index b7e74ae3a..413ccd0be 100644 --- a/conda/environments/all_cuda-118_arch-aarch64.yaml +++ b/conda/environments/all_cuda-118_arch-aarch64.yaml @@ -54,6 +54,7 @@ dependencies: - scikit-learn - sphinx-copybutton - sphinx-markdown-tables +- sphinx>=8.0.0 - sysroot_linux-aarch64==2.17 - pip: - nvidia-sphinx-theme diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 549e6f8a5..adaa6bdc6 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -54,6 +54,7 @@ dependencies: - scikit-learn - sphinx-copybutton - sphinx-markdown-tables +- sphinx>=8.0.0 - sysroot_linux-64==2.17 - pip: - nvidia-sphinx-theme diff --git a/conda/environments/all_cuda-125_arch-aarch64.yaml b/conda/environments/all_cuda-125_arch-aarch64.yaml index 5b7d07261..cf44dca8b 100644 --- a/conda/environments/all_cuda-125_arch-aarch64.yaml +++ b/conda/environments/all_cuda-125_arch-aarch64.yaml @@ -50,6 +50,7 @@ dependencies: - scikit-learn - sphinx-copybutton - sphinx-markdown-tables +- sphinx>=8.0.0 - sysroot_linux-aarch64==2.17 - pip: - nvidia-sphinx-theme diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 91bed646c..50200a29e 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -50,6 +50,7 @@ dependencies: - scikit-learn - sphinx-copybutton - sphinx-markdown-tables +- sphinx>=8.0.0 - sysroot_linux-64==2.17 - pip: - nvidia-sphinx-theme diff --git a/dependencies.yaml b/dependencies.yaml index cee4e3cc6..ca08f0075 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -400,6 +400,7 @@ dependencies: - ipython - numpydoc - recommonmark + - sphinx>=8.0.0 - sphinx-copybutton - sphinx-markdown-tables - pip: From 50111cbd7f11a4542e24f64b0e1115dba7470c6e Mon Sep 17 00:00:00 2001 From: Ben Frederickson Date: Thu, 12 Dec 2024 12:47:53 -0800 Subject: [PATCH 4/5] Bump breathe depedency version to support sphinx v8 the docs build in CI is using an older version of breathe (v4.15.0) - which is from 2020 and doesn't support sphinx v8 (https://github.com/sphinx-doc/sphinx/issues/11490). Fix by requiring the latest version --- conda/environments/all_cuda-118_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-118_arch-x86_64.yaml | 2 +- conda/environments/all_cuda-125_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-125_arch-x86_64.yaml | 2 +- dependencies.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-aarch64.yaml b/conda/environments/all_cuda-118_arch-aarch64.yaml index 413ccd0be..01853da84 100644 --- a/conda/environments/all_cuda-118_arch-aarch64.yaml +++ b/conda/environments/all_cuda-118_arch-aarch64.yaml @@ -7,7 +7,7 @@ channels: - conda-forge - nvidia dependencies: -- breathe +- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index adaa6bdc6..a1ad68d7f 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -7,7 +7,7 @@ channels: - conda-forge - nvidia dependencies: -- breathe +- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 diff --git a/conda/environments/all_cuda-125_arch-aarch64.yaml b/conda/environments/all_cuda-125_arch-aarch64.yaml index cf44dca8b..ee0213fff 100644 --- a/conda/environments/all_cuda-125_arch-aarch64.yaml +++ b/conda/environments/all_cuda-125_arch-aarch64.yaml @@ -7,7 +7,7 @@ channels: - conda-forge - nvidia dependencies: -- breathe +- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 50200a29e..d93dcaf7a 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -7,7 +7,7 @@ channels: - conda-forge - nvidia dependencies: -- breathe +- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 diff --git a/dependencies.yaml b/dependencies.yaml index ca08f0075..a11e59e31 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -394,7 +394,7 @@ dependencies: common: - output_types: [conda] packages: - - breathe + - breathe>=4.35.0 - doxygen>=1.8.20 - graphviz - ipython From 822d77804f5378acf559747e961f8178eafd9f3a Mon Sep 17 00:00:00 2001 From: Ben Frederickson Date: Mon, 16 Dec 2024 10:00:46 -0800 Subject: [PATCH 5/5] hack around breathe dependency issue Breathe doesn't fully support sphinx v8 - it raises some warnings in sphinx since its passing a `str` to Sphinx functions that expect a `Path`. This still works for now (will be fully removed in sphinx v9), but is deprecated - which is why breathe indicates it only support sphinx<=v7.2 in conda. However, nvidia-sphinx-theme only works with sphinx v8 afaict, since it is passing a Path to `sphinx.util.fileutil.copy_asset_file` - which breaks on sphinx v7 since it's expecting a `str`. Hack around this dependency issue by installing breathe from pip, which isn't as strict about supported sphinx versions. --- conda/environments/all_cuda-118_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-118_arch-x86_64.yaml | 2 +- conda/environments/all_cuda-125_arch-aarch64.yaml | 2 +- conda/environments/all_cuda-125_arch-x86_64.yaml | 2 +- dependencies.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-aarch64.yaml b/conda/environments/all_cuda-118_arch-aarch64.yaml index 01853da84..a6d98ea3b 100644 --- a/conda/environments/all_cuda-118_arch-aarch64.yaml +++ b/conda/environments/all_cuda-118_arch-aarch64.yaml @@ -7,7 +7,6 @@ channels: - conda-forge - nvidia dependencies: -- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 @@ -57,5 +56,6 @@ dependencies: - sphinx>=8.0.0 - sysroot_linux-aarch64==2.17 - pip: + - breathe>=4.35.0 - nvidia-sphinx-theme name: all_cuda-118_arch-aarch64 diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index a1ad68d7f..1063e4d6c 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -7,7 +7,6 @@ channels: - conda-forge - nvidia dependencies: -- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 @@ -57,5 +56,6 @@ dependencies: - sphinx>=8.0.0 - sysroot_linux-64==2.17 - pip: + - breathe>=4.35.0 - nvidia-sphinx-theme name: all_cuda-118_arch-x86_64 diff --git a/conda/environments/all_cuda-125_arch-aarch64.yaml b/conda/environments/all_cuda-125_arch-aarch64.yaml index ee0213fff..ee7b37695 100644 --- a/conda/environments/all_cuda-125_arch-aarch64.yaml +++ b/conda/environments/all_cuda-125_arch-aarch64.yaml @@ -7,7 +7,6 @@ channels: - conda-forge - nvidia dependencies: -- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 @@ -53,5 +52,6 @@ dependencies: - sphinx>=8.0.0 - sysroot_linux-aarch64==2.17 - pip: + - breathe>=4.35.0 - nvidia-sphinx-theme name: all_cuda-125_arch-aarch64 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index d93dcaf7a..7c8e1fd99 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -7,7 +7,6 @@ channels: - conda-forge - nvidia dependencies: -- breathe>=4.35.0 - c-compiler - clang - clang-tools=16.0.6 @@ -53,5 +52,6 @@ dependencies: - sphinx>=8.0.0 - sysroot_linux-64==2.17 - pip: + - breathe>=4.35.0 - nvidia-sphinx-theme name: all_cuda-125_arch-x86_64 diff --git a/dependencies.yaml b/dependencies.yaml index a11e59e31..a73fe7b8f 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -394,7 +394,6 @@ dependencies: common: - output_types: [conda] packages: - - breathe>=4.35.0 - doxygen>=1.8.20 - graphviz - ipython @@ -405,6 +404,7 @@ dependencies: - sphinx-markdown-tables - pip: - nvidia-sphinx-theme + - breathe>=4.35.0 rust: common: - output_types: [conda]