A blazingly fast JSON serializing & deserializing library
json.Unmarshaler
Full Changelog: https://github.com/bytedance/sonic/compare/v1.10.1...v1.10.2
NoValidateJSONMarshaler
optionSet/Unset/Add()
Full Changelog: https://github.com/bytedance/sonic/compare/v1.10.0...v1.10.1
[#464] Due to design bugs, we are sorry to warn you that some behaviors of ast.Node
have to be changed:
[#393] Due to difficulty of maintaining compatibility with Golang:
ast.Visitor
for transversing JSON in-placeValid()
APIbyte
typeUnsafeArray()
and UnsafeMap()
(Break Change)asm2asm
to avoid SIGPROF
crashing, and enable traceback when C function panics
Parse()\Load()\Interface()
promoted 10~60%
skipnumber
flag to avoid decoding numbersFull Changelog: https://github.com/bytedance/sonic/compare/v1.9.2...v1.10.0
skipnumber
flag to avoid decoding numbersast.Visitor
for iterating JSON into custom generic data containers in-placeFull Changelog: https://github.com/bytedance/sonic/compare/v1.10.0-rc...v1.10.0-rc2
ast.Node
pointer valid.
ast.Unset()
now WON'T change ast.Len()
and ast.Index()
ast.UnsafeArray()
and ast.UnsafeMap()
are deprecated and user SHOULDN'T modify node based on these APIasm2asm
to avoid crashing when the program gets panic or profiled
Valid()
API on main packageast.Load()
performance now speeds up 20%~60%
ast.Node
Full Changelog: https://github.com/bytedance/sonic/compare/v1.9.2...v1.10.0-rc
internal/encoder/Pretouch()
Full Changelog: https://github.com/bytedance/sonic/compare/v1.9.1...v1.9.2
Full Changelog: https://github.com/bytedance/sonic/compare/v1.9.0...v1.9.1
decoder
and encoder
package support fallback on not-supported envsmov
lagre imm64
to memory instruction in jitFull Changelog: https://github.com/bytedance/sonic/compare/v1.8.10...v1.9.0
Full Changelog: https://github.com/bytedance/sonic/compare/v1.8.9...v1.8.10