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

Upgrade protobuf dependency to 1.36.1, remove retool #402

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

lstoll
Copy link

@lstoll lstoll commented Dec 25, 2024

I want to add support for protobuf editions, which requires a newer version of the protobuf module than is currently here. This updates it to the latest released version. Because it makes for a noisy diff, doing the dependency update PR by itself.

I had problems with retool when trying to update protoc-gen-go to match the vendored protobuf version. Current Go no longer supports go get in GOPATH mode. I tried with older builds of Go, but for some reason the tool update wants to fetch a newer errcheck which doesn't build on older Go. Because retool appears to be dead anyway (has been archived for ~2.5 years), I removed it and replaced it with module-enabled go install commands in the Makefile for errcheck and protoc-gen-go. This gives us the same experience as with retool, and doesn't require twirp to become a module.

Protoc has changed it's versioning scheme and moved beyond v3, so the check script was updated to handle version 3 or greater.

Generated protobuf code was re-generated with the current generator.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Want to enable twirp working with the new Protobuf editions/Opaque API[1].
First step to this is updating to the latest go protobuf lib. We need to keep
the non-Go files with this, as it's using go:embed to bring in some data.

1: https://go.dev/blog/protobuf-opaque
Wanted to update protoc-gen-go to match the protobuf update. Couldn't get
retool to work properly, despite trying several older versions of Go. The
project is also archived, so tool the time to switch to simple, Go modules
based installs of the tools. This is done without actually changing this
library to need modules, support is only flagged in explicitly to install
those. This is used to install the version of protoc-gen-go that matches the
vendored copy, and the latest version of errcheck is installed.

The protoc check script is updated - the versioning scheme has changed, so we
now just check a minimum of protoc 3.

Generated pb files are re-generated.
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