Skip to content

Keep inherited Xcode overrides out of default host identity - #2

Merged
jeffwall-curlewlabs merged 2 commits into
mainfrom
fix/default-developer-selection
Oct 13, 2026
Merged

jeffwall-curlewlabs merged 2 commits into
mainfrom
fix/default-developer-selection

Conversation

@jeffwall-curlewlabs

Copy link
Copy Markdown
Contributor

An inherited DEVELOPER_DIR can make the host cache key describe an acquired,
job-local Xcode path even though strict action environments use the global
host selection. That fragments results and the inherited override is not a
repository dependency.

Default discovery now explicitly uses the global selection. The optional
developer_dir attribute lets builds match an explicitly selected
host-dependent action environment. Directory and tool identity remain in the
key, and changing the attribute reevaluates the repository.

Verified with the existing real Bazel platform check on macOS: inherited
selection changes reuse results in running and fresh servers; selecting a
different installed Xcode executes under a different tool identity; restoring
the global selection reuses its disk-cache result. Watched tool and Homebrew
bottle changes still execute. Unit tests, pinned Ruff, strict mypy and
buildifier passed.

Strict action environments use the global developer selection. Make discovery explicit and offer a tracked rule attribute for actions selecting another host developer directory, retaining its path and tool identity.

The real Bazel platform check covers inherited overrides in running and fresh servers and explicitly selecting another installed Xcode. Unit tests, pinned Ruff, strict mypy and buildifier passed.
Omit the optional developer attribute when using its default so the real platform check can also run against the previous rule. That run executes instead of hitting the disk cache with an inherited override; the fixed rule passes the same check.
@jeffwall-curlewlabs
jeffwall-curlewlabs merged commit 3de1385 into main Oct 13, 2026
9 checks passed
@jeffwall-curlewlabs
jeffwall-curlewlabs deleted the fix/default-developer-selection branch October 13, 2026 01:42
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.

1 participant