This is a production release of go-codec.
The main benefits are a number of bug fixes and some performance improvements:
- reduce binary size by 30% by reducing types for which we generate fast-path functions
- support OptimumSize encode option: cbor uses to encode floats in smallest size e.g. binary16
- decode stream nil value in mapping as a nil pointer in memory (previously set to zero value)
- validate that malformed streams can be decoded without causing stack overflow or out of memory errors
- json: return EOF in all scenarios when end of stream is reached (previously returned other error sometimes)
- json: handle malformed unicode correctly in corner cases
- and some general performance improvements ...
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 have achieved that!