Skip to content

[build] fix: pre-install grpcio-tools before nvidia-resiliency-ext 0.6.0 build#3085

Merged
ko3n1g merged 2 commits intomainfrom
ko3n1g/fix/grpcio-tools-build-dep
Apr 1, 2026
Merged

[build] fix: pre-install grpcio-tools before nvidia-resiliency-ext 0.6.0 build#3085
ko3n1g merged 2 commits intomainfrom
ko3n1g/fix/grpcio-tools-build-dep

Conversation

@ko3n1g
Copy link
Copy Markdown
Contributor

@ko3n1g ko3n1g commented Apr 1, 2026

Summary

The automated uv.lock bump in #3081 upgraded nvidia-resiliency-ext from v0.5.0 to 0.6.0. The new version compiles proto files at build time via `grpc_tools.protoc`, but `grpcio-tools` is only declared as a runtime dependency — not in `build-system.requires`. The CI pre-install step doesn't know to install it first, causing:

```
ModuleNotFoundError: No module named 'grpc_tools'
```

Fix: pass `grpcio-tools` via the new `extra-no-build-isolation-packages` input added in NVIDIA-NeMo/FW-CI-templates#440. This pre-installs it before `uv pip install --no-build-isolation -e .` runs, so the build script can find `grpc_tools.protoc`.

Test plan

  • CI build-test-publish-wheel / build-wheel passes

🤖 Generated with Claude Code

@ko3n1g ko3n1g requested a review from a team as a code owner April 1, 2026 11:52
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot bot commented Apr 1, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@ko3n1g
Copy link
Copy Markdown
Contributor Author

ko3n1g commented Apr 1, 2026

/ok to test 116df34

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 1, 2026

📝 Walkthrough

Walkthrough

The pull request updates a commit reference across two files and extends the build configuration. A commit hash is updated in two locations, and pyproject.toml adds nvidia-resiliency-ext to the build configuration list to disable build isolation for this package due to its proto file compilation requirements.

Changes

Cohort / File(s) Summary
Commit References
.main.commit, 3rdparty/Megatron-LM
Updated commit pointer from 3758b54b2bd9d00f0adbe8bf343a0e6bbcd75d1d to 97e36aaba37245e2fa23d4fda0e956ece21e6c9e in both files, including submodule reference update.
Build Configuration
pyproject.toml
Added nvidia-resiliency-ext to [tool.uv] no-build-isolation-package list with explanatory comments regarding proto file compilation via grpc_tools.protoc.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Test Results For Major Changes ✅ Passed PR contains only minor build configuration changes (6 lines total) with no code logic modifications, new features, or breaking changes. Testing verified through CI build-wheel step.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding grpcio-tools pre-installation by disabling build isolation for nvidia-resiliency-ext 0.6.0, which is the core fix in the PR.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ko3n1g/fix/grpcio-tools-build-dep

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

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.main.commit:
- Line 1: The PR mentions adding "nvidia-resiliency-ext" to [tool.uv]
no-build-isolation-package in pyproject.toml but the diff only updates the
commit hash in .main.commit; verify and either add the actual pyproject.toml
change or clarify the relation: update pyproject.toml to include
"nvidia-resiliency-ext" under [tool.uv] no-build-isolation-package (or confirm
the change exists on the commit referenced by .main.commit) and update the PR
description to state whether the .main.commit hash points to the commit that
contains that pyproject.toml modification (reference files: pyproject.toml and
.main.commit).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: e016e7e9-9932-4c6a-ba10-df9ff0172b3e

📥 Commits

Reviewing files that changed from the base of the PR and between 446baa0 and 116df34.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (3)
  • .main.commit
  • 3rdparty/Megatron-LM
  • pyproject.toml

.main.commit Outdated
@@ -1 +1 @@
3758b54b2bd9d00f0adbe8bf343a0e6bbcd75d1d
97e36aaba37245e2fa23d4fda0e956ece21e6c9e
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Inconsistency: PR description mentions pyproject.toml changes, but only commit hash update is provided for review.

The PR objectives state that the fix involves adding "nvidia-resiliency-ext" to [tool.uv] no-build-isolation-package in pyproject.toml to disable build isolation. However, only .main.commit (a commit hash reference) is provided for review.

Please verify:

  1. Are the pyproject.toml changes included in this PR?
  2. Is the commit hash update in .main.commit related to the build isolation fix, or is it tracking an unrelated upstream dependency update?

Without reviewing the actual pyproject.toml modifications, I cannot confirm that the core fix described in the PR objectives has been implemented.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.main.commit at line 1, The PR mentions adding "nvidia-resiliency-ext" to
[tool.uv] no-build-isolation-package in pyproject.toml but the diff only updates
the commit hash in .main.commit; verify and either add the actual pyproject.toml
change or clarify the relation: update pyproject.toml to include
"nvidia-resiliency-ext" under [tool.uv] no-build-isolation-package (or confirm
the change exists on the commit referenced by .main.commit) and update the PR
description to state whether the .main.commit hash points to the commit that
contains that pyproject.toml modification (reference files: pyproject.toml and
.main.commit).

@ko3n1g
Copy link
Copy Markdown
Contributor Author

ko3n1g commented Apr 1, 2026

/ok to test c5e847c

@ko3n1g ko3n1g force-pushed the ko3n1g/fix/grpcio-tools-build-dep branch 2 times, most recently from 9a157b9 to d2d7013 Compare April 1, 2026 12:50
@ko3n1g ko3n1g changed the title [build] fix: disable build isolation for nvidia-resiliency-ext 0.6.0 [build] fix: pre-install grpcio-tools before nvidia-resiliency-ext 0.6.0 build Apr 1, 2026
@ko3n1g ko3n1g added the r0.4.0 Auto-cherrypick to release branch. Apply before merge; cherrypick happens after merge. label Apr 1, 2026
nvidia-resiliency-ext 0.6.0 compiles proto files at build time via
grpc_tools.protoc, but grpcio-tools is only a runtime dep and is not
pre-installed by the --no-build-isolation setup. Adding it via the new
extra-no-build-isolation-packages template input ensures it is available
before the build runs.

Bumps FW-CI-templates to 5e47529 (NVIDIA-NeMo/FW-CI-templates#440).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: oliver könig <okoenig@nvidia.com>
@ko3n1g ko3n1g force-pushed the ko3n1g/fix/grpcio-tools-build-dep branch from d2d7013 to 1ca65f0 Compare April 1, 2026 12:52
Signed-off-by: oliver könig <okoenig@nvidia.com>
@ko3n1g ko3n1g merged commit 1a7a35d into main Apr 1, 2026
48 checks passed
@ko3n1g ko3n1g deleted the ko3n1g/fix/grpcio-tools-build-dep branch April 1, 2026 15:36
svcnvidia-nemo-ci pushed a commit that referenced this pull request Apr 1, 2026
…6.0 build (#3085)

Signed-off-by: oliver könig <okoenig@nvidia.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: NeMo Bot <nemo-bot@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

r0.4.0 Auto-cherrypick to release branch. Apply before merge; cherrypick happens after merge.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants