Stream: wasi

Topic: CM interface version canonicalization


view this post on Zulip Lann Martin (Jun 26 2025 at 14:26):

I have opened an issue and draft PR proposing a change to the way WIT package versions are encoded in import/export names: https://github.com/WebAssembly/component-model/issues/534
tl;dr: The proposal is to canonicalize versions by stripping the trailing part of a version that is "insignificant" from a SemVer compatibility standpoint, e.g. 0.2.5 -> 0.2 and 1.2.3 -> 1. This should roughly align with - and eventually supersede - the version matching logic in Wasmtime, with the additional benefit of getting that behavior in component composition tooling like wac and wasi-virt "for free".

Wasmtime currently performs a slightly complicated dance to allow a guest import/export of an interface to be linked with a different but semver-compatible host version of that interface. For a des...

Last updated: Dec 06 2025 at 06:05 UTC