v1.10.0-rc
Bugfix
- [#464] use linked chunk as fundamental storage for nodes, to keep returned
ast.Node
pointer valid.- BREAK CHANGE:
ast.Unset()
now WON'T changeast.Len()
andast.Index()
- BREAK CHANGE:
ast.UnsafeArray()
andast.UnsafeMap()
are deprecated and user SHOULDN'T modify node based on these API
- BREAK CHANGE:
- [#393] refactor
asm2asm
to avoid crashing when the program gets panic or profiled- BREAK CHANGE: sonic now only support Go 1.16~1.20
Feature
- [#470] add
Valid()
API on main package
Optimization
- [#464] reduce memory allocation when loading nodes,
ast.Load()
performance now speeds up 20%~60% - [#393]: call native C function by register-based ABI in
ast.Node
New Contributors
- @xumingyukou made their first contribution in #447
Full Changelog: v1.9.2...v1.10.0-rc