Releases: AssemblyScript/assemblyscript
Releases · AssemblyScript/assemblyscript
v0.17.7
v0.17.6
v0.17.5
v0.17.4
v0.17.3
v0.17.2
v0.17.1
Bug fixes
Other
v0.17.0
Breaking changes
- Make Rtrace ESM by default, with UMD fallback (#1515) (2e249e4)
Rtrace is now an ES module by default as well. - Generalize runtime (#1503) (8c97612)
The__alloc
family of built-ins has been split, now being named__new
.__renew
,__newString
,__newArray
etc. when dealing with managed objects. Furthermore, internal memory layouts of managed objects have changed. As a result, the newheap.alloc/realloc/free
APIs now allow working with unmanaged heap memory more naturally and do not imply a managed object header anymore, more closely resemblingmalloc/realloc/free
in C. - Make loader ESM by default, with UMD fallback (#1513) (ff80a4e)
The loader is now an ES module by default so it works out of the box on the web. Users of older node.js versions may have to switch torequire("@assemblyscript/loader/umd")
. - Wrap RHS of SMI shifts to maximum size of type in bits (#1511) (9b57abd)
When shifting a small integer value of typei8
/u8
ori16
/u16
, only the 3 respectively 4 least significant bits of the RHS value affect the result, analogous to the result of ani32.shl
only being affected by the 5 least significant bits of the RHS value. Example:someI8 << 8
previously produced the value0
, but now producessomeI8
due to masking the RHS as8 & 7 = 0
(3 bits).
Bug fixes
- Use explicit cast in Usize/Isize#toString (#1517) (bee3b73)
- Fix publishing / update dependencies (#1516) (32d10b4)
- Keep recompiling when unifying local flags in loops (a0a9da7)