Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor away the Instantiator type in Wasmtime #3972

Merged

Commits on Apr 4, 2022

  1. Refactor away the Instantiator type in Wasmtime

    This internal type in Wasmtime was primarily used for the module linking
    proposal to handle instantiation of many instances and refactor out the
    sync and async parts to minimize duplication. With the removal of the
    module linking proposal, however, this type isn't really necessary any
    longer. In working to implement the component model proposal I was
    looking already to refactor this and I figured it'd be good to land that
    ahead of time on `main` separate of other refactorings.
    
    This commit removes the `Instantiator` type in the `instance` module.
    The type was already private to Wasmtime so this shouldn't have any
    impact on consumers. This allows simplifying various code paths to avoid
    another abstraction. The meat of instantiation is moved to
    `Instance::new_raw` which should be reusable for the component model as
    well.
    
    One bug is actually fixed in this commit as well where
    `Linker::instantiate` and `InstancePre::instantiate` failed to check
    that async support was disabled on a store. This means that they could
    have led to a panic if used with an async store and a start function
    called an async import (or an async resource limiter yielded). A few
    tests were updated with this.
    alexcrichton committed Apr 4, 2022
    Configuration menu
    Copy the full SHA
    c146574 View commit details
    Browse the repository at this point in the history

Commits on Apr 5, 2022

  1. Review comments

    alexcrichton committed Apr 5, 2022
    Configuration menu
    Copy the full SHA
    0bbc88a View commit details
    Browse the repository at this point in the history