Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

digest function capability check does not consider all available ExecutionCapabilities.DigestFunctions #605

Open
werkt opened this issue Nov 27, 2024 · 1 comment

Comments

@werkt
Copy link

werkt commented Nov 27, 2024

remote-apis-sdks' capabilities verification test only observes the ExecutionCapabilities.DigestFunction response to capabilities for compatibility, which reclient relies upon.

This prevents servers which indicate multiple DigestFunctions in the same record from using reclient (and other remote-api-sdks consumers) with any of the available DigestFunctions.

https://github.com/bazelbuild/remote-apis-sdks/blob/master/go/pkg/digest/digest.go#L182

This should be testing for the specified digest function presence in DigestFunctions, and using it, likely ignoring the legacy digest_function field. See the comments around these fields and their evolution here: https://github.com/bazelbuild/remote-apis/blob/main/build/bazel/remote/execution/v2/remote_execution.proto#L2062-L2091

@mrahs
Copy link
Collaborator

mrahs commented Nov 27, 2024

Thank you for surfacing this limitation. It looks like the remote execution API has been updated after the implementation in this SDK. I'd be happy to review a PR to support the newer API.

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

No branches or pull requests

2 participants