Releases: bytedance/sonic
Releases · bytedance/sonic
v1.3.3
v1.3.2
v1.3.1
Feature
- [#237] opt: remove bound and loop unrolling in the quote process. The benchmark showed the encoding performance was accelerated by 10%~20%.
CI
- [#239] test: add more JSON samples and corresponding benchmarks, aiming at performance comparison with https://github.com/go-json-experiment/json
Full Changelog: v1.3.0...v1.3.1
v1.3.0
Feature
- [#233] add configurable
sonic.API
to be compatible withencoding/json
library andARM
arch. - [#225] support streaming IO with
encoder.StreamEncoder
anddecoder.StreamDecoder
. - [#228] support
windows
OS.
Bugfix
- [#230] (encoder) fix the invalid length of output buffer caused by register-scratching bug under encoding error.
- [#224] (encoder) add defensive string-pointer-checking to avoid crashes on native-C stack.
Full Changelog: v1.2.0...v1.3.0
v1.2.2
What's Changed
- fix: some typos by @liuq19 in #221
- fix: add nil pointer check by @AsterDY in #224
- fix (encoder): spill
RL
(buffer length) register while calling internal encoders in case of it got scratched by @AsterDY in #230 - feat: support for Windows by @ii64 in #228
New Contributors
Full Changelog: v1.2.1...v1.2.2
v1.2.1
v1.2.0
Feature
- [#214] support Go 1.18
- [#208] add fuzz test in Go 1.18
- [#197] add API
MarshalString()
- [#192] (decoder) add option
CopyString()
- [#196] allow decoding string value as
json.Number
in binding scenario
Bugfix
- [#194] check nil pointer when encoding a pointer receiver of
json.Marshaler
- [#188] fix nil panic when loading on plugin mode
- [#209] ignore overflow-check while decoding
json.Number
and optimize
Full Changelog: v1.1.1...v1.2.0
v1.1.1
v1.1.0
Feature
[#171] support HTML escaping
[#189] support JSON validation and skipping
[#168] add optimizing options encoder.CompactMarshaler
and encoder.NoQuoteTextMarshaler
Bugfix
[#187] prevent premature GC on decoded string values
[#181] add GC write barrier for Go1.15
[#179] check number ending when skipping numbers
Full Changelog: v1.0.0...v1.1.0