Go support for Google's protocol buffers
Go to file
Joe Tsai 42fa50da34 test.bash: do not run golden tests by default
The golden tests are sensitive to the exact version used:
* Protobuf toolchain since the generated Descriptor is dependendent on protoc
(for example, default json_names were auto-populated in later versions of protoc)
* Go toolchain since the generated .pb.go files is dependent on the exact output
of gofmt and the gzip compression used.

There are other areas where it depends on unstable output, but the above are the
major causes.

Since test.bash ensures that the golden tests are run with exact versions of the
protobuf and Go toolchains, we can ensure that the tests are reproducible across
different developer workstations.

Thus, we add a "golden" build tag to disable them for normal invocations of
"go test ./..." and only run them if test.bash is run.

If test.bash is ever updated with newer versions, the golden testdata can be
updated at the same time.

Change-Id: Ia2b7b039aad2ddaef7652e332215bf9403a6d856
Reviewed-on: https://go-review.googlesource.com/c/142458
Reviewed-by: Damien Neil <dneil@google.com>
2018-10-16 16:49:18 +00:00
cmd test.bash: do not run golden tests by default 2018-10-16 16:49:18 +00:00
internal internal/impl: support wrapping Go structs to implement proto.Message 2018-10-03 02:10:04 +00:00
protogen test.bash: do not run golden tests by default 2018-10-16 16:49:18 +00:00
reflect reflect/prototype: fix name resolution when file has no package name 2018-10-16 16:16:46 +00:00
.gitignore cmd/protoc-gen-go-grpc: add gRPC code generator 2018-09-27 19:32:34 +00:00
.travis.yml test.bash: use repo-local cache 2018-09-06 19:58:40 +00:00
AUTHORS AUTHORS, CONTRIBUTORS, LICENSE, PATENTS: initial commit 2018-08-07 22:39:48 +00:00
CONTRIBUTING.md CONTRIBUTING.md: add pre-push hook instructions 2018-08-07 23:58:41 +00:00
CONTRIBUTORS AUTHORS, CONTRIBUTORS, LICENSE, PATENTS: initial commit 2018-08-07 22:39:48 +00:00
go.mod go.mod: rename google.golang.org/proto as github.com/golang/protobuf/v2 2018-09-24 16:11:50 +00:00
go.sum protogen: automatic handling of imports 2018-09-05 23:14:28 +00:00
LICENSE AUTHORS, CONTRIBUTORS, LICENSE, PATENTS: initial commit 2018-08-07 22:39:48 +00:00
PATENTS AUTHORS, CONTRIBUTORS, LICENSE, PATENTS: initial commit 2018-08-07 22:39:48 +00:00
README.md CONTRIBUTING.md: initial commit 2018-08-01 20:39:06 +00:00
regenerate.bash cmd/protoc-gen-go-grpc: add gRPC code generator 2018-09-27 19:32:34 +00:00
test.bash test.bash: do not run golden tests by default 2018-10-16 16:49:18 +00:00

Next Generation Go Protocol Buffers

WARNING: This repository is in active development. There are no guarantees about API stability. Breaking changes will occur until a stable release is made and announced.

This repository is for the development of the next major Go implementation of protocol buffers. This library makes breaking API changes relative to the existing Go protobuf library. Of particular note, this API aims to make protobuf reflection a first-class feature of the API and implements the protobuf ecosystem in terms of reflection.

Design Documents

List of relevant design documents:

Contributing

We appreciate community contributions. See CONTRIBUTING.md.

Reporting Issues

Issues regarding the new API can be filed at github.com/golang/protobuf. Please use a APIv2: prefix in the title to make it clear that the issue is regarding the new API work.