v2.9.0 adds new features, refactors tests, and improves docs. New features improve interoperability/transcoding between CBOR & JSON.
v2.9.0 passed fuzz tests and is production quality. However, the new TextUnmarshaler feature will continue being fuzz tested a bit longer due to recent changes. The recent changes are limited and don't affect other parts of the codec that passed ~2 billion execs fuzzing.
What's Changed
- Refactor to use Go standard library functions by @fxamacker in #663
- Improve DupMapKeyError message by @fxamacker in #670
- Add options to support TextMarshaler and TextUnmarshaler by @benluddy in #672
- Add optional support for json.Marshaler and json.Unmarshaler via transcoding by @benluddy in #673
- Refactor tests and update comments by @fxamacker in #678
- Use TextUnmarshaler on byte strings with ByteStringToStringAllowed. by @benluddy in #682
Docs
- README: Document struct field tag "-" by @fxamacker in #653
- Fix IntDecConvertSignedOrBigInt doc comment by @theory in #655
- Update docs for TimeMode, Tag, RawTag, and add example for Embedded JSON Tag for CBOR by @fxamacker in #659
- Update README for Embedded JSON Tag for CBOR (tag 262) by @fxamacker in #662
- Fix typos in some comments by @adeinega in #671
- Update README for v2.9.0 and add Red Hat as a user by @fxamacker in #684
CI
🔎 Details
- Bump github/codeql-action from 3.28.13 to 3.28.15 by @dependabot[bot] in #651
- Bump github/codeql-action from 3.28.15 to 3.28.16 by @dependabot[bot] in #658
- Bump github/codeql-action from 3.28.16 to 3.28.17 by @dependabot[bot] in #660
- Bump actions/setup-go from 5.4.0 to 5.5.0 by @dependabot[bot] in #661
- Bump github/codeql-action from 3.28.17 to 3.28.18 by @dependabot[bot] in #664
- Bump github/codeql-action from 3.28.18 to 3.28.19 by @dependabot[bot] in #667
- Bump github/codeql-action from 3.28.19 to 3.29.0 by @dependabot[bot] in #674
- Bump github/codeql-action from 3.29.0 to 3.29.2 by @dependabot[bot] in #680
Special Thanks
Many thanks to @benluddy for adding these new features! 🎉
- Add opt-in support for encoding.TextMarshaler and encoding.TextUnmarshaler to encode and decode from CBOR text string.
- Add opt-in support for json.Marshaler and json.Unmarshaler via user-provided transcoding function.
New Contributors
Full Changelog: v2.8.0...v2.9.0