deps: upgrade to wasmtime@18.0.0 toolchain #368
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There have been breaking change added to wasmtime that jco hasn't started using yet. This PR does the bare minimum needed to update and preserve prior functionality. The two nontrivial updates that were added were
1.) GC instructions added to wasm-tools
2.) Support for introspection in wasmtime
For both of these, I did the simplest thing I could, frequently leaving things unimplemented, but figured that may be fine given other parts of the code.
Below are notes on how the PR currently deals with each of the needed updates
1.) Takes inspiration from similar macro blocks in
wasm-tools
, and occasionally relies on an unimplemented method onTranslator
trait. Some of the inspiration came fromwasm-mutate
, but there are similar macro rules inwit-component
in the gc module. I'm not sure what jco's plans for GC currently are, so it's likely that I may have grabbed macro rules from the wrong place, or that some of the unimplemented methods matter, happy to look into either.2.) This break was introduced by this PR, and I actually just reimplemented the original function with the original func signature and renamed in
finish_sans_introspection
, as it doesn't seem that there is a simple way to fulfill the newer signature without performing compilation steps that didn't appear to me as steps we want to port into jco, though I may be wrong. Currently theCargo.toml
points to my local branch ofwasmtime
, which I'll update to point at the latest release if said change gets upstreamed intowasmtime