diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 17a41937e5..97e2822da6 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -90,7 +90,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@1.80.0 + - uses: dtolnay/rust-toolchain@1.81.0 - uses: Swatinem/rust-cache@v2 - run: >- cargo check diff --git a/Cargo.lock b/Cargo.lock index a2910ccd9a..feffa5b2bd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -385,18 +385,18 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88c1d02b72b6c411c0a2e92b25ed791ad5d071184193c08a34aa0fdcdf000b72" +checksum = "e15d04a0ce86cb36ead88ad68cf693ffd6cda47052b9e0ac114bc47fd9cd23c4" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-bitset" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "720b93bd86ebbb23ebfb2db1ed44d54b2ecbdbb2d034d485bc64aa605ee787ab" +checksum = "7c6e3969a7ce267259ce244b7867c5d3bc9e65b0a87e81039588dfdeaede9f34" dependencies = [ "serde", "serde_derive", @@ -404,9 +404,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aed3d2d9914d30b460eedd7fd507720203023997bef71452ce84873f9c93537c" +checksum = "2c22032c4cb42558371cf516bb47f26cdad1819d3475c133e93c49f50ebf304e" dependencies = [ "bumpalo", "cranelift-bforest", @@ -428,33 +428,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "888c188d32263ec9e048873ff0b68c700933600d553f4412417916828be25f8e" +checksum = "c904bc71c61b27fc57827f4a1379f29de64fe95653b620a3db77d59655eee0b8" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ddd5f4114d04ce7e073dd74e2ad16541fc61970726fcc8b2d5644a154ee4127" +checksum = "40180f5497572f644ce88c255480981ae2ec1d7bb4d8e0c0136a13b87a2f2ceb" [[package]] name = "cranelift-control" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92cc4c98d6a4256a1600d93ccd3536f3e77da9b4ca2c279de786ac22876e67d6" +checksum = "26d132c6d0bd8a489563472afc171759da0707804a65ece7ceb15a8c6d7dd5ef" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760af4b5e051b5f82097a27274b917e3751736369fa73660513488248d27f23d" +checksum = "4b2d0d9618275474fbf679dd018ac6e009acbd6ae6850f6a67be33fb3b00b323" dependencies = [ "cranelift-bitset", "serde", @@ -463,9 +463,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0bf77ec0f470621655ec7539860b5c620d4f91326654ab21b075b83900f8831" +checksum = "4fac41e16729107393174b0c9e3730fb072866100e1e64e80a1a963b2e484d57" dependencies = [ "cranelift-codegen", "log", @@ -475,15 +475,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b665d0a6932c421620be184f9fc7f7adaf1b0bc2fa77bb7ac5177c49abf645b" +checksum = "1ca20d576e5070044d0a72a9effc2deacf4d6aa650403189d8ea50126483944d" [[package]] name = "cranelift-native" -version = "0.115.1" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2e75d1bd43dfec10924798f15e6474f1dbf63b0024506551aa19394dbe72ab" +checksum = "b8dee82f3f1f2c4cba9177f1cc5e350fe98764379bcd29340caa7b01f85076c7" dependencies = [ "cranelift-codegen", "libc", @@ -608,6 +608,12 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" +[[package]] +name = "downcast-rs" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea8a8b81cacc08888170eef4d13b775126db426d0b348bee9d18c2c1eaf123cf" + [[package]] name = "either" version = "1.13.0" @@ -691,7 +697,7 @@ dependencies = [ "wasm-smith", "wasmi 0.40.0", "wasmi_fuzz", - "wasmprinter", + "wasmprinter 0.224.0", ] [[package]] @@ -1094,13 +1100,14 @@ dependencies = [ [[package]] name = "pulley-interpreter" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8324e531de91a3c25021a30fb7862d39cc516b61fbb801176acb5ff279ea887b" +checksum = "62d95f8575df49a2708398182f49a888cf9dc30210fb1fd2df87c889edcee75d" dependencies = [ "cranelift-bitset", "log", "sptr", + "wasmtime-math", ] [[package]] @@ -1374,9 +1381,9 @@ dependencies = [ [[package]] name = "target-lexicon" -version = "0.12.16" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" +checksum = "dc12939a1c9b9d391e0b7135f72fd30508b73450753e28341fed159317582a77" [[package]] name = "termcolor" @@ -1517,9 +1524,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasi-common" -version = "27.0.0" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829f6c8c15912907b472bd9d195893bcdb1bde9cd8de55f134f6ab8aa507bf10" +checksum = "fe3101bd34deeb64225431f8b1b1793c87e7cad94383464878b3f90da6995977" dependencies = [ "anyhow", "bitflags", @@ -1604,7 +1611,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c17a3bd88f2155da63a1f2fcb8a56377a24f0b6dfed12733bb5f544e86f690c5" dependencies = [ "leb128", - "wasmparser", + "wasmparser 0.221.2", ] [[package]] @@ -1618,16 +1625,16 @@ dependencies = [ [[package]] name = "wasm-smith" -version = "0.221.2" +version = "0.224.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebbaf9c781fb7091b79ad3baa40862b3afccb2949575bb73bdd77643ed40338c" +checksum = "d1c7826d83ef9b83db810c0b8442093cf51e726bf1ed3a75448617c5718fcc79" dependencies = [ "anyhow", "arbitrary", "flagset", "indexmap", "leb128", - "wasm-encoder 0.221.2", + "wasm-encoder 0.224.0", ] [[package]] @@ -1658,7 +1665,7 @@ dependencies = [ "wasmi_core 0.40.0", "wasmi_ir", "wasmi_wast", - "wasmparser", + "wasmparser 0.224.0", "wat", ] @@ -1716,7 +1723,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dcf1a7db34bff95b85c261002720c00c3a6168256dcb93041d3fa2054d19856a" dependencies = [ - "downcast-rs", + "downcast-rs 1.2.1", "libm", "num-traits", "paste", @@ -1726,7 +1733,7 @@ dependencies = [ name = "wasmi_core" version = "0.40.0" dependencies = [ - "downcast-rs", + "downcast-rs 2.0.1", "libm", "rand", ] @@ -1741,7 +1748,7 @@ dependencies = [ "wasm-smith", "wasmi 0.31.2", "wasmi 0.40.0", - "wasmprinter", + "wasmprinter 0.224.0", "wasmtime", ] @@ -1767,7 +1774,7 @@ version = "0.40.0" dependencies = [ "anyhow", "wasmi 0.40.0", - "wast 221.0.2", + "wast 224.0.0", ] [[package]] @@ -1783,6 +1790,18 @@ dependencies = [ "serde", ] +[[package]] +name = "wasmparser" +version = "0.224.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65881a664fdd43646b647bb27bf186ab09c05bf56779d40aed4c6dce47d423f5" +dependencies = [ + "bitflags", + "hashbrown 0.15.2", + "indexmap", + "semver", +] + [[package]] name = "wasmparser-nostd" version = "0.100.2" @@ -1800,14 +1819,25 @@ checksum = "a80742ff1b9e6d8c231ac7c7247782c6fc5bce503af760bca071811e5fc9ee56" dependencies = [ "anyhow", "termcolor", - "wasmparser", + "wasmparser 0.221.2", +] + +[[package]] +name = "wasmprinter" +version = "0.224.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc039e211f6c2137425726f0d76fdd9c439a442e5272bc3627a19274d0eb9686" +dependencies = [ + "anyhow", + "termcolor", + "wasmparser 0.224.0", ] [[package]] name = "wasmtime" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd30973c65eceb0f37dfcc430d83abd5eb24015fdfcab6912f52949287e04f0" +checksum = "11976a250672556d1c4c04c6d5d7656ac9192ac9edc42a4587d6c21460010e69" dependencies = [ "anyhow", "bitflags", @@ -1817,7 +1847,6 @@ dependencies = [ "hashbrown 0.14.5", "indexmap", "libc", - "libm", "log", "mach2", "memfd", @@ -1833,13 +1862,14 @@ dependencies = [ "smallvec", "sptr", "target-lexicon", - "wasmparser", + "wasmparser 0.221.2", "wasmtime-asm-macros", "wasmtime-component-macro", "wasmtime-cranelift", "wasmtime-environ", "wasmtime-fiber", "wasmtime-jit-icache-coherence", + "wasmtime-math", "wasmtime-slab", "wasmtime-versioned-export-macros", "windows-sys 0.59.0", @@ -1847,18 +1877,18 @@ dependencies = [ [[package]] name = "wasmtime-asm-macros" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6c21dd30d1f3f93ee390ac1a7ec304ecdbfdab6390e1add41a1f52727b0992b" +checksum = "1f178b0d125201fbe9f75beaf849bd3e511891f9e45ba216a5b620802ccf64f2" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-component-macro" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f948a6ef3119d52c9f12936970de28ddf3f9bea04bc65571f4a92d2e5ab38f4" +checksum = "d74de6592ed945d0a602f71243982a304d5d02f1e501b638addf57f42d57dfaf" dependencies = [ "anyhow", "proc-macro2", @@ -1871,15 +1901,15 @@ dependencies = [ [[package]] name = "wasmtime-component-util" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9275aa01ceaaa2fa6c0ecaa5267518d80b9d6e9ae7c7ea42f4c6e073e6a69ef" +checksum = "707dc7b3c112ab5a366b30cfe2fb5b2f8e6a0f682f16df96a5ec582bfe6f056e" [[package]] name = "wasmtime-cranelift" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0701a44a323267aae4499672dae422b266cee3135a23b640972ec8c0e10a44a2" +checksum = "366be722674d4bf153290fbcbc4d7d16895cc82fb3e869f8d550ff768f9e9e87" dependencies = [ "anyhow", "cfg-if", @@ -1895,16 +1925,16 @@ dependencies = [ "smallvec", "target-lexicon", "thiserror", - "wasmparser", + "wasmparser 0.221.2", "wasmtime-environ", "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-environ" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "264c968c1b81d340355ece2be0bc31a10f567ccb6ce08512c3b7d10e26f3cbe5" +checksum = "cdadc1af7097347aa276a4f008929810f726b5b46946971c660b6d421e9994ad" dependencies = [ "anyhow", "cranelift-bitset", @@ -1919,15 +1949,15 @@ dependencies = [ "smallvec", "target-lexicon", "wasm-encoder 0.221.2", - "wasmparser", - "wasmprinter", + "wasmparser 0.221.2", + "wasmprinter 0.221.2", ] [[package]] name = "wasmtime-fiber" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78505221fd5bd7b07b4e1fa2804edea49dc231e626ad6861adc8f531812973e6" +checksum = "ccba90d4119f081bca91190485650730a617be1fff5228f8c4757ce133d21117" dependencies = [ "anyhow", "cc", @@ -1940,9 +1970,9 @@ dependencies = [ [[package]] name = "wasmtime-jit-icache-coherence" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bedb677ca1b549d98f95e9e1f9251b460090d99a2c196a0614228c064bf2e59" +checksum = "ec5e8552e01692e6c2e5293171704fed8abdec79d1a6995a0870ab190e5747d1" dependencies = [ "anyhow", "cfg-if", @@ -1950,17 +1980,26 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "wasmtime-math" +version = "29.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29210ec2aa25e00f4d54605cedaf080f39ec01a872c5bd520ad04c67af1dde17" +dependencies = [ + "libm", +] + [[package]] name = "wasmtime-slab" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "564905638c132c275d365c1fa074f0b499790568f43148d29de84ccecfb5cb31" +checksum = "fcb5821a96fa04ac14bc7b158bb3d5cd7729a053db5a74dad396cd513a5e5ccf" [[package]] name = "wasmtime-versioned-export-macros" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91092e6cf77390eeccee273846a9327f3e8f91c3c6280f60f37809f0e62d29" +checksum = "86ff86db216dc0240462de40c8290887a613dddf9685508eb39479037ba97b5b" dependencies = [ "proc-macro2", "quote", @@ -1969,9 +2008,9 @@ dependencies = [ [[package]] name = "wasmtime-wit-bindgen" -version = "28.0.1" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f38f7a5eb2f06f53fe943e7fb8bf4197f7cf279f1bc52c0ce56e9d3ffd750a4" +checksum = "8358319c2dd1e4db79e3c1c5d3a5af84956615343f9f89f4e4996a36816e06e6" dependencies = [ "anyhow", "heck", @@ -1988,19 +2027,6 @@ dependencies = [ "leb128", ] -[[package]] -name = "wast" -version = "221.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc4470b9de917ba199157d1f0ae104f2ae362be728c43e68c571c7715bd629e" -dependencies = [ - "bumpalo", - "leb128", - "memchr", - "unicode-width", - "wasm-encoder 0.221.2", -] - [[package]] name = "wast" version = "224.0.0" @@ -2025,9 +2051,9 @@ dependencies = [ [[package]] name = "wiggle" -version = "27.0.0" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e0f6ef83a263c0fa11957c363aeaa76dc84832484d0e119f22810d4d0e09a7" +checksum = "4b9af35bc9629c52c261465320a9a07959164928b4241980ba1cf923b9e6751d" dependencies = [ "anyhow", "async-trait", @@ -2039,9 +2065,9 @@ dependencies = [ [[package]] name = "wiggle-generate" -version = "27.0.0" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd266b290a0fdace3af6a05c6ebbcc54de303a774448ecf5a98cd0bc12d89c52" +checksum = "2cf267dd05673912c8138f4b54acabe6bd53407d9d1536f0fadb6520dd16e101" dependencies = [ "anyhow", "heck", @@ -2054,9 +2080,9 @@ dependencies = [ [[package]] name = "wiggle-macro" -version = "27.0.0" +version = "29.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b8eb1a5783540696c59cefbfc9e52570c2d5e62bd47bdf0bdcef29231879db2" +checksum = "08c5c473d4198e6c2d377f3809f713ff0c110cab88a0805ae099a82119ee250c" dependencies = [ "proc-macro2", "quote", @@ -2211,7 +2237,7 @@ dependencies = [ "serde_derive", "serde_json", "unicode-xid", - "wasmparser", + "wasmparser 0.221.2", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 252fcaae16..c010dac1c7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ resolver = "2" authors = ["Robin Freyler "] repository = "https://github.com/wasmi-labs/wasmi" version = "0.40.0" -rust-version = "1.80" +rust-version = "1.81" edition = "2021" readme = "README.md" license = "MIT/Apache-2.0" diff --git a/crates/core/Cargo.toml b/crates/core/Cargo.toml index cec732f232..3fdd3e411b 100644 --- a/crates/core/Cargo.toml +++ b/crates/core/Cargo.toml @@ -15,7 +15,7 @@ exclude.workspace = true [dependencies] libm = { version = "0.2.11", default-features = false } -downcast-rs = { version = "1.2", default-features = false } +downcast-rs = { version = "2.0.1", default-features = false, features = ["sync"] } [dev-dependencies] rand = "0.8.5" diff --git a/crates/fuzz/Cargo.toml b/crates/fuzz/Cargo.toml index 215e819580..707d8cc2c5 100644 --- a/crates/fuzz/Cargo.toml +++ b/crates/fuzz/Cargo.toml @@ -17,15 +17,15 @@ publish = false [dependencies] wasmi = { workspace = true, features = ["std"] } wasmi-stack = { package = "wasmi", version = "0.31.2", optional = true } -wasmtime = { version = "28.0.0", optional = true, default-features = false, features = [ +wasmtime = { version = "29.0.0", optional = true, default-features = false, features = [ "cranelift", "runtime", "std", ] } -wasm-smith = "0.221.0" +wasm-smith = "0.224.0" arbitrary = "1.3.2" sha2 = "0.10" -wasmprinter = { version = "0.221.0", default-features = false } +wasmprinter = { version = "0.224.0", default-features = false } anyhow = "1.0.91" [features] diff --git a/crates/wasi/Cargo.toml b/crates/wasi/Cargo.toml index 247958680f..b1f11d7049 100644 --- a/crates/wasi/Cargo.toml +++ b/crates/wasi/Cargo.toml @@ -14,8 +14,8 @@ categories.workspace = true exclude.workspace = true [dependencies] -wasi-common = { version = "27.0.0", default-features = false, features = ["sync"]} -wiggle = { version = "27.0.0", default-features = false } +wasi-common = { version = "29.0.0", default-features = false, features = ["sync"]} +wiggle = { version = "29.0.0", default-features = false } wasmi = { workspace = true, features = ["std"]} [dev-dependencies] diff --git a/crates/wasmi/Cargo.toml b/crates/wasmi/Cargo.toml index 9600baa271..2c9a01a260 100644 --- a/crates/wasmi/Cargo.toml +++ b/crates/wasmi/Cargo.toml @@ -19,7 +19,7 @@ exclude = [ ] [dependencies] -wasmparser = { version = "0.221.0", default-features = false, features = ["validate", "features"] } +wasmparser = { version = "0.224.0", default-features = false, features = ["validate", "features"] } wasmi_core = { workspace = true } wasmi_collections = { workspace = true } wasmi_ir = { workspace = true } diff --git a/crates/wast/Cargo.toml b/crates/wast/Cargo.toml index d57cbbae48..363873a86a 100644 --- a/crates/wast/Cargo.toml +++ b/crates/wast/Cargo.toml @@ -15,5 +15,5 @@ exclude.workspace = true [dependencies] wasmi = { workspace = true, features = ["std"] } -wast = { version = "221.0.0", default-features = false, features = ["wasm-module"] } +wast = { version = "224.0.0", default-features = false, features = ["wasm-module"] } anyhow = "1.0" diff --git a/fuzz/Cargo.toml b/fuzz/Cargo.toml index 0467096cce..87fa271b4f 100644 --- a/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -13,10 +13,10 @@ cargo-fuzz = true [dependencies] wasmi_fuzz = { workspace = true } wasmi = { workspace = true, features = ["std"] } -wasm-smith = "0.221.0" +wasm-smith = "0.224.0" libfuzzer-sys = "0.4.7" arbitrary = "1.3.2" -wasmprinter = { version = "0.221.0", optional = true } +wasmprinter = { version = "0.224.0", optional = true } [features] default = []