wasmtime icon indicating copy to clipboard operation
wasmtime copied to clipboard

Turn the `wasmtime-runtime` crate into the `wasmtime::runtime::vm` module

Open fitzgen opened this issue 3 months ago • 2 comments

We want to merge them together because there is no abstraction or layering or boundary between them in practice, and our architectures and designs have, at times, been constrained by this artificial crate boundary and what is visible in which crate and this has forced us to use nasty workarounds like defining traits in wasmtime-runtime that get implemented in wasmtime and used as dynamic trait objects inside wasmtime-runtime. Merging them will allow us to remove these hacks.

fitzgen avatar Apr 29 '24 15:04 fitzgen

Label Messager: wasmtime:config

It looks like you are changing Wasmtime's configuration options. Make sure to complete this check list:

  • [ ] If you added a new Config method, you wrote extensive documentation for it.

    Our documentation should be of the following form:

    Short, simple summary sentence.
    
    More details. These details can be multiple paragraphs. There should be
    information about not just the method, but its parameters and results as
    well.
    
    Is this method fallible? If so, when can it return an error?
    
    Can this method panic? If so, when does it panic?
    
    # Example
    
    Optional example here.
    
  • [ ] If you added a new Config method, or modified an existing one, you ensured that this configuration is exercised by the fuzz targets.

    For example, if you expose a new strategy for allocating the next instance slot inside the pooling allocator, you should ensure that at least one of our fuzz targets exercises that new strategy.

    Often, all that is required of you is to ensure that there is a knob for this configuration option in wasmtime_fuzzing::Config (or one of its nested structs).

    Rarely, this may require authoring a new fuzz target to specifically test this configuration. See our docs on fuzzing for more details.

  • [ ] If you are enabling a configuration option by default, make sure that it has been fuzzed for at least two weeks before turning it on by default.


To modify this label's message, edit the .github/label-messager/wasmtime-config.md file.

To add new label messages or remove existing label messages, edit the .github/label-messager.json configuration file.

Learn more.

github-actions[bot] avatar Apr 29 '24 15:04 github-actions[bot]

The next step after this, before actually merging the crates together, is to factor out wasmtime_runtime::{sys,mmap,mmap_vec} into its own crate, since this functionality is used directly by the CLI in one place, and I don't want to add that stuff to the wasmtime crate's public API.

This is proving to be a bit hairier than anticipated; investigating alternatives. Shouldn't affect this PR.

fitzgen avatar Apr 29 '24 15:04 fitzgen