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

Update api-go to allow invalid UTF-8 in proto strings #1407

Merged
merged 8 commits into from
Mar 1, 2024

Conversation

tdeebswihart
Copy link
Contributor

@tdeebswihart tdeebswihart commented Mar 1, 2024

What was changed

I've upgraded the version of our Go API in order to allow invalid UTF-8 data in our proto strings.

Note that the tests for this behavior are in a separate pr (#1408) as they require unreleased changes to the server.

Why?

The version of gogo/protobuf we used allowed invalid UTF-8 in strings which is a violation of the proto3 spec. We were unaware of this until our new google/protobuf based structs began failing to deserialize data we'd used previously

Checklist

  • Add tests
  • Release api-go and use that here instead of the commit sha

The version of gogo/protobuf we used allowed invalid UTF-8 in strings
which is a violation of the proto3 spec. We were unaware of this until
our new google/protobuf based structs began failing to deserialize data
we'd used previously
@tdeebswihart tdeebswihart force-pushed the tds/proto-invalid-utf8 branch 2 times, most recently from 8dad3f9 to cd94ad4 Compare March 1, 2024 20:18
@tdeebswihart tdeebswihart marked this pull request as ready for review March 1, 2024 20:59
@tdeebswihart tdeebswihart requested a review from a team as a code owner March 1, 2024 20:59
internal/cmd/build/main.go Show resolved Hide resolved
test/integration_test.go Outdated Show resolved Hide resolved
test/integration_test.go Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
Copy link
Contributor

@Quinn-With-Two-Ns Quinn-With-Two-Ns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving for the RC, would like tests merged before I release this change as part of an official release

…1408)

## What was changed

This PR adds an integration test to validate that we allow invalid UTF-8 data in strings.

## Testing

You will need to run the server locally as of temporalio/temporal#5476, then execute the integration tests.

This test has been manually verified as passing on SDK version 1.25.0 and server version 1.22.5, so we should remain compatible with our pre-google/protobuf behavior
@tdeebswihart tdeebswihart enabled auto-merge (squash) March 1, 2024 22:11
@tdeebswihart tdeebswihart merged commit efabf46 into master Mar 1, 2024
12 checks passed
@tdeebswihart tdeebswihart deleted the tds/proto-invalid-utf8 branch March 1, 2024 22:35
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.

4 participants