commit | 492a476312755200fbec6fb289efcfa9918d228b | [log] [tgz] |
---|---|---|
author | Joe Tsai <joetsai@digital-static.net> | Mon Nov 26 17:16:32 2018 -0800 |
committer | Joe Tsai <thebrokentoaster@gmail.com> | Tue Nov 27 02:14:04 2018 +0000 |
tree | 1ee9d96a9c4a3bf886d3ad806d2a3d8c14ee2350 | |
parent | c3f4d486298baf0f69057fc51d4b5194f8dfbfdd [diff] |
internal/detrand: new package for deterministically random functionality The use of math/rand in serialization is to provide some form of instability to the output to provide a clear signal to the user that the should not depend on the the property of stability. However, it is reasonable that users expect the output for these to be deterministic. As such, add a detrand package that provides deterministic, yet unstable randomization functionality. Since this package hashes the binary, it does impose a small initialization cost: Benchmark 100000 20712 ns/op 480 B/op 6 allocs/op Change-Id: I232d0fea1789a4278079837a67ee2f63474a4364 Reviewed-on: https://go-review.googlesource.com/c/151340 Reviewed-by: Herbie Ong <herbie@google.com>
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.
List of relevant design documents:
We appreciate community contributions. See CONTRIBUTING.md.
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.