Skip to content

fix: propagate dependency generation failures#736

Draft
bdice wants to merge 1 commit into
rapidsai:mainfrom
bdice:agent/propagate-dfg-errors
Draft

fix: propagate dependency generation failures#736
bdice wants to merge 1 commit into
rapidsai:mainfrom
bdice:agent/propagate-dfg-errors

Conversation

@bdice

@bdice bdice commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • stage each dependency-file-generator result and wait for every background job
  • preserve generator stderr and return nonzero without emitting combined output when any job fails
  • skip conventional dependency keys that are absent from a repository config while deduplicating repeated keys
  • cover the behavior for both pip requirements and conda environments
  • bump rapids-build-utils to 26.8.8

Context

In rapidsai/kvikio#996, rapids-dependency-file-generator wrote a partial requirements list before rejecting an invalid pip map. The devcontainers wrapper discarded stderr and collected successful process-substitution output, so the generator failure was hidden and the incomplete requirements file was installed. The later build then surfaced the unrelated-looking missing-Cython error.

This change makes the wrapper fail at the dependency-generation boundary and keeps partial child output out of its stdout. The companion generator-side change is rapidsai/dependency-file-generator#188.

Testing

  • devcontainer features test --project-folder ./features --features rapids-build-utils --base-image ubuntu:22.04
  • bash -n on both modified dependency scripts and the feature test
  • git diff --check

@trxcllnt

trxcllnt commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

IIRC we don't return the error exit code because we don't want to fail when generating for additional file keys that some projects have and others don't. We do this in the DLFW builds when we pass --key py_build --key py_test_cudf etc.

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.

2 participants