1.1.13
This is a production release of go-codec.
This release should be about 10% faster during decode than previous releases.
Changes
- 10% faster on decode and encoding if omitempty is configured
- improved performance in looking up struct field values when decoding structs
- codecgen: support generating reduced code for json only, omitempty support, or to_array support
- omitempty: support for IsCodecEmpty, a custom way of checking if a value is empty
- omitempty: optimize comparing to zero'es to check if a value is empty
- stack overflow/circular references: optimize check by push/popping a stack
See benchmark results run on a very complicated struct full of embedded types, with multiple nested levels.
Each struct value encodes as 47K of tightly packed json or 37K of binary msgpack or cbor.
The main goal has always been to provide the most feature-rich and performant package
for encoding and decoding of multiple popular binary and text formats in a consistent way.
We believe we continue to achieve that!