Skip to content

docs(bindings): add pixi docs environment#1782

Open
cpcloud wants to merge 1 commit intoNVIDIA:mainfrom
cpcloud:bindings-pixi-docs-env
Open

docs(bindings): add pixi docs environment#1782
cpcloud wants to merge 1 commit intoNVIDIA:mainfrom
cpcloud:bindings-pixi-docs-env

Conversation

@cpcloud
Copy link
Contributor

@cpcloud cpcloud commented Mar 17, 2026

Summary

  • add a docs feature and docs environment to cuda_bindings/pixi.toml, mirroring the bindings docs dependencies used in CI
  • add a Linux build-docs task so the bindings docs can be built locally through pixi
  • update cuda_bindings/pixi.lock with the packages required by the new docs environment

Test plan

  • pixi run --manifest-path cuda_bindings -e docs python -c "import sphinx, myst_nb, sphinx_copybutton, nvidia_sphinx_theme"
  • pixi run --manifest-path cuda_bindings -e docs build-docs

Made with Cursor

Mirror the bindings docs dependencies used in CI so the docs can be built locally through pixi without a separate docs setup.

Made-with: Cursor
@github-actions
Copy link

@cpcloud cpcloud requested a review from rparolin March 18, 2026 12:32
Copy link
Contributor

@mdboom mdboom left a comment

Choose a reason for hiding this comment

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

Some minor cleanup suggestions that could be deferred.

numpy = "*"

[feature.docs.dependencies]
# Keep this list aligned with cuda_python/docs/environment-docs.yml.
Copy link
Contributor

Choose a reason for hiding this comment

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

There is another list in toolshed/setup-docs-env.sh. I think we should try to reduce these. Probably toolshed/setup-docs-env.sh should go. (And the reference to it removed from cuda_python/docs/environment-docs.yml -- replace it with a reference to this pixi.toml file).

Copy link
Collaborator

@rwgk rwgk Mar 18, 2026

Choose a reason for hiding this comment

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

Probably toolshed/setup-docs-env.sh should go.

SGTM. It was useful to me at the time, when there was nothing else.

numpy = "*"
numpydoc = "*"
pip = "*"
pydata-sphinx-theme = "*"
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe this is a follow-on to this PR to reduce unnecessary direct dependencies here.

  1. It seems weird to install two themes. The one we use directly is nvidia-sphinx-theme. Sometimes one theme depends on another, but we should let dependency resolution handle that, if so.

  2. Why an explicit dependency on pip?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

  1. Agreed.
  2. Not sure, the agent put that in there. I'll poke around and see if it's necessary.

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.

3 participants