finds.dev← search

// the find

golang/protobuf

★ 10,077 · Go · BSD-3-Clause · updated Sep 2026

Go support for Google's protocol buffers

This is the v1 Go API for Protocol Buffers: the proto, jsonpb, and ptypes packages plus the protoc-gen-go plugin. Since v1.4 it is a thin layer over google.golang.org/protobuf, and the README says new code should import that module directly. It exists mainly for maintainers of older Go code and dependency trees that still import it.

Since v1.4 this module runs on the same engine as google.golang.org/protobuf, so a dependency tree that pulls in both does not end up with two protobuf runtimes behaving differently. The compatibility section is unusually explicit about what may break and why, and it promises six months' notice for breaking changes outside the listed exceptions. The repo ships a regenerate script for its test protos and a GitHub Actions workflow, so the generated test code can be rebuilt and checked rather than trusted.

This is a maintenance module. New features such as reflection improvements and newer APIs land in google.golang.org/protobuf, and this repo gets compatibility and bug fixes only. The compatibility section also reserves the right to break things without notice for security and specification reasons, and to add fields and methods to generated code, which will break anyone who patches generated files. The ptypes subpackages are wrappers around well-known types that now live elsewhere, so adopting them adds an indirection without adding anything. The README's Travis badge points at travis-ci.org, a retired service, which makes the build status it shows misleading.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →