chore(deps): update rust crate wasmtime to v47 - #89
Open
akua-renovate[bot] wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR contains the following updates:
43→4743→47Release Notes
bytecodealliance/wasmtime (wasmtime)
v47.0.3Compare Source
47.0.3
Released 2026-07-31.
Fixed
Stores can mix up type indices between engines.
GHSA-hgjw-h833-99q9
Preemption and traps during bulk operations enable breaking internal VM state.
GHSA-2hw9-mc66-jc2q
v47.0.2Compare 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.1Compare Source
47.0.1
Released 2026-07-20.
Fixed
wasmtime-clito crates.io.#13902
v47.0.0Compare 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::Enginetype now supports reflection to determine the value ofmost
Configoptions 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
ArrayRefwith a memcpy-style constructor.#13716
A new
Accessor::poll_ready_for_concurrent_callAPI can be used to detectwhen backpressure indicates that a function is ready to be invoked.
#13683
Changed
Support for wasi-threads and Wasmtime's
wasi-commoncrate have been removed.For more information see the associated RFC in Wasmtime.
#13558
The
call_indirectinstruction offinalsuper types has been optimized whenthe GC proposal is enabled.
#13572
Cranelift's
*_immbuilder helpers have been deprecated in favor of*_imm_{s,u}helpers.#13583
The
wasmtimeCLI's syntax supported for--invokewith components nowsupports fully qualified WIT interface names.
#13564
Cranelift's
stack_{load,store}instructions have been removed.#13580
Cranelift's
{band,bor,bxor}_notinstructions have been removed.#13590
Cranelift's
global_valueinstruction has been removed.#13682
The
wasmtime wizersubcommand now supports specifying the initializationfunction with WAVE for components.
#13582
Wasmtime's codegen on aarch64 for the
i32x4.relaxed_dot_i8x16_i7x16_add_swasm instruction now uses a single
sdotinstruction where possible.#13640
Wasmtime's
.wasmtime{traps,addrmap}sections in*.cwasmfiles are nowsignificantly smaller.
#13628
Wasmtime now supports removing symbols from
*.cwasmfiles and additionallyhas a documentation page about producing minimally-sized
*.cwasmoutputs.#13630
Wasmtime now suports resources in the
named_importsoption ofbindgen!.#13666
Wasmtime now invokes the host's
socket_addr_checkcallback for implicitbinds 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_V6ONLYoption 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.2Compare Source
46.0.2
Released 2026-07-31.
Fixed
Stores can mix up type indices between engines.
GHSA-hgjw-h833-99q9
Preemption and traps during bulk operations enable breaking internal VM state.
GHSA-2hw9-mc66-jc2q
v46.0.1Compare Source
46.0.1
Released 2026-06-24.
Fixed
GHSA-4ch3-9j33-3pmj
#13719
v46.0.0Compare Source
46.0.0
Released 2026-06-22.
Added
Added opt-in support for the WebAssembly branch-hinting proposal: the
metadata.code.branch_hintcustom section is parsed and used to mark coldblocks 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_32platforms.#13259
The
cranelift-frontendcrate,the RISC-V Cranelift backend, and Wasmtime'scomponent-model-asyncfeature now supportno_std.#13401
#13479
#13533
Wasmtime has initial support for the component model
(implements "...")feature.
#13361
#13497
#13513
The
wasmtimeCLI now supports configuring theinitial-cwdproperty ofWASI.
#13468
The
wasmtime servesubcommand now supports--headerto set headers for theguest.
#13471
Wasmtime supports WASI 0.2.12, which notably includes
exit-with-codeinstable.
#13536
Wasmtime's
component-model-async-bytesfeature was renamed tocomponent-model-bytesand now lifting/lowering usingBytesandBytesMutis 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-asyncwasm 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
ctzorclzhas 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
WasmtimeBugtype for embedders to detect and safely tear down thestore/instance.
#13321
#13320
Cranelift's
MemFlagstype is now renamed toMemFlagsData, andAliasRegions 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 forstructs/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.cancelis now adjusted to resume thecancelled task immediately instead of always yielding.
#13443
The
wasmtime_wasi_http::handlermodule has had its interface overhauled tobetter 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
InstanceExportLookuptrait has been generalized intoExportLookup, andthis is now optionally implemented for
wit_parser::ItemNamewith thewit-parsercrate feature.#13505
Many of Cranelift's
*_imminstructions have been removed in favor as theywere 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)andhas been adjusted to handle a git source differently.
#13535
Bindings generation for store-using
*WithStoretraits now have a typeparameter 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
ThrownExceptionwhen there wasn't a pending exception within astore 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_supporthave been fixed.#13542
A panic in
substituted_component_typehas been fixed when guests haveexported resources.
#13608
v45.0.3Compare Source
45.0.3
Released 2026-06-24.
Fixed
GHSA-4ch3-9j33-3pmj
v45.0.2Compare Source
45.0.2
Released 2026-06-15.
Fixed
fd_renumberimplementation.GHSA-3p27-qvp9-27qf
v45.0.1Compare Source
45.0.1
Released 2026-06-05.
Fixed
.ready()to make progress.#13511
v45.0.0Compare Source
45.0.0
Released 2026-05-21.
Added
Winch now respects the
enable_nan_canonicalizationsetting.#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
Componenttype now offers reflection APIs over the compiled in-memoryview of instructions in the same manner
Moduledoes.#13073
The
wasmtimeCLI now has ahot-blockssubcommand to explore aperf-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_networkandallow_ip_name_lookupoptions were added tothe C API.
#13145
The C API now has the ability to select
Winchas well as theRegallocAlgorithmin use.#13155
The Wasmtime CLI now has a
-Dmax-backtrace=Nargument to control the numberof 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
gccrate 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
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
Hostheader is injected less often for wasmtime-wasi-http.#13138
Downcasts of
funcrefvalues now uses the correct type for importedfunctions.
#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::WRITEhost restriction.GHSA-2r75-cxrj-cmph
v44.0.3Compare Source
44.0.3
Released 2026-06-15.
Fixed
fd_renumberimplementation.GHSA-3p27-qvp9-27qf
v44.0.2Compare Source
44.0.2
Released 2026-05-21.
Fixed
FilePerms::WRITEhost restriction.GHSA-2r75-cxrj-cmph
v44.0.1Compare Source
44.0.1
Released 2026-04-30.
Fixed
GHSA-p8xm-42r7-89xg
v44.0.0Compare Source
44.0.0
Released 2026-04-20.
Added
The
wasmtimeCLI now supports a-gflag which runs a built-in wasm programto host a
gdbstub-compatible server (can be connected to with LLDB) to debugguest programs.
#12756
#12771
#12856
#12859
Wasmtime now has experimental support for the
map<K, V>type in thecomponent 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:tlsproposal for the 0.3.0-draftversion has been added.
#12834
Changed
The
demangleCargo feature of thewasmtimecrate is now compatible withno_stdtargets.#12740
The
wasmtime-wasi-tls-*crates are now merged into one crate with featureflags for each backend.
#12780
Wasmtime now requires Rust 1.92.0 or later to build.
#12828
The
cranelift-codegencrate now compiles forno_stdtargets.#12812
The
csdbinstruction, a defense-in-depth measure for spectre, is no longeremitted 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.2Compare Source
43.0.2
Released 2026-04-30.
Fixed
GHSA-p8xm-42r7-89xg
Configuration
📅 Schedule: (UTC)
🚦 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.
This PR has been generated by Mend Renovate.