Skip to content

make 'numpydoc' dependency conda-only - #8556

Merged
rapids-bot[bot] merged 4 commits into
NVIDIA:release/26.10from
jameslamb:numpydoc-tests
Sep 9, 2026
Merged

rapids-bot[bot] merged 4 commits into
NVIDIA:release/26.10from
jameslamb:numpydoc-tests

Conversation

@jameslamb

Copy link
Copy Markdown
Member

Closes #7710

As that issue describes, numpydoc is a fairly heavy dependency (it pulls in a lot of other packages). This proposes making the tests that depend on it conda-only, so wheel-based CI jobs don't end up installing it.

Should help a bit with wheel-testing CI time here, but my main motivation is for other builds for RAPIDS like the devcontainers and DLFW builds, which are pip-based.

@jameslamb jameslamb added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Sep 3, 2026
@copy-pr-bot

copy-pr-bot Bot commented Sep 3, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the Cython / Python Cython or Python issue label Sep 3, 2026
@jameslamb

Copy link
Copy Markdown
Member Author

/ok to test

@jameslamb

Copy link
Copy Markdown
Member Author

I think this is working and ready for review.

In the wheel tests, I do not see numpydoc getting installed. In the conda tests, I do.

cuML's tests scripts don't print a summary of pytest skips or individual test names so I'm not 100% sure, but pretty confident.

The only failing job here is docs-build, and that looks unrelated:

WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://docs.nvidia.com/rmm/26.10/objects.inv' not fetchable due to <class 'requests.exceptions.HTTPError'>: 404 Client Error: Not Found for url: https://docs.nvidia.com/rmm/26.10/objects.inv
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://docs.nvidia.com/cudf/26.10/objects.inv' not fetchable due to <class 'requests.exceptions.HTTPError'>: 404 Client Error: Not Found for url: https://docs.nvidia.com/cudf/26.10/objects.inv
...
build finished with problems, 2 warnings (with warnings treated as errors).

(build link)

@jameslamb jameslamb changed the title WIP: make 'numpydoc' dependency conda-only make 'numpydoc' dependency conda-only Sep 4, 2026
@jameslamb
jameslamb marked this pull request as ready for review September 4, 2026 01:35
@jameslamb
jameslamb requested review from a team as code owners September 4, 2026 01:35
@jameslamb
jameslamb requested a review from bdice September 4, 2026 01:35
@coderabbitai

coderabbitai Bot commented Sep 4, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e8a68536-afcb-44ab-874f-3fceeb6e1c2c

📥 Commits

Reviewing files that changed from the base of the PR and between 9e5ab69 and a9d1acd.

📒 Files selected for processing (1)
  • dependencies.yaml

Included review availability: Your plan provides up to 12 included reviews per hour; 11 remain after this review.


📝 Summary

Summary by CodeRabbit

  • Bug Fixes

    • Improved test behavior when optional documentation tooling is unavailable; affected checks now skip cleanly instead of failing during collection.
  • Chores

    • Refined documentation-related dependency handling so the tooling is provided in applicable Conda documentation and testing environments with a compatible version constraint.
    • Removed the documentation tooling from cuML’s general test extras.

Walkthrough

The changes scope numpydoc to Conda documentation and test environments. They remove it from cuML test extras and make the docstring test skip when numpydoc is unavailable.

Changes

numpydoc dependency and docstring test updates

Layer / File(s) Summary
Conda-only numpydoc dependencies
dependencies.yaml, python/cuml/pyproject.toml
Shared dependency declarations no longer include numpydoc. Conda documentation and Python test dependencies include the required numpydoc entries.
Optional docstring parsing
python/cuml/tests/test_base.py
The test skips when numpydoc.docscrape is unavailable and uses the guarded module reference for base and derived docstring parsing.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to a9d1a

This change removes numpydoc from pip-based dependency paths while preserving it for Conda documentation and test environments; docstring validation now skips where the optional package is absent. No concrete current-head merge-blocking risk remains.

Suggested reviewers: csadorf, bdice

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the primary change: making the numpydoc dependency Conda-only.
Description check ✅ Passed The description explains the dependency reduction, the affected tests, and the expected impact on wheel-based and pip-based builds.
Linked Issues check ✅ Passed The changes satisfy issue #7710 by moving numpydoc to Conda-only dependency blocks, removing it from the wheel-oriented test extras, and skipping the affected test when numpydoc is unavailable.
Out of Scope Changes check ✅ Passed All changes are directly related to limiting numpydoc installation and handling its absence in tests. No unrelated code changes are present.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. (1 skipped: 1 …
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@jameslamb
jameslamb changed the base branch from main to release/26.10 September 9, 2026 01:46
@jameslamb

Copy link
Copy Markdown
Member Author

I've re-targeted this at 26.10. I would really like to get it in if possible (will allow us to drop a patch in DLFW builds).

@csadorf

csadorf commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

@jameslamb This still needs a adi-packaging-codeowners review.

Comment thread dependencies.yaml Outdated
@jameslamb

Copy link
Copy Markdown
Member Author

/merge

@rapids-bot
rapids-bot Bot merged commit d784d89 into NVIDIA:release/26.10 Sep 9, 2026
108 checks passed
@jameslamb
jameslamb deleted the numpydoc-tests branch September 9, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Cython / Python Cython or Python issue improvement Improvement / enhancement to an existing function non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[QST] make numpydoc tests conda-only?

4 participants