<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in instance.wast</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>c71d3aab - Deps: Update `wasm-tools` crates to 0.233.0 (#10915)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#c71d3aab</link>
        <description>Deps: Update `wasm-tools` crates to 0.233.0 (#10915)* Update `wasm-tools` deps to 0.233.0* Update `cargo vet` metadataJust a prune and wildcard renewals* cargo fmt* Fix type export identifiers* Fix more type identifiers in exports in WAT

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Wed, 04 Jun 2025 18:53:37 +0000</pubDate>
        <dc:creator>Nick Fitzgerald &lt;fitzgen@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>d29b2800 - Implement new `*.wast` directives in `wasmtime-wast` (#9223)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#d29b2800</link>
        <description>Implement new `*.wast` directives in `wasmtime-wast` (#9223)* Implement new `*.wast` directives in `wasmtime-wast`This is a follow-up from #9219 to add support for a few more directivesin `*.wast` tests to notably compile a module and possibly instantiateit multiple times.This copies the upstream spec test using these new directives and editsit to remove the unsupported exception-handling bits.* Fix tests to test the right thing* Fix a test to use `assert_unlinkable`* Add a component/instance test for components too

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Tue, 10 Sep 2024 21:55:47 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>7b9189ba - Update the wasm-tools family of crates, disallow empty component types (#6777)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#7b9189ba</link>
        <description>Update the wasm-tools family of crates, disallow empty component types (#6777)* Remove unused WIT files from WasmtimeThese files aren&apos;t actually read by anything currently. They were addedhistorically and a previous refactoring in #6390 forgot to remove them.No tests or build process reads them so this deletes them to get themout of the way.* Update dependencies on wasm-tools crates.This commit updates the deps on the wasm-tools family of crates to bringin a few fixes for WIT/component-related things. Primarily though thisbrings in an update to the component model where empty types are nowdisallowed.Some tests using empty types were adjusted to use non-empty types, butmany tests were also simply removed as they existed to test what wouldhappen with empty types which now no longer needs to be tested.* Update `stream-error` in preview2Add a `dummy` field to make it a non-empty structure. It&apos;s expected thatthis will change to something else more &quot;official&quot; in the future, butfor now this is here to keep everything compiling.* Update component fuzzing to avoid empty typesEmpty types are no longer valid* Update crates/wasi/wit/deps/io/streams.witCo-authored-by: Peter Huene &lt;peter@huene.dev&gt;---------Co-authored-by: Peter Huene &lt;peter@huene.dev&gt;

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Wed, 26 Jul 2023 19:23:43 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>f928bf72 - Update to latest wasm-tools crates (#6378)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#f928bf72</link>
        <description>Update to latest wasm-tools crates (#6378)* Update to latest wasm-tools cratesThis commit pushes through the full update of the wasm-tools cratesthrough Wasmtime. There are two major features which changed, bothrelated to components, which required updates in Wasmtime:* Resource types are now implemented in wasm-tools and they&apos;re not yet  implemented in Wasmtime so I&apos;ve stubbed out the integration point with  panics as reminders to come back and implement them.* There are new validation rules about how aggregate types must be  named. This doesn&apos;t affect runtime internals at all but was done on  behalf of code generators. This did however affect a number of tests  which have to ensure that types are exported.* Fix more tests* Add vet entries

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Tue, 16 May 2023 00:14:31 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>b305f251 - Update the wasm-tools family of crates (#5310)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#b305f251</link>
        <description>Update the wasm-tools family of crates (#5310)Most of the changes here are the updates to the component model whichincludes optional URL fields in imports/exports.

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Mon, 21 Nov 2022 21:37:16 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>f96491f3 - Ignore when components export type definitions (#5051)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#f96491f3</link>
        <description>Ignore when components export type definitions (#5051)* allow a ComponentTypeRef::Type to point to a component TypeDef* component matching: don&apos;t assert exported Interface type definitions are &quot;defined&quot;types may be exported by their name for consumption by some componentruntimes, but in wasmtime this doesn&apos;t matter (we lift and lower totypes, not define them) so we should ignore these.* component-model instance tests: show that an import can export a type definitionthis is meaningless, but it should be accepted. (previously rejected)

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Wed, 12 Oct 2022 22:45:03 +0000</pubDate>
        <dc:creator>Pat Hickey &lt;phickey@fastly.com&gt;</dc:creator>
    </item>
<item>
        <title>80bd650b - Components: ignore type exports (for now). (#4488)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#80bd650b</link>
        <description>Components: ignore type exports (for now). (#4488)* Components: ignore type exports (for now).This commit updates component translation to ignore type exports for now.Components generated with `wit-component` contain type exports to give names totypes used within the component&apos;s functions based on the component&apos;s witdefinition.The intention is to allow bindings to be generated with meaningful namesdirectly from a component. In the future, type exports (and imports) may beused for more than this purpose to support things like resource types.This commit effectively ignores type exports when translating the component asthey are not useful to executing a component at this time.Closes #4415.* Code review feedback.

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Thu, 21 Jul 2022 00:50:31 +0000</pubDate>
        <dc:creator>Peter Huene &lt;phuene@fastly.com&gt;</dc:creator>
    </item>
<item>
        <title>76a2545a - Implement nested instance exports for components (#4364)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#76a2545a</link>
        <description>Implement nested instance exports for components (#4364)This commit adds support to Wasmtime for components which themselvesexport instances. The support here adds new APIs for how instanceexports are accessed in the embedding API. For now this is mostly just afirst-pass where the API is somewhat confusing and has a lot oflifetimes. I&apos;m hoping that over time we can figure out how to simplifythis but for now it should at least be expressive enough for exploringthe exports of an instance.

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Tue, 05 Jul 2022 16:04:54 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>651f4085 - Add support for nested components (#4285)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#651f4085</link>
        <description>Add support for nested components (#4285)* Add support for nested componentsThis commit is an implementation of a number of features of thecomponent model including:* Defining nested components* Outer aliases to components and modules* Instantiating nested componentsThe implementation here is intended to be a foundational pillar ofWasmtime&apos;s component model support since recursion and nested componentsare the bread-and-butter of the component model. At a high level theintention for the component model implementation in Wasmtime has longbeen that the recursive nature of components is &quot;erased&quot; at compile timeto something that&apos;s more optimized and efficient to process. This commitended up exemplifying this quite well where the vast majority of theinternal changes here are in the &quot;compilation&quot; phase of a componentrather than the runtime instantiation phase. The support in the`wasmtime` crate, the runtime instantiation support, only had minorupdates here while the internals of translation have seen heavy updates.The `translate` module was greatly refactored here in this commit.Previously it would, as a component is parsed, create a final`Component` to hand off to trampoline compilation and get persisted atruntime. Instead now it&apos;s a thin layer over `wasmparser` which simplyrecords a list of `LocalInitializer` entries for how to instantiate thecomponent and its index spaces are built. This internal representationof the instantiation of a component is pretty close to the binary formatintentionally.Instead of performing dataflow legwork the `translate` phase of acomponent is now responsible for two primary tasks:1. All components and modules are discovered within a component. They&apos;re   assigned `Static{Component,Module}Index` depending on where they&apos;re   found and a `{Module,}Translation` is prepared for each one. This   &quot;flattens&quot; the recursive structure of the binary into an indexed list   processable later.2. The lexical scope of components is managed here to implement outer   module and component aliases. This is a significant design   implementation because when closing over an outer component or module   that item may actually be imported or something like the result of a   previous instantiation. This means that the capture of   modules and components is both a lexical concern as well as a runtime   concern. The handling of the &quot;runtime&quot; bits are handled in the next   phase of compilation.The next and currently final phase of compilation is a new pass wheremuch of the historical code in `translate.rs` has been moved to (butheavily refactored). The goal of compilation is to produce one &quot;flat&quot;list of initializers for a component (as happens prior to this PR) andto achieve this an &quot;inliner&quot; phase runs which runs through theinstantiation process at compile time to produce a list of initializers.This `inline` module is the main addition as part of this PR and is nowthe workhorse for dataflow analysis and tracking what&apos;s actuallyreferring to what.During the `inline` phase the local initializers recorded in the`translate` phase are processed, in sequence, to instantiate acomponent. Definitions of items are tracked to correspond to their rootdefinition which allows seeing across instantiation argument boundariesand such. Handling &quot;upvars&quot; for component outer aliases is handled inthe `inline` phase as well by creating state for a component whenever acomponent is defined as was recorded during the `translate` phase.Finally this phase is chiefly responsible for doing all string-basedname resolution at compile time that it can. This means that at runtimeno string maps will need to be consulted for item exports and such.The final result of inlining is a list of &quot;global initializers&quot; which isa flat list processed during instantiation time. These are almostidentical to the initializers that were processed prior to this PR.There are certainly still more gaps of the component model to implementbut this should be a major leg up in terms of functionality thatWasmtime implements. This commit, however leaves behind a &quot;hole&quot; whichis not intended to be filled in at this time, namely importing andexporting components at the &quot;root&quot; level from and to the host. This istracked and explained in more detail as part of #4283.cc #4185 as this completes a number of items there* Tweak code to work on stable without warning* Review comments

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Tue, 21 Jun 2022 18:48:56 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>7d7ddceb - Update wasm-tools crates (#4246)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#7d7ddceb</link>
        <description>Update wasm-tools crates (#4246)This commit updates the wasm-tools family of crates, notably pulling inthe refactorings and updates from bytecodealliance/wasm-tools#621 forthe latest iteration of the component model. This commit additionallyupdates all support for the component model for these changes, notably:* Many bits and pieces of type information was refactored. Many  `FooTypeIndex` namings are now `TypeFooIndex`. Additionally there is  now `TypeIndex` as well as `ComponentTypeIndex` for the two type index  spaces in a component.* A number of new sections are now processed to handle the core and  component variants.* Internal maps were split such as the `funcs` map into  `component_funcs` and `funcs` (same for `instances`).* Canonical options are now processed individually instead of one bulk  `into` definition.Overall this was not a major update to the internals of handling thecomponent model in Wasmtime. Instead this was mostly a surface-levelrefactoring to make sure that everything lines up with the new binaryformat for components.* All text syntax used in tests was updated to the new syntax.

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Thu, 09 Jun 2022 16:16:07 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>fcf62087 - Initial skeleton of some component model processing (#4005)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast#fcf62087</link>
        <description>Initial skeleton of some component model processing (#4005)* Initial skeleton of some component model processingThis commit is the first of what will likely be many to implement thecomponent model proposal in Wasmtime. This will be structured as aseries of incremental commits, most of which haven&apos;t been written yet.My hope is to make this incremental and over time to make this easier toreview and easier to test each step in isolation.Here much of the skeleton of how components are going to work inWasmtime is sketched out. This is not a complete implementation of thecomponent model so it&apos;s not all that useful yet, but some things you cando are:* Process the type section into a representation amenable for working  with in Wasmtime.* Process the module section and register core wasm modules.* Process the instance section for core wasm modules.* Process core wasm module imports.* Process core wasm instance aliasing.* Ability to compile a component with core wasm embedded.* Ability to instantiate a component with no imports.* Ability to get functions from this component.This is already starting to diverge from the previous module linkingrepresentation where a `Component` will try to avoid unnecessarymetadata about the component and instead internally only have the bareminimum necessary to instantiate the module. My hope is we can avoidconstructing most of the index spaces during instantiation only for itto all ge thrown away. Additionally I&apos;m predicting that we&apos;ll need tosee through processing where possible to know how to generate adaptersand where they are fused.At this time you can&apos;t actually call a component&apos;s functions, and that&apos;sthe next PR that I would like to make.* Add tests for the component model supportThis commit uses the recently updated wasm-tools crates to add tests forthe component model added in the previous commit. This involved updatingthe `wasmtime-wast` crate for component-model changes. Currently thecomponent support there is quite primitive, but enough to at leastinstantiate components and verify the internals of Wasmtime are allworking correctly. Additionally some simple tests for the embedding APIhave also been added.

            List of files:
            /wasmtime-44.0.1/tests/misc_testsuite/component-model/instance.wast</description>
        <pubDate>Fri, 20 May 2022 20:33:18 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
</channel>
</rss>
