Skip to content

chore(deps): update rust crate wasmtime to v47 - #89

Open
akua-renovate[bot] wants to merge 1 commit into
mainfrom
renovate/wasmtime-47.x
Open

chore(deps): update rust crate wasmtime to v47#89
akua-renovate[bot] wants to merge 1 commit into
mainfrom
renovate/wasmtime-47.x

Conversation

@akua-renovate

@akua-renovate akua-renovate Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
wasmtime dependencies major 4347
wasmtime build-dependencies major 4347

Release Notes

bytecodealliance/wasmtime (wasmtime)

v47.0.3

Compare Source

47.0.3

Released 2026-07-31.

Fixed

v47.0.2

Compare Source

47.0.2

Released 2026-07-21.

Fixed
  • Fix async-delivered write-closed events for futures.
    #​13914

  • Fix call hooks with yields and concurrent execution.
    #​13871

v47.0.1

Compare Source

47.0.1

Released 2026-07-20.

Fixed
  • Fixed publication of wasmtime-cli to crates.io.
    #​13902

v47.0.0

Compare Source

47.0.0

Released 2026-07-20.

Added
  • Wasmtime now has the WebAssembly GC proposal enabled by default.
    #​13594

  • Wasmtime now has the WebAssembly exception-handling proposal enabled by
    default.
    #​13603

  • Cranelift now supports the compact unwind format on Mach-O platforms.
    #​13586

  • Wasmtime now supports bounds-checked unsafe intrinsics which take spectre
    mitigations into account.
    #​13597

  • The wasmtime::Engine type now supports reflection to determine the value of
    most Config options that were selected during creation.
    #​13671

  • Support for fibers on unsupported architectures is now supported through an
    opt-in compile time Cargo feature defining a C API embedders can implement.
    #​13620

  • Embedders can now create an ArrayRef with a memcpy-style constructor.
    #​13716

  • A new Accessor::poll_ready_for_concurrent_call API can be used to detect
    when backpressure indicates that a function is ready to be invoked.
    #​13683

Changed
  • Support for wasi-threads and Wasmtime's wasi-common crate have been removed.
    For more information see the associated RFC in Wasmtime.
    #​13558

  • The call_indirect instruction of final super types has been optimized when
    the GC proposal is enabled.
    #​13572

  • Cranelift's *_imm builder helpers have been deprecated in favor of
    *_imm_{s,u} helpers.
    #​13583

  • The wasmtime CLI's syntax supported for --invoke with components now
    supports fully qualified WIT interface names.
    #​13564

  • Cranelift's stack_{load,store} instructions have been removed.
    #​13580

  • Cranelift's {band,bor,bxor}_not instructions have been removed.
    #​13590

  • Cranelift's global_value instruction has been removed.
    #​13682

  • The wasmtime wizer subcommand now supports specifying the initialization
    function with WAVE for components.
    #​13582

  • Wasmtime's codegen on aarch64 for the i32x4.relaxed_dot_i8x16_i7x16_add_s
    wasm instruction now uses a single sdot instruction where possible.
    #​13640

  • Wasmtime's .wasmtime{traps,addrmap} sections in *.cwasm files are now
    significantly smaller.
    #​13628

  • Wasmtime now supports removing symbols from *.cwasm files and additionally
    has a documentation page about producing minimally-sized *.cwasm outputs.
    #​13630

  • Wasmtime now suports resources in the named_imports option of bindgen!.
    #​13666

  • Wasmtime now invokes the host's socket_addr_check callback for implicit
    binds performed in WASIp3.
    #​13677

  • Wasmtime's component-to-component sync-to-sync fused adapters have been
    optimized.
    #​13695

  • Cranelift now supports RISC-V's Zvbb extension.
    #​13738

Fixed
  • The IPV6_V6ONLY option is now set for UDP sockets.
    #​13596

  • Uncaught wasm exceptions at component boundaries are now turned into traps to
    prevent components catching exceptions from other components.
    #​13613

  • Addresses being sent do with WASIp3 and UDP are now validated as they are in
    WASIp2.
    #​13631

  • GC roots on component model fiber stacks are now properly traced.
    #​13693

  • An unaligned load when reading debug state slot values has been fixed.
    #​13791

v46.0.2

Compare Source

46.0.2

Released 2026-07-31.

Fixed

v46.0.1

Compare Source

46.0.1

Released 2026-06-24.

Fixed
  • WASI hard links and renames check wasmtime-wasi's FilePerms for destination
    GHSA-4ch3-9j33-3pmj
  • Explicit hint for generic call in wasmtime wit-bindgen.
    #​13719

v46.0.0

Compare Source

46.0.0

Released 2026-06-22.

Added
  • Added opt-in support for the WebAssembly branch-hinting proposal: the
    metadata.code.branch_hint custom section is parsed and used to mark cold
    blocks during Cranelift compilation, behind Config::wasm_branch_hinting
    (off by default).
    #​13459

  • Wasmtime's C API now supports type reflection of GC values.
    #​13268

  • Wasmtime now supports being compiled to arm64_32 platforms.
    #​13259

  • The cranelift-frontend crate,the RISC-V Cranelift backend, and Wasmtime's
    component-model-async feature now support no_std.
    #​13401
    #​13479
    #​13533

  • Wasmtime has initial support for the component model (implements "...")
    feature.
    #​13361
    #​13497
    #​13513

  • The wasmtime CLI now supports configuring the initial-cwd property of
    WASI.
    #​13468

  • The wasmtime serve subcommand now supports --header to set headers for the
    guest.
    #​13471

  • Wasmtime supports WASI 0.2.12, which notably includes exit-with-code in
    stable.
    #​13536

  • Wasmtime's component-model-async-bytes feature was renamed to
    component-model-bytes and now lifting/lowering using Bytes and BytesMut
    is directly supported.
    #​13366

  • Wasmtime now exposes the async call stack of components through its public API
    which can be used to determine which root task performed an import call.
    #​13510

  • Wasmtime now supports WASI 0.3.0 by default and the component-model-async
    wasm feature is now enabled by default.
    #​13612

Changed
  • Performance of bulk-data-transfer instructions such as
    {array,table,memory}.{copy,fill,init} have been improved.
    #​13312
    #​13367
    #​13368
    #​13382
    #​13407
    #​13424
    #​13438
    #​13460
    #​13524

  • Codegen for conditions based on ctz or clz has been optimized.
    #​13332
    #​13343

  • Cranelift now optimizes conditional branches of constant conditions into
    unconditional jumps.
    #​13267
    #​13391

  • Wasmtime's copying collector now has an in-wasm fast path for its bump
    allocator.
    #​13323

  • Wasmtime's GC implementation has been hardened in the face of GC heap
    corruption to avoid panicking or aborting. Corruption is returned as a
    WasmtimeBug type for embedders to detect and safely tear down the
    store/instance.
    #​13321
    #​13320

  • Cranelift's MemFlags type is now renamed to MemFlagsData, and
    AliasRegions are now stored in the DFG.
    #​13353
    #​13354

  • Wasmtime now handles OOM gracefully in more situations.
    #​13371
    #​13372
    #​13374
    #​13375
    #​13376
    #​13377
    #​13378
    #​13379
    #​13388
    #​13413
    #​13412
    #​13414

  • Cranelift's egraph rewrite pass now uses a concept of fuel to avoid
    exponential blowup of rewrites.
    #​13390

  • Wasmtime now consumes fuel in bulk-data-transfer instructions proportional to
    the size of the transfer.
    #​13393
    #​13448

  • Cranelift's ISLE format now supports structs as well as tuple fields for
    structs/enums.
    #​13319
    #​13335

  • Wasmtime's implementation of passive element and data segments is now
    optimized to perform more work in wasm itself and has a refactored
    representation on the host.
    #​13394
    #​13444

  • Heuristics for triggering GC in the DRC collector have been adjusted to avoid
    blowups seen in the wild.
    #​13422

  • Wasmtime's default garbage collector is now the copying collector instead of
    the deferred-reference-counting collector. This collector should be more
    performant in most situations and additionally have the ability to collect
    cycles.
    #​13439

  • Wasmtime now traps if a waitable is being waited on synchronously and
    additionally added to a waitable-set.
    #​13415

  • Wasmtime's behavior with subtask.cancel is now adjusted to resume the
    cancelled task immediately instead of always yielding.
    #​13443

  • The wasmtime_wasi_http::handler module has had its interface overhauled to
    better handle configuring the lifecycle of a request as it flows through
    the system in terms of timeouts and such.
    #​13404

  • Most of Wasmtime's instance initialization is now compiled into a per-module
    initialization function rather than happening through the host in Wasmtime.
    #​13487

  • The InstanceExportLookup trait has been generalized into ExportLookup, and
    this is now optionally implemented for wit_parser::ItemName with the
    wit-parser crate feature.
    #​13505

  • Many of Cranelift's *_imm instructions have been removed in favor as they
    were just sugar over other opcodes. Builder-style methods remain, however.
    #​13527
    #​13541
    #​13543
    #​13545
    #​13548
    #​13553

  • Wasmtime's caching behavior is no longer gated on cfg(debug_assertions) and
    has been adjusted to handle a git source differently.
    #​13535

  • Bindings generation for store-using *WithStore traits now have a type
    parameter of the store on the trait itself instead of on every method.
    #​13549

  • Wasmtime now requires Rust 1.94.0 to compile.
    #​13547

Fixed
  • Wasmtime's copying collector has had a few bugs related to how it's translated
    to CLIF fixed.
    #​13381

  • Returning a ThrownException when there wasn't a pending exception within a
    store has been fixed.
    #​13306

  • A DRC corruption issue when overwriting an i31ref slot has been fixed.
    #​13307

  • Taking a store's exception from a debug handler has been fixed.
    #​13310

  • Alignment checks of atomics with Winch have been fixed.
    #​13337

  • GC barriers around managing the pending exception within a store have been
    fixed.
    #​13330

  • Cranelift's handling of short jumps on some architectures is now improved to
    handle very large basic blocks.
    #​13392

  • Cross-component stream copies have been fixed.
    #​13418

  • Cranelift-generated stack maps have been fixed in a few cases.
    #​13449
    #​13466
    #​13498

  • Component-to-component adapters which use resources in arguments and disable
    concurrency_support have been fixed.
    #​13542

  • A panic in substituted_component_type has been fixed when guests have
    exported resources.
    #​13608

v45.0.3

Compare Source

45.0.3

Released 2026-06-24.

Fixed
  • WASI hard links and renames check wasmtime-wasi's FilePerms for destination
    GHSA-4ch3-9j33-3pmj

v45.0.2

Compare Source

45.0.2

Released 2026-06-15.

Fixed

v45.0.1

Compare Source

45.0.1

Released 2026-06-05.

Fixed
  • Fixed regression with WASIp2 zero-delay clocks/timers: allow repeat calls to
    .ready() to make progress.
    #​13511

v45.0.0

Compare Source

45.0.0

Released 2026-05-21.

Added
  • Winch now respects the enable_nan_canonicalization setting.
    #​12939

  • Initial support for invoking component functions asynchronously has been added
    to the C API.
    #​12973

  • Cranelift's s390x backend implements more instructions from z17 and also
    implements more CLIF arithmetic overflow instructions.
    #​12523
    #​12707

  • Wasmtime's support for handling OOM in more APIs has expanded and is now
    documented as well.
    #​12993
    #​12988
    #​13017
    #​13047
    #​13049
    #​13051
    #​13074
    #​13083
    #​13088
    #​13224

  • The Component type now offers reflection APIs over the compiled in-memory
    view of instructions in the same manner Module does.
    #​13073

  • The wasmtime CLI now has a hot-blocks subcommand to explore a
    perf-recorded output and show hot basic blocks of WebAssembly instructions.
    #​13077

  • Wasmtime now has an initial implementation of a copying collector for GC,
    which notably enables collecting cycles unlike the DRC collector.
    #​13093
    #​13107

  • The WASI inherit_network and allow_ip_name_lookup options were added to
    the C API.
    #​13145

  • The C API now has the ability to select Winch as well as the
    RegallocAlgorithm in use.
    #​13155

  • The Wasmtime CLI now has a -Dmax-backtrace=N argument to control the number
    of frames captured.
    #​13218

  • Wasmtime now tracks whether there are any active async tasks within a store
    and provides an embedder API to learn when there are none left.
    #​13246

  • Cranelift now has an idempotent-store elimination pass.
    #​13251

Changed
  • Wasmtime's DRC collector has received some optimizations to get some wins on
    local benchmarking.
    #​12969
    #​12974

  • Wasmtime's C API can now be built without the gc crate feature of Wasmtime.
    #​12805

  • Wasmtime now has an implemented and improved grow-vs-collect heuristic to
    improve behavior of GC-using programs.
    #​12942

  • Cranelift on aarch64 now uses a more optimized frame layout for tail-call-only
    functions.
    #​11608

  • Wasmtime now supports a separate set of GC tunables different from the main
    set of tunables for linear memory to enable configuring it separately.
    #​13080

  • Wasmtime no longer uses pointer authentication instructions for the
    implementation of fibers due to issues on Android.
    #​13118

  • Wasmtime now requires Rust 1.93.0 to compile.
    #​13127

  • The behavior of using Wasmtime as a CMake subproject has been improved.
    #​13157

  • Reference types in the C/C++ API have been refactored and reorganized.
    #​13154
    #​13235

  • The Wasmtime CLI now warns about usage of wasi-common or wasi-threads as these
    components are slated for removal in Wasmtime 47.0.0. For more information see
    the associated RFC.
    #​13264

  • Inlining in Wasmtime now has a different set of configuration options, notably
    more values are packed into -Cinlining=....
    #​13250
Fixed
  • The WASIp1-to-WASIp2 adapter now handles nonblocking I/O in fd_{read,write}
    more appropriately.
    #​13111

  • The Host header is injected less often for wasmtime-wasi-http.
    #​13138

  • Downcasts of funcref values now uses the correct type for imported
    functions.
    #​13161

  • The DRC allocator's memory usage during tracing has been reduced when there
    are large arrays.
    #​13192

  • The performance of reading stdin in WASI has been improved.
    #​13256

  • WASI path_open(TRUNCATE) bypasses FilePerms::WRITE host restriction.
    GHSA-2r75-cxrj-cmph

v44.0.3

Compare Source

44.0.3

Released 2026-06-15.

Fixed

v44.0.2

Compare Source

44.0.2

Released 2026-05-21.

Fixed

v44.0.1

Compare Source

44.0.1

Released 2026-04-30.

Fixed
  • Panic when allocating a table exceeding the size of the host's address space.
    GHSA-p8xm-42r7-89xg

v44.0.0

Compare Source

44.0.0

Released 2026-04-20.

Added
  • The wasmtime CLI now supports a -g flag which runs a built-in wasm program
    to host a gdbstub-compatible server (can be connected to with LLDB) to debug
    guest programs.
    #​12756
    #​12771
    #​12856
    #​12859

  • Wasmtime now has experimental support for the map<K, V> type in the
    component model.
    #​12216

  • Wasmtime's C API now supports wasm tag types.
    #​12763
    #​12803

  • Wasmtime's C API now supports exceptions.
    #​12861

  • Wasmtime's C API has more support for the GC proposal.
    #​12914
    #​12915
    #​12916
    #​12917

  • An initial implementation of the wasi:tls proposal for the 0.3.0-draft
    version has been added.
    #​12834

Changed
  • The demangle Cargo feature of the wasmtime crate is now compatible with
    no_std targets.
    #​12740

  • The wasmtime-wasi-tls-* crates are now merged into one crate with feature
    flags for each backend.
    #​12780

  • Wasmtime now requires Rust 1.92.0 or later to build.
    #​12828

  • The cranelift-codegen crate now compiles for no_std targets.
    #​12812

  • The csdb instruction, a defense-in-depth measure for spectre, is no longer
    emitted by default on aarch64 to match what peer runtimes are doing. In some
    situations this is known to provide up to a 6x performance boost on macOS as
    well.
    #​12932

Fixed
  • Wasmtime's native DWARF has been improved on aarch64 to support recovering
    values more frequently.
    #​12779

  • A significant number of minor issues have been fixed throughout this release.
    In addition to the security advisories found by LLMs there have also
    been a large number of other issues identified as well. Many minor fixes are
    present in this release for various situations for issues found in this
    manner.

v43.0.2

Compare Source

43.0.2

Released 2026-04-30.

Fixed
  • Panic when allocating a table exceeding the size of the host's address space.
    GHSA-p8xm-42r7-89xg

Configuration

📅 Schedule: (UTC)

  • 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants