You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Initial support for Component Model async types stream, future, and error-context.
Initial support for JSON serialization of WIT list, enum, and record types.
wasm-tools is now vendored as a WebAssembly module, executed using Wazero. This allows package wit and wit-bindgen-go to run on any supported platform without needing to separately install wasm-tools.
Changed
Breaking: generated *.wasm.go files will now have correct WIT kebab-case base name. Interfaces or worlds with - in their name will require removal of the previous *.wasm.go files.
Breaking: upgraded to wasm-toolsv1.227.1, which removes support for multiple return values and flags with > 32 values. To ease migration, this package will continue to support JSON generated by wasm-tools v1.225.0 and earlier.
Dropped support for TinyGo v0.32.0 and v0.33.0.
Added support for Go 1.24 and dropped support for Go 1.22.
Fixed
#281: errors from internal wasm-tools calls are no longer silently ignored. This required fixing a number of related issues, including synthetic world packages for Component Model metadata generation, WIT generation, and WIT keyword escaping in WIT package or interface names.
#284: do not use bool for variant or result GC shapes. TinyGo returns result and variant values with bool as 0 or 1, which breaks the memory representation of tagged unions (variants).
#288: correctly report the wasm32 ABI alignment of list<T> as 4, rather than 8.
#306: run wasm-tools with the --all-features argument so feature-gated WIT is correctly found when synthesizing Component Model metadata for a Go package.