From 171743e25ea493248469df2fe83b4b69d8cedcb9 Mon Sep 17 00:00:00 2001 From: Ralf Anton Beier Date: Tue, 30 Jun 2026 21:39:52 +0200 Subject: [PATCH] build(deps): bump wasmtime 44.0.3 -> 45.0.3 for RUSTSEC-2026-0188 (#632) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit RUSTSEC-2026-0188: WASI hard links and renames bypass wasmtime-wasi's FilePerms on the destination path. Our pinned 44.0.3 is affected; the fix landed in 45.0.3 / 46.0.1. Pin to >=45.0.3 (stay <46 to minimize churn). The 44->45 bump is source-compatible — `rivet-core --features wasm` (the only wasmtime user, src/wasm_runtime.rs) compiles unchanged and all 13 wasm_runtime tests pass. `cargo audit` no longer reports RUSTSEC-2026-0188. Same maintenance class as #542 (43->44 for RUSTSEC-2026-0182, carried by 45.x). Refs: REQ-086 Co-Authored-By: Claude Opus 4.8 --- Cargo.lock | 317 ++++++++++++++++++++++------------------------------- Cargo.toml | 11 +- 2 files changed, 136 insertions(+), 192 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 516d0aa8..5ee3cbdb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -251,7 +251,7 @@ dependencies = [ "bitflags 2.11.1", "cexpr", "clang-sys", - "itertools 0.10.5", + "itertools 0.12.1", "log", "prettyplease", "proc-macro2", @@ -406,7 +406,7 @@ checksum = "20a158160765c6a7d0d8c072a53d772e4cb243f38b04bfcf6b4939cfbe7482e7" dependencies = [ "cap-primitives", "cap-std", - "rustix 1.1.4", + "rustix", "smallvec", ] @@ -422,22 +422,12 @@ dependencies = [ "io-lifetimes", "ipnet", "maybe-owned", - "rustix 1.1.4", + "rustix", "rustix-linux-procfs", "windows-sys 0.59.0", "winx", ] -[[package]] -name = "cap-rand" -version = "3.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8144c22e24bbcf26ade86cb6501a0916c46b7e4787abdb0045a467eb1645a1d" -dependencies = [ - "ambient-authority", - "rand 0.8.6", -] - [[package]] name = "cap-std" version = "3.4.5" @@ -447,7 +437,7 @@ dependencies = [ "cap-primitives", "io-extras", "io-lifetimes", - "rustix 1.1.4", + "rustix", ] [[package]] @@ -460,7 +450,7 @@ dependencies = [ "cap-primitives", "iana-time-zone", "once_cell", - "rustix 1.1.4", + "rustix", "winx", ] @@ -691,27 +681,27 @@ dependencies = [ [[package]] name = "cranelift-assembler-x64" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3867f7a56768640a79fc660d2f60298251dc6d65b5d1c907706cd1afff024957" +checksum = "3d521bdbc6098937af83ef4ab6d5c07398126bc71878f7ef4ea9499977978ef5" dependencies = [ "cranelift-assembler-x64-meta", ] [[package]] name = "cranelift-assembler-x64-meta" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0661d63dcf8fc4a6538c1ee4d523917c5b27e9fce7a4114cdf9e2b30b4043cf" +checksum = "3dde0b83164d4a497860af4236271178bc640512b067101e0853e4f74eaa4df5" dependencies = [ "cranelift-srcgen", ] [[package]] name = "cranelift-bforest" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d535b489159ea63e3c40dfbe8d0e12bfb71f2a14845ef2407353e06c5a697c" +checksum = "0111d110b72b4efad69a372e29e21628652fd0bcab66967e5c8350ab679affd5" dependencies = [ "cranelift-entity", "wasmtime-internal-core", @@ -719,9 +709,9 @@ dependencies = [ [[package]] name = "cranelift-bitset" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3af4f7d421b2354deb01d714266022f38fcdbebc9f5f1ec6d310d3c27286d9e" +checksum = "cf01ecc92fc5499789d79c3b817299d5a8ddd828d31dcf0f9cc3cc66f38dbb36" dependencies = [ "serde", "serde_derive", @@ -730,9 +720,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09fe4c289e67e0221d1705734a57f95e25c289ed0ead7728743ea21285fc4cf1" +checksum = "6cd2563bead0090c3879a7ff7327f7550c9d59bb5d05ecc8cd7886977aa3125a" dependencies = [ "bumpalo", "cranelift-assembler-x64", @@ -744,7 +734,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "libm", "log", "pulley-interpreter", @@ -758,9 +748,9 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3063e5363dc5ee6ee8edd930314582c08eb91c209b9564da1cd667f6424b9b3" +checksum = "9640d250d26f9381a73dc7f9862b27928d4809119aec73be0e556612e67b6a99" dependencies = [ "cranelift-assembler-x64-meta", "cranelift-codegen-shared", @@ -771,24 +761,24 @@ dependencies = [ [[package]] name = "cranelift-codegen-shared" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34b9c8dbc9edf37744918e56898d4979ef1e764e8e4bbe8b4d50250838ddfe8" +checksum = "a07f156b90efc94371ddb3536f76e4ab671ad2e093bfa5511e10198cadbb0c47" [[package]] name = "cranelift-control" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eed9dc54204dc99aad19669bca50142659ed583396d9a99a2aef34d7c136ef4" +checksum = "d75a76fd9dd37dcbc3d2d2e00abe3281a7e88adc035fba3b8114cc69981576ec" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa2846b239a046217ecf95cfed0e31be4e86843785d07438ad33f456871e888" +checksum = "2eea22522144ba08c7e7ef94bfc25d474ef016c2771974b8ab1986734ac85965" dependencies = [ "cranelift-bitset", "serde", @@ -798,9 +788,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "144f70fa9cd07efb83497c12dc8fb73f360a690cd990c44e8ceebc293d8c13b5" +checksum = "efa2826c80dff1d93b19b3cfbcaf9fae44c78d739a98d146dd5bd89c51e14367" dependencies = [ "cranelift-codegen", "log", @@ -810,15 +800,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0733ca5b2aaa5f6d5d6a1439e3c44280d34730d4d5c262ca08c6775c8d83f191" +checksum = "e238a69b95c5415456f22189494a12db94f313bb72b6ec9cc88ddf2f1056e28e" [[package]] name = "cranelift-native" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b1290d6193b171172d5fe9a6e42326edf487a79f211fbf1e76f912a4aed035" +checksum = "eceb0ebd8d6aef6bb287e8d532a164b0db1c0062961211e9c22a91f67521c098" dependencies = [ "cranelift-codegen", "libc", @@ -827,9 +817,9 @@ dependencies = [ [[package]] name = "cranelift-srcgen" -version = "0.131.3" +version = "0.132.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce0d5c2b4d719566816a0f1c9a9712d35d61e27df0ffd6c72a9afec9048db6c0" +checksum = "004643f39a7bec553de5263d650db30e5b9caec1d5cbe065fd732b7ec9ae40d0" [[package]] name = "crc32fast" @@ -1145,17 +1135,6 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" -[[package]] -name = "fd-lock" -version = "4.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce92ff622d6dadf7349484f42c93271a0d49b7cc4d466a936405bacbe10aa78" -dependencies = [ - "cfg-if", - "rustix 1.1.4", - "windows-sys 0.59.0", -] - [[package]] name = "filetime" version = "0.2.27" @@ -1252,7 +1231,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94e7099f6313ecacbe1256e8ff9d617b75d1bcb16a6fddef94866d225a01a14a" dependencies = [ "io-lifetimes", - "rustix 1.1.4", + "rustix", "windows-sys 0.59.0", ] @@ -1575,11 +1554,6 @@ name = "hashbrown" version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" -dependencies = [ - "foldhash 0.2.0", - "serde", - "serde_core", -] [[package]] name = "hashbrown" @@ -1588,6 +1562,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" dependencies = [ "foldhash 0.2.0", + "serde", + "serde_core", ] [[package]] @@ -2229,12 +2205,6 @@ dependencies = [ "redox_syscall 0.7.4", ] -[[package]] -name = "linux-raw-sys" -version = "0.4.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" - [[package]] name = "linux-raw-sys" version = "0.12.1" @@ -2331,7 +2301,7 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227" dependencies = [ - "rustix 1.1.4", + "rustix", ] [[package]] @@ -2834,9 +2804,9 @@ checksum = "007d8adb5ddab6f8e3f491ac63566a7d5002cc7ed73901f72057943fa71ae1ae" [[package]] name = "pulley-interpreter" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34dff5fd3d9ac4845939fcb4597cd413cb244bc530448ed4766d11b1725e53d0" +checksum = "b04adf8f93264685f2c70a3edb8f828c791e71b22659253319c33f29d1165aef" dependencies = [ "cranelift-bitset", "log", @@ -2846,9 +2816,9 @@ dependencies = [ [[package]] name = "pulley-macros" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c60fb1c885bdb1efd7c50e8e973714de558b75a65f20c3e9a41398c652aa44b" +checksum = "2c120a6af1a574a42efcd9df2ad27cb78bc04118c5e0c69e90599f17301a1c7a" dependencies = [ "proc-macro2", "quote", @@ -3364,19 +3334,6 @@ version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" -[[package]] -name = "rustix" -version = "0.38.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" -dependencies = [ - "bitflags 2.11.1", - "errno", - "libc", - "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", -] - [[package]] name = "rustix" version = "1.1.4" @@ -3386,7 +3343,7 @@ dependencies = [ "bitflags 2.11.1", "errno", "libc", - "linux-raw-sys 0.12.1", + "linux-raw-sys", "windows-sys 0.61.2", ] @@ -3397,7 +3354,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fc84bf7e9aa16c4f2c758f27412dc9841341e16aa682d9c7ac308fe3ee12056" dependencies = [ "once_cell", - "rustix 1.1.4", + "rustix", ] [[package]] @@ -4022,22 +3979,6 @@ dependencies = [ "libc", ] -[[package]] -name = "system-interface" -version = "0.27.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc4592f674ce18521c2a81483873a49596655b179f71c5e05d10c1fe66c78745" -dependencies = [ - "bitflags 2.11.1", - "cap-fs-ext", - "cap-std", - "fd-lock", - "io-lifetimes", - "rustix 0.38.44", - "windows-sys 0.59.0", - "winx", -] - [[package]] name = "tap" version = "1.0.1" @@ -4059,7 +4000,7 @@ dependencies = [ "fastrand", "getrandom 0.4.2", "once_cell", - "rustix 1.1.4", + "rustix", "windows-sys 0.61.2", ] @@ -4611,9 +4552,9 @@ dependencies = [ [[package]] name = "wasm-compose" -version = "0.246.2" +version = "0.248.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05a2b3bad87cc1ce45b63425ec09a854cc4cb369231c9fed1fee31538103efb" +checksum = "96ba953e2b9b4b4b52a31cf4e3ee1c1374c872b6e012cf2138d1c37cba00bfd6" dependencies = [ "anyhow", "heck 0.5.0", @@ -4621,8 +4562,8 @@ dependencies = [ "log", "petgraph 0.6.5", "smallvec", - "wasm-encoder 0.246.2", - "wasmparser 0.246.2", + "wasm-encoder 0.248.0", + "wasmparser 0.248.0", "wat", ] @@ -4638,22 +4579,22 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.246.2" +version = "0.248.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61fb705ce81adde29d2a8e99d87995e39a6e927358c91398f374474746070ef7" +checksum = "ac92cf547bc18d27ecc521015c08c353b4f18b84ab388bb6d1b6b682c620d9b6" dependencies = [ "leb128fmt", - "wasmparser 0.246.2", + "wasmparser 0.248.0", ] [[package]] name = "wasm-encoder" -version = "0.247.0" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b6733b8b91d010a6ac5b0fb237dc46a19650bc4c67db66857e2e787d437204" +checksum = "8185ae345fa5687c054626ff9a50e7089797a343d9904d1dc9820eb4c4d3196f" dependencies = [ "leb128fmt", - "wasmparser 0.247.0", + "wasmparser 0.252.0", ] [[package]] @@ -4682,12 +4623,12 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.246.2" +version = "0.248.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71cde4757396defafd25417cfb36aa3161027d06d865b0c24baaae229aac005d" +checksum = "aa4439c5eee9df71ee0c6efb37f63b1fcb1fec38f85f5142c54e7ed05d33091a" dependencies = [ "bitflags 2.11.1", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "indexmap 2.14.0", "semver", "serde", @@ -4695,9 +4636,9 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.247.0" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e6fb4c2bee46c5ea4d40f8cdb5c131725cd976718ec56f1c8e82fbde5fa2a80" +checksum = "d3eb099dcadcde5be9eef55e3a337128efd4e44b4c93122487e4d2e4e1c6627c" dependencies = [ "bitflags 2.11.1", "indexmap 2.14.0", @@ -4706,20 +4647,20 @@ dependencies = [ [[package]] name = "wasmprinter" -version = "0.246.2" +version = "0.248.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e41f7493ba994b8a779430a4c25ff550fd5a40d291693af43a6ef48688f00e3" +checksum = "30b264a5410b008d4d199a92bf536eae703cbd614482fc1ec53831cf19e1c183" dependencies = [ "anyhow", "termcolor", - "wasmparser 0.246.2", + "wasmparser 0.248.0", ] [[package]] name = "wasmtime" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d807f646bfecc1dbb4990d8c864beebccbdb3f2cd1b39b2b82957b4e294c6058" +checksum = "8a83ef84ac8bab735c89e27b0268b0586099fbe81281ae45be2b8e4f407b2daa" dependencies = [ "addr2line", "async-trait", @@ -4741,7 +4682,7 @@ dependencies = [ "postcard", "pulley-interpreter", "rayon", - "rustix 1.1.4", + "rustix", "semver", "serde", "serde_derive", @@ -4750,8 +4691,8 @@ dependencies = [ "target-lexicon", "tempfile", "wasm-compose", - "wasm-encoder 0.246.2", - "wasmparser 0.246.2", + "wasm-encoder 0.248.0", + "wasmparser 0.248.0", "wasmtime-environ", "wasmtime-internal-cache", "wasmtime-internal-component-macro", @@ -4770,9 +4711,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48b945309908f22473ebcd585ac2993948044228491cd96941d367aa81a49c3f" +checksum = "439686d3deb38525c86b88bbc90f7ba669f70c8edc7d6b35147c738bbef5ff76" dependencies = [ "anyhow", "cpp_demangle", @@ -4780,7 +4721,7 @@ dependencies = [ "cranelift-bitset", "cranelift-entity", "gimli", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "indexmap 2.14.0", "log", "object", @@ -4792,8 +4733,8 @@ dependencies = [ "sha2", "smallvec", "target-lexicon", - "wasm-encoder 0.246.2", - "wasmparser 0.246.2", + "wasm-encoder 0.248.0", + "wasmparser 0.248.0", "wasmprinter", "wasmtime-internal-component-util", "wasmtime-internal-core", @@ -4801,15 +4742,15 @@ dependencies = [ [[package]] name = "wasmtime-internal-cache" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f14b8b93c2137c88ed84114d9a09cb11cb8bf9394aba4856e48f5304a4f99eec" +checksum = "8f2799e6c35393c2a38999f13e4c80ab5d5d9756082bb554cbd1f60485a18293" dependencies = [ "base64", "directories-next", "log", "postcard", - "rustix 1.1.4", + "rustix", "serde", "serde_derive", "sha2", @@ -4821,9 +4762,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-component-macro" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7307dec6251a18ffa9df03120d2945ac2476ce150b5b099f39b199e8f81464dc" +checksum = "81d2c5850fb8c448792453765d97f6f01096a32708f3c36798e86220763c90c0" dependencies = [ "anyhow", "proc-macro2", @@ -4831,32 +4772,32 @@ dependencies = [ "syn 2.0.117", "wasmtime-internal-component-util", "wasmtime-internal-wit-bindgen", - "wit-parser 0.246.2", + "wit-parser 0.248.0", ] [[package]] name = "wasmtime-internal-component-util" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a3d899b0270bcf04852f141bd9538cb162a436e7f56b2c6e0f4e57ecc70743a" +checksum = "0ed79c4e9ab416dcc5e46b9d1ec9b7c2e3c730deab525996b0de45a35fc8b2c3" [[package]] name = "wasmtime-internal-core" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedd3947487d0afdd37accb981466fcd60571e898004c8955111f88686581dfc" +checksum = "3073c03f97f871fe6400e68621c863b93ba79296f8e570285231952d23fcc804" dependencies = [ "anyhow", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "libm", "serde", ] [[package]] name = "wasmtime-internal-cranelift" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512fd846630c064bfc42909eeba90a7d26703b6ded09ad4778ff6afcbdc868dd" +checksum = "7a15981261d361f9c93b42929f446b4009840853ceea181ad6e17730f4016a0b" dependencies = [ "cfg-if", "cranelift-codegen", @@ -4872,7 +4813,7 @@ dependencies = [ "smallvec", "target-lexicon", "thiserror 2.0.18", - "wasmparser 0.246.2", + "wasmparser 0.248.0", "wasmtime-environ", "wasmtime-internal-core", "wasmtime-internal-unwinder", @@ -4881,14 +4822,14 @@ dependencies = [ [[package]] name = "wasmtime-internal-fiber" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15629ea71394be5812a52cb8fbc6cd039484ab1dd48fce5e1ef58ae89606289a" +checksum = "33aed9d91d54c9f861ba7e3c3130bded8a7a63e01fe58c3a9a36b45d6ee0fb57" dependencies = [ "cc", "cfg-if", "libc", - "rustix 1.1.4", + "rustix", "wasmtime-environ", "wasmtime-internal-versioned-export-macros", "windows-sys 0.61.2", @@ -4896,21 +4837,21 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-debug" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5fce5fedc1c952a64cdf3c87e4632af072d2aca0bc2c460d53296fb2654757d" +checksum = "944942118aab67e7b4febfe88a65d0af4cfd10af8ed0e79fd6cf39d75359ab7e" dependencies = [ "cc", "object", - "rustix 1.1.4", + "rustix", "wasmtime-internal-versioned-export-macros", ] [[package]] name = "wasmtime-internal-jit-icache-coherence" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10005b038e662775ac002f233e429447a58892e89918580fa67ce8cdd9192d0a" +checksum = "37dee05e8c35759826f6b926cd949c51f771b6a58619d8e60c63c3f3d3e5e59b" dependencies = [ "cfg-if", "libc", @@ -4920,9 +4861,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-unwinder" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03f3e0f474281b405a3e9d97239f83f643b572324d292e1ef9dc5e3e0ab04c68" +checksum = "a83f7ebe911a6f1605ff0d3a678472ddb1fcc57c3e2f6bae5dd4d170b625b3ed" dependencies = [ "cfg-if", "cranelift-codegen", @@ -4933,9 +4874,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-versioned-export-macros" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "910e5393af4aca456113581a5913b8d499cd2189013e983f8764d06ebc42b2ed" +checksum = "d75980644456dc003238766254b0e5f002704630237ccd0728747991fe2739d7" dependencies = [ "proc-macro2", "quote", @@ -4944,16 +4885,16 @@ dependencies = [ [[package]] name = "wasmtime-internal-winch" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55481651bea5b8336fb200fa49914ccf802f5e7617ba9ab0b4691f16d4f97ff8" +checksum = "81af36995b4720b32e3d667541b548a27184a859d09a6ee745eaba095f5a6f6e" dependencies = [ "cranelift-codegen", "gimli", "log", "object", "target-lexicon", - "wasmparser 0.246.2", + "wasmparser 0.248.0", "wasmtime-environ", "wasmtime-internal-cranelift", "winch-codegen", @@ -4961,37 +4902,37 @@ dependencies = [ [[package]] name = "wasmtime-internal-wit-bindgen" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d890c3804d0e46000fa901c86ac1a9fdedf684e72dfd64e582b56bb4a78a6746" +checksum = "ada06667b7948892703fcc9f0b9b337c2e78c334d74d4fa62e2f75f07fbb3659" dependencies = [ "anyhow", "bitflags 2.11.1", "heck 0.5.0", "indexmap 2.14.0", - "wit-parser 0.246.2", + "wit-parser 0.248.0", ] [[package]] name = "wasmtime-wasi" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa7f927779d92863a1447c1d88192b2242080608cb91ece69c177321488948b" +checksum = "fd8e9db77f7b60f4c5f6f72847f55eb646ed7ed2f68e362559ee07dc543fb408" dependencies = [ "async-trait", "bitflags 2.11.1", "bytes", "cap-fs-ext", "cap-net-ext", - "cap-rand", "cap-std", "cap-time-ext", + "cfg-if", "fs-set-times", "futures", "io-extras", "io-lifetimes", - "rustix 1.1.4", - "system-interface", + "rand 0.10.1", + "rustix", "thiserror 2.0.18", "tokio", "tracing", @@ -5004,9 +4945,9 @@ dependencies = [ [[package]] name = "wasmtime-wasi-io" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6fd8b702c2aa82bb4907da5ad44120b4385048f6a20731908a6e2485ea7567e" +checksum = "3805f02be91374a4fd02c0f947daf07bbaa6fbebb5909de5305fa5b0e9568f30" dependencies = [ "async-trait", "bytes", @@ -5026,24 +4967,24 @@ dependencies = [ [[package]] name = "wast" -version = "247.0.0" +version = "252.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579d2d47eb33b0cdf9b14723cb115f1e1b7d6e77aac6f0816e5b7c7aeaa418ff" +checksum = "942a3449d6a593fccc111a6241c8df52bda168af30e40bf9580d4394d7374c65" dependencies = [ "bumpalo", "leb128fmt", "memchr", "unicode-width", - "wasm-encoder 0.247.0", + "wasm-encoder 0.252.0", ] [[package]] name = "wat" -version = "1.247.0" +version = "1.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f4091c56437e86f2b57fa2fac72c4f528957a605b3f44f7c0b3b19a17ac5ee" +checksum = "c72a4ba7088f7bac94cf516e49882bdf97068904a563768cf249efc839ec42cb" dependencies = [ - "wast 247.0.0", + "wast 252.0.0", ] [[package]] @@ -5058,9 +4999,9 @@ dependencies = [ [[package]] name = "wiggle" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "165512f7870210d0fd45911990b832782b5fb82d40f4ce28cf86b40aaecd453c" +checksum = "4aca130e25a57e29bbb541441b6e261970a8469580bffebe904d96f0df67e41d" dependencies = [ "bitflags 2.11.1", "thiserror 2.0.18", @@ -5072,9 +5013,9 @@ dependencies = [ [[package]] name = "wiggle-generate" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7f63d06fdf2e9a133407b318574574f66ea6590ea7a42c4a7554c029824454a" +checksum = "1f0a45b47e893521cad81819f2e0db18a8b05086fd4bfb35369ed8830a8f0148" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -5086,9 +5027,9 @@ dependencies = [ [[package]] name = "wiggle-macro" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b976b7285ca32a637e21721021442691a2d7938ab4650cb99472a672e9def6c" +checksum = "e297e0325cffa6d368386b6e672e9d6c6a7ad34bdb8a5f49319db4decef2a990" dependencies = [ "proc-macro2", "quote", @@ -5129,9 +5070,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winch-codegen" -version = "44.0.3" +version = "45.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436a7fa4109b13b0e555d01ec615ab8b928b7834639aca7b2fdc1f55d70a1f0c" +checksum = "d73bc25d27222248f9bafc7e9945f61e74275360c3ea0d34008810d436140a53" dependencies = [ "cranelift-assembler-x64", "cranelift-codegen", @@ -5140,7 +5081,7 @@ dependencies = [ "smallvec", "target-lexicon", "thiserror 2.0.18", - "wasmparser 0.246.2", + "wasmparser 0.248.0", "wasmtime-environ", "wasmtime-internal-core", "wasmtime-internal-cranelift", @@ -5502,12 +5443,12 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.246.2" +version = "0.248.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd979042b5ff288607ccf3b314145435453f20fc67173195f91062d2289b204d" +checksum = "247ad505da2915a082fe13204c5ba8788425aea1de54f43b284818cf82637856" dependencies = [ "anyhow", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "id-arena", "indexmap 2.14.0", "log", @@ -5516,7 +5457,7 @@ dependencies = [ "serde_derive", "serde_json", "unicode-xid", - "wasmparser 0.246.2", + "wasmparser 0.248.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 462c6ec1..31c41a8f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -104,11 +104,14 @@ urlencoding = "2" quick-xml = { version = "0.37", features = ["serialize", "overlapped-lists"] } # WASM component model -# Pinned to 44 (>=44.0.3) for RUSTSEC-2026-0182 — a WASIp1 `fd_renumber` -# resource leak fixed in 44.0.3 / 45.0.2. rivet's only wasmtime user is +# Pinned to >=45.0.3 for RUSTSEC-2026-0188 — WASI hard links and renames +# bypass wasmtime-wasi's FilePerms on the destination path (fixed in 45.0.3 / +# 46.0.1). Supersedes the earlier 44.0.3 pin for RUSTSEC-2026-0182 (a WASIp1 +# `fd_renumber` resource leak), which 45.x also carries. The 44->45 bump is +# source-compatible for our usage. rivet's only wasmtime user is # rivet-core/src/wasm_runtime.rs (the compose-witness component runner). -wasmtime = { version = "44.0.3", features = ["component-model"] } -wasmtime-wasi = "44.0.3" +wasmtime = { version = "45.0.3", features = ["component-model"] } +wasmtime-wasi = "45.0.3" # Lossless syntax trees — pinned to our fork's Miri-soundness branch v3. # Upstream will NOT take a patch: rust-analyzer/rowan #210/#211/#212 were all