fix(uv): resolve extra-only markers during graph activation and treat them as venv-resolved in selects#1275
Merged
Merged
Conversation
✨ Aspect Workflows Tasks📅 Wed Jul 8 04:21:10 UTC 2026 ✅ 7 successful tasks
⏱ Last updated Wed Jul 8 05:00:10 UTC 2026 · 📊 GitHub API quota 1,425/15,000 (10% used, resets in 52m, throttle 3×) |
xangcastle
marked this pull request as ready for review
July 8, 2026 03:32
Member
|
Same for |
jbedard
reviewed
Jul 8, 2026
jbedard
approved these changes
Jul 8, 2026
Member
Author
|
yes, same for main #1279 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fix handles PEP 508 markers that reference the extra variable by recognizing they are not Bazel execution-environment conditions: during dependency-graph activation, real extra markers such as
extra == 'build'are partially evaluated against the active extra so they collapse to unconditional or platform-only expressions, while any marker that depends solely on extra—including uv's internal conflict-routing markers—is treated as already resolved by the active dependency-group/venv and rendered as a //conditions:default arm in the generated aliases instead of an un-evaluable decide_marker select, preventing analysis failures when the venv name does not match the extra.Changes are visible to end-users: yes/no
Test plan