[9.3.0] Reland Communicate persistent worker protocol to remote execution service - #30641
Open
armandomontanez wants to merge 1 commit into
Open
Conversation
…tion service This reland combines bazelbuild#28489 and bazelbuild#29299 to reland the `persistentWorkerProtocol` platform property to make it possible to execute remote persistent worker actions that specify a non-default persistent worker protocol (e.g. JSON). Original descriptions: This gives remote execution services the information required to correctly handle remote persistent workers that do not use the default protocol. Closes bazelbuild#28405. RELNOTES: The requires-worker-protocol execution requirement is now forwarded to remote execution services as a platform property (persistentWorkerProtocol) to support intermixing JSON and Proto remote persistent worker protocols across a build. The persistentWorkerProtocol platform property was unconditionally added to any action with requires-worker-protocol in its execution requirements, even when the action was not a remote persistent worker request. This could cause unexpected platform properties when sent as a non-persistent remote action. Gate the persistentWorkerProtocol property behind --experimental_remote_mark_tool_inputs so it's only set when it is needed. Work towards bazelbuild#29267.
armandomontanez
marked this pull request as ready for review
August 7, 2026 20:52
|
✅ Bazel docs preview is ready! Preview URL: https://bazel-pr-30641.mintlify.app/
|
Collaborator
|
As much as I would like to see this released in Bazel, isn't it still an incompatible change since unknown platform properties are, by the spec, expected to fail the build? That's fine for Bazel 10, but not necessarily for a cherry-pick. |
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 reland combines #28489 and #29299 to reland the
persistentWorkerProtocolplatform property to make it possible to execute remote persistent worker actions that specify a non-default persistent worker protocol (e.g. JSON).Original descriptions:
Communicate persistent worker protocol to remote execution service
This gives remote execution services the information required to correctly handle remote persistent workers that do not use the default protocol.
Closes #28405.
RELNOTES: The
requires-worker-protocolexecution requirement is now forwarded to remote execution services as a platform property (persistentWorkerProtocol) to support intermixing JSON and Proto remote persistent worker protocols across a build.Only set persistentWorkerProtocol for persistent actions
The persistentWorkerProtocol platform property was unconditionally added to any action with requires-worker-protocol in its execution requirements, even when the action was not a remote persistent worker request. This could cause unexpected platform properties when sent as a non-persistent remote action.
Gate the
persistentWorkerProtocolproperty behind--experimental_remote_mark_tool_inputsso it's only set when it is needed.Work towards #29267.