-
Notifications
You must be signed in to change notification settings - Fork 18
Description
Extending from #306, WIT version gates cannot be correctly represented in the fully-resolved representation of a component, e.g. in JSON.
The problem arises when a world
in package A includes a world
from package B, which imports or exports an interface
with a version gate, e.g. @since(version = 0.2.0)
. The fully-resolved version of the component as emitted from wasm-tools
will include the package B version gate in the world inside package A.
Testdata
wit-bindgen-go
uses wasm-tools@v1.227.1
internally to parse the WIT, produce a Resolve
, and serialize to JSON, which is then loaded and then re-serialized into WIT.
The existing test corpus in this repo performs a WIT → JSON → WIT round trip verification for every JSON file in testdata
. This is currently breaking for 2 files (issues/issue325.wit
and wit-parser/gated-include-use-with-stable.wit
). See #326 for more information.