Skip to content

Navigation Menu

Sign in
Sign up

make 'numpydoc' dependency conda-only - #8556

Open
jameslamb wants to merge 1 commit into
NVIDIA:main from
jameslamb:numpydoc-tests
Open

make 'numpydoc' dependency conda-only #8556
jameslamb wants to merge 1 commit into
NVIDIA:main from
jameslamb:numpydoc-tests

Conversation

@jameslamb

@jameslamb jameslamb commented Sep 3, 2026

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 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.

Copy link
Copy Markdown
Member Author

/ok to test

copy-pr-bot[bot] reacted with thumbs up emoji

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 marked this pull request as ready for review September 4, 2026 01:35
jameslamb requested review from a team as code owners September 4, 2026 01:35

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

i️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 231a86c2-7437-4bfb-9474-a5b1bbd46408

📥 Commits

Reviewing files that changed from the base of the PR and between 7035f8e and 482243a.

📒 Files selected for processing (3)
  • dependencies.yaml
  • python/cuml/pyproject.toml
  • python/cuml/tests/test_base.py
💤 Files with no reviewable changes (1)
  • python/cuml/pyproject.toml

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 optional tooling is limited to Conda documentation and testing environments, with a compatible version constraint.
    • Removed the documentation tooling from cuML’s general test extras, reducing unnecessary installation requirements.

Walkthrough

The changes scope numpydoc to Conda-specific dependencies, remove it from cuML’s shared test extras, and skip the docstring parsing test when the package is unavailable.

Changes

Numpydoc dependency scoping

Layer / File(s) Summary
Conda-only dependency declarations
dependencies.yaml, python/cuml/pyproject.toml
Shared documentation and test dependencies no longer include numpydoc. Conda-specific blocks include numpydoc<1.9.
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.

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

Merge Risk: ⚪ Minimal · up to 48224

This change removes numpydoc from shared pip-based test and documentation dependencies while preserving docstring validation in Conda environments. Wheel-based environments avoid the dependency without affecting runtime behavior.

Suggested reviewers: csadorf, jcrist

🚥 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 directly explains the dependency reduction, the conda-only test strategy, and the expected benefits for wheel and pip-based environments.
Linked Issues check ✅ Passed The changes satisfy issue #7710 by moving numpydoc to conda-specific dependencies and skipping the estimator docstring test when numpydoc is unavailable.
Out of Scope Changes check ✅ Passed All changes are limited to dependency declarations and the numpydoc-dependent test. No unrelated 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 ...
Full details: Docstring Coverage

Explanation

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 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@bdice bdice Awaiting requested review from bdice bdice is a code owner automatically assigned from NVIDIA/adi-packaging-codeowners

At least 1 approving review is required to merge this pull request.

Labels

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

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

[QST] make numpydoc tests conda-only?

AltStyle によって変換されたページ (->オリジナル) /