Skip to content

Commit

Permalink
chore(deps): update wasmtime to v22 (major) (#184)
Browse files Browse the repository at this point in the history
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [wasmtime](https://togithub.com/bytecodealliance/wasmtime) | workspace.dependencies | major | `21.0.0` -> `22.0.0` |
| [wasmtime-wasi](https://togithub.com/bytecodealliance/wasmtime) | workspace.dependencies | major | `21.0.0` -> `22.0.0` |

---

### Release Notes

<details>
<summary>bytecodealliance/wasmtime (wasmtime)</summary>

### [`v22.0.0`](https://togithub.com/bytecodealliance/wasmtime/releases/tag/v22.0.0)

[Compare Source](https://togithub.com/bytecodealliance/wasmtime/compare/v21.0.1...v22.0.0)

#### 22.0.0

Released 2024-06-20.

##### Added

-   The CMake-based build of Wasmtime's C API now adds a
    `WASMTIME_FASTEST_RUNTIME` option which activates the "fastest-runtime"
    compilation profile which enables LTO.
    [#&#8203;8554](https://togithub.com/bytecodealliance/wasmtime/pull/8554)

-   Cranelift supports more instructions in the RISC-V Zfa and ZiCond extensions.
    [#&#8203;8582](https://togithub.com/bytecodealliance/wasmtime/pull/8582)
    [#&#8203;8695](https://togithub.com/bytecodealliance/wasmtime/pull/8695)

-   Support for fused-multiply-and-add on RISC-V has been improved.
    [#&#8203;8596](https://togithub.com/bytecodealliance/wasmtime/pull/8596)
    [#&#8203;8588](https://togithub.com/bytecodealliance/wasmtime/pull/8588)

-   Release binaries for `{aarch64,x86_64}-android` have been added. Note that
    Android is still a [Tier 3 target][target].
    [#&#8203;8601](https://togithub.com/bytecodealliance/wasmtime/pull/8601)

-   Wasmtime now supports supertypes and finality in the type hierarchy for wasm
    gc.
    [#&#8203;8595](https://togithub.com/bytecodealliance/wasmtime/pull/8595)

-   Lazy initialization of tables can now be tuned with a CLI flags and
    configuration option.
    [#&#8203;8531](https://togithub.com/bytecodealliance/wasmtime/pull/8531)

-   Wasmtime now compiles for x86\_64 OpenBSD. Note that this is a [Tier 3
    target][target] and continued support is always appreciated.
    [#&#8203;8613](https://togithub.com/bytecodealliance/wasmtime/pull/8613)

-   Stack slots in Cranelift can now specify custom alignment.
    [#&#8203;8635](https://togithub.com/bytecodealliance/wasmtime/pull/8635)

-   Wasm function names are now used in compiled objects to assist with debugging
    and introspection with native tools.
    [#&#8203;8627](https://togithub.com/bytecodealliance/wasmtime/pull/8627)

-   Wasmtime's release artifacts now includes `wasmtime-platform.h` for use with
    `no_std` targets.
    [#&#8203;8644](https://togithub.com/bytecodealliance/wasmtime/pull/8644)

-   Release binaries for x86\_64 Alpine Linux have been added.
    [#&#8203;8668](https://togithub.com/bytecodealliance/wasmtime/pull/8668)

-   A new `Component::define_unknown_imports_as_traps` function has been added to
    stub out functions in a component linker.
    [#&#8203;8672](https://togithub.com/bytecodealliance/wasmtime/pull/8672)

[target]: https://docs.wasmtime.dev/stability-tiers.html

##### Changed

-   Wasmtime and Cranelift's now require Rust 1.76.0 to build.
    [#&#8203;8560](https://togithub.com/bytecodealliance/wasmtime/pull/8560)

-   The `wasi_config_preopen_dir` function no longer always returns `true` in the
    C API. Additionally `wasi_config_set_env` and `wasi_config_set_argv` may now
    return an error.
    [#&#8203;8572](https://togithub.com/bytecodealliance/wasmtime/pull/8572)

-   Cranelift now updates registers of backend instructions in-place, simplifying
    register allocation and assignment.
    [#&#8203;8566](https://togithub.com/bytecodealliance/wasmtime/pull/8566)
    [#&#8203;8581](https://togithub.com/bytecodealliance/wasmtime/pull/8581)
    [#&#8203;8592](https://togithub.com/bytecodealliance/wasmtime/pull/8592)
    [#&#8203;8604](https://togithub.com/bytecodealliance/wasmtime/pull/8604)
    [#&#8203;8605](https://togithub.com/bytecodealliance/wasmtime/pull/8605)

-   Wasmtime now attempts to batch memory decommits into one tight loop.
    [#&#8203;8581](https://togithub.com/bytecodealliance/wasmtime/pull/8581)
    [#&#8203;8590](https://togithub.com/bytecodealliance/wasmtime/pull/8590)

-   Bindings generated with `bindgen!` now have generated `GetHost` traits and
    `add_to_linker_get_host` functions which enable a more general means by which
    to acquire host implementations from a store's `T`.
    [#&#8203;8448](https://togithub.com/bytecodealliance/wasmtime/pull/8448)

-   The `wasmtime serve` subcommand will now dynamically determine whether to use
    the pooling allocator by default based on the system's available virtual
    memory.
    [#&#8203;8610](https://togithub.com/bytecodealliance/wasmtime/pull/8610)

-   Implementations of `Host` traits in the `wasmtime-wasi` crate are now for
    `WasiImpl<T>` instead of blanket impls for `T`.
    [#&#8203;8609](https://togithub.com/bytecodealliance/wasmtime/pull/8609)
    [#&#8203;8766](https://togithub.com/bytecodealliance/wasmtime/pull/8766)

-   The concepts of "virtual sp offset" and "nominal sp" have been removed from all
    Cranelift backends.
    [#&#8203;8631](https://togithub.com/bytecodealliance/wasmtime/pull/8631)
    [#&#8203;8643](https://togithub.com/bytecodealliance/wasmtime/pull/8643)

-   The maximum size of linear memory in the pooling allocator is now specified in
    bytes instead of pages.
    [#&#8203;8628](https://togithub.com/bytecodealliance/wasmtime/pull/8628)

-   Wasmtime no longer has two different host ABIs for host functions and instead
    only has one. The "array" calling convention is now unconditionally used
    instead of having a split between the "native" calling convention and the
    "array" calling convention. This means that `Func::new` is now available even
    when the `cranelift` feature is disabled.
    [#&#8203;8629](https://togithub.com/bytecodealliance/wasmtime/pull/8629)
    [#&#8203;8646](https://togithub.com/bytecodealliance/wasmtime/pull/8646)

-   Wasmtime's C API bindings for CMake have been refactored and now supports
    specifying Cargo features directly. Functions that are configured out are now
    also gated in header files.
    [#&#8203;8642](https://togithub.com/bytecodealliance/wasmtime/pull/8642)

-   Wasmtime's C API can now be built without Cranelift or Winch.
    [#&#8203;8661](https://togithub.com/bytecodealliance/wasmtime/pull/8661)

-   Wasmtime's release binaries have Winch compiled in by default now.
    [#&#8203;8660](https://togithub.com/bytecodealliance/wasmtime/pull/8660)

-   The output of `wasmtime explore` now shows function names in addition to
    indices.
    [#&#8203;8639](https://togithub.com/bytecodealliance/wasmtime/pull/8639)

-   Support for the Wasmtime 13-and-prior CLI has been removed.
    [#&#8203;8597](https://togithub.com/bytecodealliance/wasmtime/pull/8597)

-   Wiggle-based borrow checking has been removed in favor of modeling host usage
    of guest memory with Rust-level borrows.
    [#&#8203;8702](https://togithub.com/bytecodealliance/wasmtime/pull/8702)

-   Wasmtime's `bindgen!` macro will now generate the same hierarchy of
    traits/types/modules even when the `with` module is used via new `pub use`
    statements.
    [#&#8203;8721](https://togithub.com/bytecodealliance/wasmtime/pull/8721)

-   The `WasiCtxBuilder::socket_addr_check` function now takes an `async` closure.
    [#&#8203;8715](https://togithub.com/bytecodealliance/wasmtime/pull/8715)

-   The `Func::wrapN_async` functions and friends have all been consolidated into
    a single function with a slightly different signature of taking a tuple of
    arguments rather than "splatted" arguments.
    [#&#8203;8732](https://togithub.com/bytecodealliance/wasmtime/pull/8732)

##### Fixed

-   Trampoline lookup for wasm gc functions that may use subtyping on the host to
    match a guest's desired type now no longer panics.
    [#&#8203;8579](https://togithub.com/bytecodealliance/wasmtime/pull/8579)

-   The total size of arguments, environment variables, and preopens is now
    allowed to exceed 64k when using the wasip1 component adapter.
    [#&#8203;8594](https://togithub.com/bytecodealliance/wasmtime/pull/8594)

-   Performing a zero-length `read` on file streams is now fixed in WASI.
    [#&#8203;8611](https://togithub.com/bytecodealliance/wasmtime/pull/8611)

-   Tail calls are now turned by default after a mistake was discovered in the
    previous releases's intent to enable them by default.
    [#&#8203;8682](https://togithub.com/bytecodealliance/wasmtime/pull/8682)

-   Winch support for `f64` comparison instructions has been fixed.
    [#&#8203;8685](https://togithub.com/bytecodealliance/wasmtime/pull/8685)

-   The `SO_REUSEADDR` option is reenabled for Unix platforms with `wasmtime
    serve`.
    [#&#8203;8738](https://togithub.com/bytecodealliance/wasmtime/pull/8738)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/andrzejressel/pulumi-wasm).
  • Loading branch information
renovate[bot] authored Jun 20, 2024
1 parent 78fac45 commit 00a3b97
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 131 deletions.
Loading

0 comments on commit 00a3b97

Please sign in to comment.