* Add a key benchmark, optimize SDK SetAttribute
* Use reflect in key.Infer
* Move to separate benchmark file; remove pointer test; remove dead comment
* Run go mod tidy
* Add license header
* Use the reflect scalar accessors
Co-authored-by: Liz Fong-Jones <lizf@honeycomb.io>
* Update License header for all source files
- Add Apache 2.0 header to source files that did not have one.
- Update all existing headers dated to 2019 to be 2020
- Remove comma from License header to comply with the Apache 2.0
guidelines.
* Update Copyright notice
Use the standard Copyright notices outlined by the
[CNCF](https://github.com/cncf/foundation/blob/master/copyright-notices.md#copyright-notices)
* shrink the value type
went down from 40 bytes to 24
* add missing license blurb
* stringify value type
* print string value types in stdout exporter
* make Value function take a pointer receiver
This is to shrink the PR #100.
The only place where the registry.Variable type was used was metrics,
so just inline that type into its only user. The use of the
registry.Variable type in core.Key was limited to the Name field.
The stats package also used the registry.Variable type, but seems that
also only the Name field was used and the package is going to be
dropped anyway.
* Move scope.Active to trace.CurrentSpan
* Remove scope / does not build
* Global tracer
* Checkpoint
* Checkpoint
* Add key/key.go for key.New
* Comments
* Remove more EventID and ScopeID
* Use Handle to describe static objects
* TODOs
* Remove empty file
* Remove singletons
* Update TODOs
* TODO about map update
* Make stats package option aliases (like key has)
* Rename experimental/streaming
* streaming SDK builds w/ many TODOs
* Get the examples building
* Tidy up metric API / add interface check
* Remove logic from the registry; this is now a placeholder