wasmtime
wasmtime copied to clipboard
Turn the `wasmtime-runtime` crate into the `wasmtime::runtime::vm` module
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.
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 nestedstruct
s).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.
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 thewasmtime
crate's public API.
This is proving to be a bit hairier than anticipated; investigating alternatives. Shouldn't affect this PR.