Skip to content

Releases: ugorji/go

1.1.7

02 Jul 14:45
Compare
Choose a tag to compare

This is a production release of go-codec.

First, it resolves the go.mod impasse where we had different import paths (github.com/ugorji/go and github.com/ugorji/go/codec) causing the ambiguous import error.

This is now fixed by leveraging import cycles to ensure that either one works well and resolves to the same bits.

The other benefits are a clean up and refactoring of the codebase:

  • provide better and more consistent performance
  • streamline the use of sync.Pool vs free lists
  • Use more optimized helpers when not in safe mode
  • Smoothen rough edges across the board
  • and many more ...

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!

v1.1.5-pre (testing module requirements cycle)

14 Oct 17:44
1b9f5b9
Compare
Choose a tag to compare

v1.1.5-pre (testing module requirements cycle)

1.1.4

08 Apr 20:31
Compare
Choose a tag to compare

This is a production release of go-codec.

It enforces a stable import path for releases of go which may or may not be aware of modules.

It fixes the incorrect go.mod in the (broken and now removed) v1.1.3 tag and 1.1.3 release.

It also includes fixes and optimizations since the last release, including clearer handling of UTF-8 and strings (readonly raw bytes).

1.1.2

26 Jan 10:30
Compare
Choose a tag to compare

This is a production release of go-codec.

It includes fixes and optimizations over the last 9 months, including:

  • better use of resource pooling and lazy initialization
  • support for mid-stack inlining and lock-free optimizations
  • better support for go modules
  • feature support for MissingFielder, MaxDepth, etc
  • general performance improvements across the board

1.1.1

09 Apr 21:21
Compare
Choose a tag to compare

This is a production release of go-codec.

It includes fixes including:

  • 32-bit OS support
  • more robust chan encoding/decoding
  • at end of Encode(), call Flush() method of passed io.Reader if available
  • handle struct field of type *time.Time appropriately
  • improved error messages

1.1

21 Jan 14:17
Compare
Choose a tag to compare
1.1

This is a production release of go-codec.

It includes much more tests (with coverage > 90%), bug fixes, and exceptional performance improvements.

Out of the box, you get performance that rivals code generation. codecgen only gives 20-50% performance improvement, not the 2X-5X performance improvements it gave before.

This should fulfill the commitment made in #113 to give better confidence in using master.

This package is very feature-rich, seamlessly supports multiple formats and is highly performant compared to the competition. Please see https://github.com/ugorji/go-codec-bench for details on performance comparison vs other libraries.