Skip to content

Rust: Prefer richer feature configurations when extracting dependencies - #22847

Draft
paldepind wants to merge 6 commits into
mainfrom
rust/inconsistent-feature
Draft

paldepind wants to merge 6 commits into
mainfrom
rust/inconsistent-feature

Conversation

@paldepind

@paldepind paldepind commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Summary

When multiple workspaces load the same dependency source file with different feature configurations, defer dependency extraction until all workspaces have been considered and select a preferred context per file.

Prefer configurations enabling more Cargo features, with deterministic configuration and workspace-path tie-breaking. Reload only selected workspaces, and count unique manifests in extraction diagnostics while retaining reload durations.

Includes preparatory workspace-grouping refactors, separate implementation and test commits, and a CI-fix commit regenerating extraction-step expectations for manifest reloads.

Validation

  • Extractor formatting, Clippy, and unit tests pass.
  • Dependency-feature integration tests with the freshly built extractor: 12 passed, including all QL checks.
  • Existing integration cases covering the five regenerated extraction-step expectations: 33 passed without learning.

paldepind and others added 5 commits October 20, 2026 10:39
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3def7ce6-eea3-4d78-963d-f3675492bb16
Defer dependency extraction until all workspaces have been considered, prefer configurations enabling more Cargo features, and use deterministic tie-breaking. Count unique manifests when reporting reload diagnostics.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3def7ce6-eea3-4d78-963d-f3675492bb16
Cover richer dependency features and equal-feature tie-breaking with reversed workspace configurations, and verify unique-manifest diagnostics.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3def7ce6-eea3-4d78-963d-f3675492bb16
@github-actions github-actions Bot added the Rust Pull requests that update Rust code label Oct 20, 2026
Regenerate existing integration-test expectations to account for manifest reloads in the deferred dependency extraction pass.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3def7ce6-eea3-4d78-963d-f3675492bb16

This branch has not been deployed

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

Labels

Rust Pull requests that update Rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant