commit | 9ff063c70017c67e3b64cbc66ebbe4a4022b2c01 | [log] [tgz] |
---|---|---|
author | Jonathan Amsterdam <jba@google.com> | Fri Mar 03 15:56:57 2023 -0500 |
committer | Jonathan Amsterdam <jba@google.com> | Sat Mar 04 12:55:23 2023 +0000 |
tree | e7373688bab2cbf5ab12a0e9548fc6bc20ac967d | |
parent | 44a13b063f3eef9743622d40c28e664850fd9d37 [diff] |
slog: change nopc variant from build tag to internal global During benchmarking, we want to skip the call to runtime.Callers so we can measure the speedup without it. Previously we used the build tag `nopc` for this. But build tags are, in a sense, exported API: anyone can rebuild with a particular tag. In fact, at least one user believed that `nopc` was a supported feature of slog. This CL switches to using a global boolean variable. (The extra time involved in checking the global is negligible.) To hide the variable while letting both the slog and benchmarks packages access it, we put it in an internal package. Change-Id: I48c133e53c63cd36cc802bbd5f858b74cc19b9e8 Reviewed-on: https://go-review.googlesource.com/c/exp/+/473335 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Jonathan Amsterdam <jba@google.com> Reviewed-by: Alan Donovan <adonovan@google.com>
This subrepository holds experimental and deprecated (in the old
directory) packages.
The idea for this subrepository originated as the pkg/exp
directory of the main repository, but its presence there made it unavailable to users of the binary downloads of the Go installation. The subrepository has therefore been created to make it possible to go get
these packages.
Warning: Packages here are experimental and unreliable. Some may one day be promoted to the main repository or other subrepository, or they may be modified arbitrarily or even disappear altogether.
In short, code in this subrepository is not subject to the Go 1 compatibility promise. (No subrepo is, but the promise is even more likely to be violated by go.exp than the others.)
Caveat emptor.