diff --git a/contracts/call-number/Cargo.lock b/contracts/call-number/Cargo.lock index 2ce228a8b..bb4550857 100644 --- a/contracts/call-number/Cargo.lock +++ b/contracts/call-number/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -178,7 +172,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", + "wasmer", ] [[package]] @@ -224,7 +218,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -251,7 +245,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -293,7 +287,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -308,7 +302,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -325,9 +319,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -339,39 +333,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -382,11 +350,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -395,30 +363,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -431,7 +384,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -439,37 +392,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -660,7 +595,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -775,28 +710,12 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "fallible-iterator" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -893,15 +812,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -932,15 +842,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1015,22 +916,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1053,7 +938,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1101,15 +985,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1134,18 +1009,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", -] - [[package]] name = "object" version = "0.32.2" @@ -1183,7 +1046,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1317,18 +1180,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1349,7 +1201,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1410,25 +1262,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1711,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1765,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1928,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1975,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2036,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2115,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2143,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2285,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2332,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2357,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2404,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2467,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2485,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2503,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2521,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2551,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/call-number/Cargo.toml b/contracts/call-number/Cargo.toml index 6758fa8fb..200cc884d 100644 --- a/contracts/call-number/Cargo.toml +++ b/contracts/call-number/Cargo.toml @@ -34,4 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "2.3", default-features = false, features = ["cranelift", "universal", "singlepass"] } +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/call-number/tests/integration.rs b/contracts/call-number/tests/integration.rs index 23a1e9b68..c2fabb8d4 100644 --- a/contracts/call-number/tests/integration.rs +++ b/contracts/call-number/tests/integration.rs @@ -1,4 +1,5 @@ -use cosmwasm_vm::testing::{Contract, MockInstanceOptions}; +use cosmwasm_std::to_json_vec; +use cosmwasm_vm::testing::{mock_env, Contract, MockInstanceOptions}; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -34,10 +35,11 @@ fn required_imports() -> Vec<(String, String, FunctionType)> { #[test] fn dynamic_link_import_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLER, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLER, &env, &options, None).unwrap(); let import_function_map: HashMap<_, _> = contract - .module + .module() .imports() .functions() .map(|import| { diff --git a/contracts/dynamic-callee-contract/Cargo.lock b/contracts/dynamic-callee-contract/Cargo.lock index 6700abb50..1332d8384 100644 --- a/contracts/dynamic-callee-contract/Cargo.lock +++ b/contracts/dynamic-callee-contract/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -210,7 +204,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -237,7 +231,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -279,7 +273,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -294,7 +288,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -311,9 +305,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -325,39 +319,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -368,11 +336,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -381,30 +349,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -417,7 +370,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -425,37 +378,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -651,7 +586,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", + "wasmer", ] [[package]] @@ -660,7 +595,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -775,28 +710,12 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "fallible-iterator" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -893,15 +812,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -932,15 +842,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1015,22 +916,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1053,7 +938,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1101,15 +985,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1134,18 +1009,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", -] - [[package]] name = "object" version = "0.32.2" @@ -1183,7 +1046,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1317,18 +1180,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1349,7 +1201,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1410,25 +1262,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1711,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1765,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1928,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1975,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2036,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2115,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2143,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2285,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2332,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2357,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2404,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2467,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2485,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2503,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2521,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2551,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/dynamic-callee-contract/Cargo.toml b/contracts/dynamic-callee-contract/Cargo.toml index 142213e64..9eab68655 100644 --- a/contracts/dynamic-callee-contract/Cargo.toml +++ b/contracts/dynamic-callee-contract/Cargo.toml @@ -34,4 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "2.3", default-features = false, features = ["cranelift", "universal", "singlepass"] } +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/dynamic-callee-contract/tests/integration.rs b/contracts/dynamic-callee-contract/tests/integration.rs index 3a060973c..623bcfe2e 100644 --- a/contracts/dynamic-callee-contract/tests/integration.rs +++ b/contracts/dynamic-callee-contract/tests/integration.rs @@ -1,9 +1,9 @@ -use cosmwasm_std::{from_slice, to_vec, Addr, Env}; +use cosmwasm_std::{from_json, to_json_vec, Addr, Env}; use cosmwasm_vm::testing::{ - mock_env, read_data_from_mock_env, write_data_to_mock_env, Contract, MockApi, - MockInstanceOptions, MockQuerier, MockStorage, MOCK_CONTRACT_ADDR, + call_function, get_fe_mut, mock_env, Contract, MockApi, MockInstanceOptions, MockQuerier, + MockStorage, MOCK_CONTRACT_ADDR, }; -use cosmwasm_vm::{Instance, VmError}; +use cosmwasm_vm::{read_region_vals, write_value_to_env, Instance, VmError}; use dynamic_callee_contract::contract::ExampleStruct; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -59,22 +59,20 @@ fn make_callee_instance() -> Instance { let options = MockInstanceOptions::default(); let api = MockApi::default(); let querier = MockQuerier::new(&[]); - let contract = Contract::from_code(CONTRACT_CALLEE, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLEE, &env, &options, None).unwrap(); let instance = contract.generate_instance(api, querier, &options).unwrap(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); - instance } #[test] fn callable_point_export_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLEE, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLEE, &env, &options, None).unwrap(); let export_function_map: HashMap<_, _> = contract - .module + .module() .exports() .functions() .map(|export| (export.name().to_string(), export.ty().clone())) @@ -95,40 +93,48 @@ fn callable_point_export_works() { #[test] fn callable_point_pong_works() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&10u64).unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let serialized_param = to_json_vec(&10u64).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 0; assert_eq!("pong".to_string(), required_exports[export_index].0); - let call_result = instance - .call_function("pong", &[env_region_ptr.into(), param_region_ptr.into()]) - .unwrap(); + let call_result = call_function( + &mut instance, + "pong", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap(); assert_eq!(call_result.len(), 1); let serialized_return = - read_data_from_mock_env(&instance.env, &call_result[0], u32::MAX as usize).unwrap(); - let result: u64 = from_slice(&serialized_return).unwrap(); + &read_region_vals(&mut instance, &call_result, u32::MAX as usize, false).unwrap()[0]; + + let result: u64 = from_json(&serialized_return).unwrap(); assert_eq!(result, 11u64); } #[test] fn callable_point_pong_with_struct_works() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&ExampleStruct { + let serialized_param = to_json_vec(&ExampleStruct { str_field: String::from("hello"), u64_field: 100u64, }) .unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 1; @@ -136,29 +142,31 @@ fn callable_point_pong_with_struct_works() { "pong_with_struct".to_string(), required_exports[export_index].0 ); - let call_result = instance - .call_function( - "pong_with_struct", - &[env_region_ptr.into(), param_region_ptr.into()], - ) - .unwrap(); + let call_result = call_function( + &mut instance, + "pong_with_struct", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap(); assert_eq!(call_result.len(), 1); let serialized_return = - read_data_from_mock_env(&instance.env, &call_result[0], u32::MAX as usize).unwrap(); - let result: ExampleStruct = from_slice(&serialized_return).unwrap(); + &read_region_vals(&mut instance, &call_result, u32::MAX as usize, false).unwrap()[0]; + let result: ExampleStruct = from_json(&serialized_return).unwrap(); assert_eq!(result.str_field, String::from("hello world")); assert_eq!(result.u64_field, 101); } #[test] fn callable_point_pong_with_tuple_works() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&(String::from("hello"), 41i32)).unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let serialized_param = to_json_vec(&(String::from("hello"), 41i32)).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 2; @@ -166,32 +174,34 @@ fn callable_point_pong_with_tuple_works() { "pong_with_tuple".to_string(), required_exports[export_index].0 ); - let call_result = instance - .call_function( - "pong_with_tuple", - &[env_region_ptr.into(), param_region_ptr.into()], - ) - .unwrap(); + let call_result = call_function( + &mut instance, + "pong_with_tuple", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap(); assert_eq!(call_result.len(), 1); let serialized_return = - read_data_from_mock_env(&instance.env, &call_result[0], u32::MAX as usize).unwrap(); - let result: (String, i32) = from_slice(&serialized_return).unwrap(); + &read_region_vals(&mut instance, &call_result, u32::MAX as usize, false).unwrap()[0]; + let result: (String, i32) = from_json(&serialized_return).unwrap(); assert_eq!(result.0, String::from("hello world")); assert_eq!(result.1, 42); } #[test] fn callable_point_pong_with_tuple_takes_2_args_works() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param1 = to_vec(&String::from("hello")).unwrap(); - let param_region_ptr1 = write_data_to_mock_env(&instance.env, &serialized_param1).unwrap(); + let serialized_param1 = to_json_vec(&String::from("hello")).unwrap(); + let param_region_ptr1 = write_value_to_env(&vm_env, &mut vm_store, &serialized_param1).unwrap(); - let serialized_param2 = to_vec(&41i32).unwrap(); - let param_region_ptr2 = write_data_to_mock_env(&instance.env, &serialized_param2).unwrap(); + let serialized_param2 = to_json_vec(&41i32).unwrap(); + let param_region_ptr2 = write_value_to_env(&vm_env, &mut vm_store, &serialized_param2).unwrap(); let required_exports = required_exports(); let export_index = 3; @@ -199,61 +209,57 @@ fn callable_point_pong_with_tuple_takes_2_args_works() { "pong_with_tuple_takes_2_args".to_string(), required_exports[export_index].0 ); - let call_result = instance - .call_function( - "pong_with_tuple_takes_2_args", - &[ - env_region_ptr.into(), - param_region_ptr1.into(), - param_region_ptr2.into(), - ], - ) - .unwrap(); + let call_result = call_function( + &mut instance, + "pong_with_tuple_takes_2_args", + &[ + env_region_ptr.into(), + param_region_ptr1.into(), + param_region_ptr2.into(), + ], + ) + .unwrap(); assert_eq!(call_result.len(), 1); let serialized_return = - read_data_from_mock_env(&instance.env, &call_result[0], u32::MAX as usize).unwrap(); - let result: (String, i32) = from_slice(&serialized_return).unwrap(); + &read_region_vals(&mut instance, &call_result, u32::MAX as usize, false).unwrap()[0]; + let result: (String, i32) = from_json(&serialized_return).unwrap(); assert_eq!(result.0, String::from("hello world")); assert_eq!(result.1, 42); } #[test] fn callable_point_pong_env_works() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); let export_index = 4; assert_eq!("pong_env".to_string(), required_exports[export_index].0); - let call_result = instance - .call_function("pong_env", &[env_region_ptr.into()]) - .unwrap(); + let call_result = call_function(&mut instance, "pong_env", &[env_region_ptr.into()]).unwrap(); assert_eq!(call_result.len(), 1); let serialized_return = - read_data_from_mock_env(&instance.env, &call_result[0], u32::MAX as usize).unwrap(); - let result: Env = from_slice(&serialized_return).unwrap(); + &read_region_vals(&mut instance, &call_result, u32::MAX as usize, false).unwrap()[0]; + let result: Env = from_json(&serialized_return).unwrap(); assert_eq!(result.contract.address, Addr::unchecked(MOCK_CONTRACT_ADDR)); } #[test] fn callable_point_do_panic_raises_runtime_error() { - let instance = make_callee_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_callee_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); let export_index = 5; assert_eq!("do_panic".to_string(), required_exports[export_index].0); - let call_result = instance.call_function("do_panic", &[env_region_ptr.into()]); + let call_result = call_function(&mut instance, "do_panic", &[env_region_ptr.into()]); match call_result.unwrap_err() { VmError::RuntimeErr { msg, .. } => { diff --git a/contracts/dynamic-caller-contract/tests/integration.rs b/contracts/dynamic-caller-contract/tests/integration.rs index 93bb111ec..787ba58d1 100644 --- a/contracts/dynamic-caller-contract/tests/integration.rs +++ b/contracts/dynamic-caller-contract/tests/integration.rs @@ -1,4 +1,5 @@ -use cosmwasm_vm::testing::{Contract, MockInstanceOptions}; +use cosmwasm_std::to_json_vec; +use cosmwasm_vm::testing::{mock_env, Contract, MockInstanceOptions}; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -81,10 +82,11 @@ fn required_exports() -> Vec<(String, FunctionType)> { #[test] fn dynamic_link_import_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLER, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLER, &env, &options, None).unwrap(); let import_function_map: HashMap<_, _> = contract - .module + .module() .imports() .functions() .map(|import| { @@ -114,10 +116,11 @@ fn dynamic_link_import_works() { #[test] fn callable_point_export_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLER, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLER, &env, &options, None).unwrap(); let export_function_map: HashMap<_, _> = contract - .module + .module() .exports() .functions() .map(|export| (export.name().to_string(), export.ty().clone())) diff --git a/contracts/events/Cargo.lock b/contracts/events/Cargo.lock index 959e9b070..d0c1268c8 100644 --- a/contracts/events/Cargo.lock +++ b/contracts/events/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -210,7 +204,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -237,7 +231,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -279,7 +273,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -294,7 +288,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -311,9 +305,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -325,39 +319,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -368,11 +336,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -381,30 +349,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -417,7 +370,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -425,37 +378,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -646,7 +581,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -761,16 +696,6 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "events" version = "0.1.0" @@ -782,8 +707,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", - "wasmer-types 2.3.0", + "wasmer", ] [[package]] @@ -792,12 +716,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -894,15 +812,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -933,15 +842,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1016,22 +916,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1054,7 +938,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1102,15 +985,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1135,18 +1009,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", -] - [[package]] name = "object" version = "0.32.2" @@ -1184,7 +1046,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1318,18 +1180,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1350,7 +1201,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1411,25 +1262,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1712,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1766,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1929,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1976,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2037,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2116,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2144,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2286,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2333,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2358,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2405,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2468,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2486,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2504,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2522,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2552,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/events/Cargo.toml b/contracts/events/Cargo.toml index de61fd503..dcbdddbe9 100644 --- a/contracts/events/Cargo.toml +++ b/contracts/events/Cargo.toml @@ -34,5 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "=2.3.0", default-features = false, features = ["cranelift", "universal", "singlepass"] } -wasmer-types = "2.3" +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/events/tests/integration.rs b/contracts/events/tests/integration.rs index 4f07683ea..85543a2b9 100644 --- a/contracts/events/tests/integration.rs +++ b/contracts/events/tests/integration.rs @@ -1,4 +1,4 @@ -use cosmwasm_std::{to_vec, Attribute, Event, Response}; +use cosmwasm_std::{to_json_vec, Attribute, Event, Response}; use cosmwasm_vm::testing::{ execute, instantiate, mock_env, mock_info, Contract, MockApi, MockInstanceOptions, MockQuerier, MockStorage, @@ -10,13 +10,11 @@ static CONTRACT: &[u8] = include_bytes!("../target/wasm32-unknown-unknown/releas fn instantiate_instance() -> Instance { let options = MockInstanceOptions::default(); + let env = to_json_vec(&mock_env()).unwrap(); let api = MockApi::default(); let querier = MockQuerier::new(&[]); - let contract = Contract::from_code(CONTRACT, &options, None).unwrap(); + let contract = Contract::from_code(CONTRACT, &env, &options, None).unwrap(); let mut instance = contract.generate_instance(api, querier, &options).unwrap(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); let _res: Response = instantiate( &mut instance, diff --git a/contracts/intermediate-number/Cargo.lock b/contracts/intermediate-number/Cargo.lock index d46cc4a1a..f7c24b53d 100644 --- a/contracts/intermediate-number/Cargo.lock +++ b/contracts/intermediate-number/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -210,7 +204,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -237,7 +231,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -279,7 +273,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -294,7 +288,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -311,9 +305,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -325,39 +319,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -368,11 +336,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -381,30 +349,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -417,7 +370,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -425,37 +378,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -646,7 +581,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -761,28 +696,12 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "fallible-iterator" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -879,15 +798,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -918,15 +828,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -965,7 +866,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", + "wasmer", ] [[package]] @@ -1015,22 +916,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1053,7 +938,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1101,15 +985,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1134,18 +1009,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", -] - [[package]] name = "object" version = "0.32.2" @@ -1183,7 +1046,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1317,18 +1180,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1349,7 +1201,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1410,25 +1262,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1711,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1765,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1928,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1975,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2036,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2115,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2143,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2285,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2332,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2357,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2404,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2467,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2485,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2503,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2521,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2551,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/intermediate-number/Cargo.toml b/contracts/intermediate-number/Cargo.toml index e0155b10f..fe284e26b 100644 --- a/contracts/intermediate-number/Cargo.toml +++ b/contracts/intermediate-number/Cargo.toml @@ -34,4 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "2.3", default-features = false, features = ["cranelift", "universal", "singlepass"] } +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/intermediate-number/tests/integration.rs b/contracts/intermediate-number/tests/integration.rs index cbdfec733..a0d3620af 100644 --- a/contracts/intermediate-number/tests/integration.rs +++ b/contracts/intermediate-number/tests/integration.rs @@ -1,4 +1,5 @@ -use cosmwasm_vm::testing::{Contract, MockInstanceOptions}; +use cosmwasm_std::to_json_vec; +use cosmwasm_vm::testing::{mock_env, Contract, MockInstanceOptions}; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -47,10 +48,11 @@ fn required_exports() -> Vec<(String, FunctionType)> { #[test] fn dynamic_link_import_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLER_CALLEE, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLER_CALLEE, &env, &options, None).unwrap(); let import_function_map: HashMap<_, _> = contract - .module + .module() .imports() .functions() .map(|import| { @@ -80,10 +82,11 @@ fn dynamic_link_import_works() { #[test] fn callable_point_export_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT_CALLER_CALLEE, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT_CALLER_CALLEE, &env, &options, None).unwrap(); let export_function_map: HashMap<_, _> = contract - .module + .module() .exports() .functions() .map(|export| (export.name().to_string(), export.ty().clone())) diff --git a/contracts/number/Cargo.lock b/contracts/number/Cargo.lock index b9522acd5..db56c6496 100644 --- a/contracts/number/Cargo.lock +++ b/contracts/number/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -210,7 +204,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -237,7 +231,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -279,7 +273,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -294,7 +288,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -311,9 +305,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -325,39 +319,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -368,11 +336,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -381,30 +349,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -417,7 +370,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -425,37 +378,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -646,7 +581,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -761,28 +696,12 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "fallible-iterator" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -879,15 +798,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -918,15 +828,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1001,22 +902,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1039,7 +924,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1087,15 +971,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1131,19 +1006,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", -] - -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", + "wasmer", ] [[package]] @@ -1183,7 +1046,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1317,18 +1180,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1349,7 +1201,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1410,25 +1262,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1711,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1765,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1928,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1975,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2036,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2115,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2143,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2285,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2332,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2357,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2404,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2467,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2485,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2503,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2521,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2551,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/number/Cargo.toml b/contracts/number/Cargo.toml index 4a63a8af9..eb684e8f9 100644 --- a/contracts/number/Cargo.toml +++ b/contracts/number/Cargo.toml @@ -34,4 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "2.3", default-features = false, features = ["cranelift", "universal", "singlepass"] } +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/number/tests/integration.rs b/contracts/number/tests/integration.rs index 1f9017130..34be14db6 100644 --- a/contracts/number/tests/integration.rs +++ b/contracts/number/tests/integration.rs @@ -1,9 +1,9 @@ -use cosmwasm_std::to_vec; +use cosmwasm_std::to_json_vec; use cosmwasm_vm::testing::{ - mock_env, write_data_to_mock_env, Contract, MockApi, MockInstanceOptions, MockQuerier, + call_function, get_fe_mut, mock_env, Contract, MockApi, MockInstanceOptions, MockQuerier, MockStorage, }; -use cosmwasm_vm::Instance; +use cosmwasm_vm::{write_value_to_env, Instance}; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -25,12 +25,10 @@ fn required_exports() -> Vec<(String, FunctionType)> { fn make_number_instance() -> Instance { let options = MockInstanceOptions::default(); let api = MockApi::default(); + let env = to_json_vec(&mock_env()).unwrap(); let querier = MockQuerier::new(&[]); - let contract = Contract::from_code(CONTRACT, &options, None).unwrap(); + let contract = Contract::from_code(CONTRACT, &env, &options, None).unwrap(); let instance = contract.generate_instance(api, querier, &options).unwrap(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); instance } @@ -38,10 +36,11 @@ fn make_number_instance() -> Instance { #[test] fn callable_point_export_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT, &env, &options, None).unwrap(); let export_function_map: HashMap<_, _> = contract - .module + .module() .exports() .functions() .map(|export| (export.name().to_string(), export.ty().clone())) @@ -62,12 +61,14 @@ fn callable_point_export_works() { #[test] fn callable_point_add_works() { - let instance = make_number_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_number_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&10i32).unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let serialized_param = to_json_vec(&10i32).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 0; @@ -75,9 +76,12 @@ fn callable_point_add_works() { // Before solving #213, it issues an error. // This is because `add` panics without number in deps.storage. - let call_result = instance - .call_function("add", &[env_region_ptr.into(), param_region_ptr.into()]) - .unwrap_err(); + let call_result = call_function( + &mut instance, + "add", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap_err(); assert!(call_result .to_string() .contains("RuntimeError: unreachable")) @@ -85,12 +89,14 @@ fn callable_point_add_works() { #[test] fn callable_point_sub_works() { - let instance = make_number_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_number_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&10i32).unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let serialized_param = to_json_vec(&10i32).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 1; @@ -98,9 +104,12 @@ fn callable_point_sub_works() { // Before solving #213, it issues an error. // This is because `sub` panics without number in deps.storage. - let call_result = instance - .call_function("sub", &[env_region_ptr.into(), param_region_ptr.into()]) - .unwrap_err(); + let call_result = call_function( + &mut instance, + "sub", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap_err(); assert!(call_result .to_string() .contains("RuntimeError: unreachable")) @@ -108,12 +117,14 @@ fn callable_point_sub_works() { #[test] fn callable_point_mul_works() { - let instance = make_number_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_number_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); - let serialized_param = to_vec(&10i32).unwrap(); - let param_region_ptr = write_data_to_mock_env(&instance.env, &serialized_param).unwrap(); + let serialized_param = to_json_vec(&10i32).unwrap(); + let param_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &serialized_param).unwrap(); let required_exports = required_exports(); let export_index = 2; @@ -121,9 +132,12 @@ fn callable_point_mul_works() { // Before solving #213, it issues an error. // This is because `mul` panics without number in deps.storage. - let call_result = instance - .call_function("mul", &[env_region_ptr.into(), param_region_ptr.into()]) - .unwrap_err(); + let call_result = call_function( + &mut instance, + "mul", + &[env_region_ptr.into(), param_region_ptr.into()], + ) + .unwrap_err(); assert!(call_result .to_string() .contains("RuntimeError: unreachable")) @@ -131,18 +145,18 @@ fn callable_point_mul_works() { #[test] fn callable_point_number_works() { - let instance = make_number_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_number_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); let export_index = 3; assert_eq!("number".to_string(), required_exports[export_index].0); // Before solving #213, it issues an error. // This is because `number` panics without number in deps.storage. - let call_result = instance - .call_function("number", &[env_region_ptr.into()]) - .unwrap_err(); + let call_result = call_function(&mut instance, "number", &[env_region_ptr.into()]).unwrap_err(); assert!(call_result .to_string() .contains("RuntimeError: unreachable")) diff --git a/contracts/query-queue/schema/raw/execute.json b/contracts/query-queue/schema/raw/execute.json new file mode 100644 index 000000000..1ecb0699d --- /dev/null +++ b/contracts/query-queue/schema/raw/execute.json @@ -0,0 +1,27 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "ExecuteMsg", + "oneOf": [ + { + "type": "object", + "required": [ + "change_address" + ], + "properties": { + "change_address": { + "type": "object", + "required": [ + "queue_address" + ], + "properties": { + "queue_address": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + } + ] +} diff --git a/contracts/query-queue/schema/raw/instantiate.json b/contracts/query-queue/schema/raw/instantiate.json new file mode 100644 index 000000000..cbd81f48b --- /dev/null +++ b/contracts/query-queue/schema/raw/instantiate.json @@ -0,0 +1,14 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "InstantiateMsg", + "type": "object", + "required": [ + "queue_address" + ], + "properties": { + "queue_address": { + "type": "string" + } + }, + "additionalProperties": false +} diff --git a/contracts/query-queue/schema/raw/query.json b/contracts/query-queue/schema/raw/query.json new file mode 100644 index 000000000..9c3f943f6 --- /dev/null +++ b/contracts/query-queue/schema/raw/query.json @@ -0,0 +1,81 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "QueryMsg", + "oneOf": [ + { + "type": "object", + "required": [ + "raw" + ], + "properties": { + "raw": { + "type": "object", + "required": [ + "key" + ], + "properties": { + "key": { + "type": "integer", + "format": "uint32", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "count" + ], + "properties": { + "count": { + "type": "object", + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "sum" + ], + "properties": { + "sum": { + "type": "object", + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "reducer" + ], + "properties": { + "reducer": { + "type": "object", + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "list" + ], + "properties": { + "list": { + "type": "object", + "additionalProperties": false + } + }, + "additionalProperties": false + } + ] +} diff --git a/contracts/query-queue/schema/raw/response_to_count.json b/contracts/query-queue/schema/raw/response_to_count.json new file mode 100644 index 000000000..cf6f1c3cd --- /dev/null +++ b/contracts/query-queue/schema/raw/response_to_count.json @@ -0,0 +1,16 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "CountResponse", + "type": "object", + "required": [ + "count" + ], + "properties": { + "count": { + "type": "integer", + "format": "uint32", + "minimum": 0.0 + } + }, + "additionalProperties": false +} diff --git a/contracts/query-queue/schema/raw/response_to_list.json b/contracts/query-queue/schema/raw/response_to_list.json new file mode 100644 index 000000000..e4da63779 --- /dev/null +++ b/contracts/query-queue/schema/raw/response_to_list.json @@ -0,0 +1,40 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "ListResponse", + "type": "object", + "required": [ + "early", + "empty", + "late" + ], + "properties": { + "early": { + "description": "List all IDs lower than 0x20", + "type": "array", + "items": { + "type": "integer", + "format": "uint32", + "minimum": 0.0 + } + }, + "empty": { + "description": "List an empty range, both bounded", + "type": "array", + "items": { + "type": "integer", + "format": "uint32", + "minimum": 0.0 + } + }, + "late": { + "description": "List all IDs starting from 0x20", + "type": "array", + "items": { + "type": "integer", + "format": "uint32", + "minimum": 0.0 + } + } + }, + "additionalProperties": false +} diff --git a/contracts/query-queue/schema/raw/response_to_raw.json b/contracts/query-queue/schema/raw/response_to_raw.json new file mode 100644 index 000000000..e0bc6e40d --- /dev/null +++ b/contracts/query-queue/schema/raw/response_to_raw.json @@ -0,0 +1,15 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "RawResponse", + "type": "object", + "properties": { + "item": { + "type": [ + "integer", + "null" + ], + "format": "int32" + } + }, + "additionalProperties": false +} diff --git a/contracts/query-queue/schema/raw/response_to_reducer.json b/contracts/query-queue/schema/raw/response_to_reducer.json new file mode 100644 index 000000000..612b4029a --- /dev/null +++ b/contracts/query-queue/schema/raw/response_to_reducer.json @@ -0,0 +1,29 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "ReducerResponse", + "type": "object", + "required": [ + "counters" + ], + "properties": { + "counters": { + "type": "array", + "items": { + "type": "array", + "items": [ + { + "type": "integer", + "format": "int32" + }, + { + "type": "integer", + "format": "int32" + } + ], + "maxItems": 2, + "minItems": 2 + } + } + }, + "additionalProperties": false +} diff --git a/contracts/query-queue/schema/raw/response_to_sum.json b/contracts/query-queue/schema/raw/response_to_sum.json new file mode 100644 index 000000000..c8133fe4e --- /dev/null +++ b/contracts/query-queue/schema/raw/response_to_sum.json @@ -0,0 +1,15 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "SumResponse", + "type": "object", + "required": [ + "sum" + ], + "properties": { + "sum": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false +} diff --git a/contracts/simple-callee/Cargo.lock b/contracts/simple-callee/Cargo.lock index 0282d7e1e..5f2f267d9 100644 --- a/contracts/simple-callee/Cargo.lock +++ b/contracts/simple-callee/Cargo.lock @@ -51,7 +51,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object", "rustc-demangle", ] @@ -85,12 +85,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - [[package]] name = "bitvec" version = "1.0.1" @@ -210,7 +204,7 @@ dependencies = [ "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys", ] [[package]] @@ -237,7 +231,7 @@ dependencies = [ "serde", "serde_json", "syn 1.0.109", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -279,7 +273,7 @@ dependencies = [ "static_assertions", "thiserror", "uuid", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -294,7 +288,7 @@ dependencies = [ name = "cosmwasm-vm" version = "1.1.9+0.8.1" dependencies = [ - "bitflags 1.3.2", + "bitflags", "bytecheck", "bytes", "clru", @@ -311,9 +305,9 @@ dependencies = [ "serde_json", "sha2 0.10.8", "thiserror", - "wasmer 4.2.2", + "wasmer", "wasmer-middlewares", - "wasmer-types 4.2.2", + "wasmer-types", ] [[package]] @@ -325,39 +319,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" -dependencies = [ - "cranelift-entity 0.82.3", -] - [[package]] name = "cranelift-bforest" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.91.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" -dependencies = [ - "cranelift-bforest 0.82.3", - "cranelift-codegen-meta 0.82.3", - "cranelift-codegen-shared 0.82.3", - "cranelift-entity 0.82.3", - "gimli 0.26.2", - "log", - "regalloc", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -368,11 +336,11 @@ checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" dependencies = [ "arrayvec", "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", "cranelift-egraph", - "cranelift-entity 0.91.1", + "cranelift-entity", "cranelift-isle", "gimli 0.26.2", "log", @@ -381,30 +349,15 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" -dependencies = [ - "cranelift-codegen-shared 0.82.3", -] - [[package]] name = "cranelift-codegen-meta" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "cranelift-codegen-shared 0.91.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" - [[package]] name = "cranelift-codegen-shared" version = "0.91.1" @@ -417,7 +370,7 @@ version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "cranelift-entity 0.91.1", + "cranelift-entity", "fxhash", "hashbrown 0.12.3", "indexmap", @@ -425,37 +378,19 @@ dependencies = [ "smallvec", ] -[[package]] -name = "cranelift-entity" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" - [[package]] name = "cranelift-entity" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" -[[package]] -name = "cranelift-frontend" -version = "0.82.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" -dependencies = [ - "cranelift-codegen 0.82.3", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.91.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", @@ -646,7 +581,7 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "byteorder", "lazy_static", "proc-macro-error", @@ -761,28 +696,12 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "fallible-iterator" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - [[package]] name = "ff" version = "0.13.0" @@ -879,15 +798,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" -dependencies = [ - "ahash", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -918,15 +828,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1001,22 +902,6 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.11" @@ -1039,7 +924,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6a72dfa44fe15b5e76b94307eeb2ff995a8c5b283b55008940c02e0c5b634d" dependencies = [ - "indexmap", "loupe-derive", "rustversion", ] @@ -1087,15 +971,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.8.0" @@ -1120,18 +995,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" -[[package]] -name = "object" -version = "0.28.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424" -dependencies = [ - "crc32fast", - "hashbrown 0.11.2", - "indexmap", - "memchr", -] - [[package]] name = "object" version = "0.32.2" @@ -1169,7 +1032,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets", ] [[package]] @@ -1303,18 +1166,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "regalloc" -version = "0.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" -dependencies = [ - "log", - "rustc-hash", - "smallvec", + "bitflags", ] [[package]] @@ -1335,7 +1187,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ - "bitflags 1.3.2", + "bitflags", "libc", "mach", "winapi", @@ -1396,25 +1248,6 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1634,7 +1467,7 @@ dependencies = [ "schemars", "serde", "thiserror", - "wasmer 2.3.0", + "wasmer", ] [[package]] @@ -1711,19 +1544,6 @@ version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" -[[package]] -name = "tempfile" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" -dependencies = [ - "cfg-if", - "fastrand", - "redox_syscall", - "rustix", - "windows-sys 0.52.0", -] - [[package]] name = "thiserror" version = "1.0.56" @@ -1765,7 +1585,6 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1928,33 +1747,6 @@ version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" -[[package]] -name = "wasmer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8d8361c9d006ea3d7797de7bd6b1492ffd0f91a22430cfda6c1658ad57bedf" -dependencies = [ - "cfg-if", - "indexmap", - "js-sys", - "loupe", - "more-asserts", - "target-lexicon", - "thiserror", - "wasm-bindgen", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-compiler-cranelift 2.3.0", - "wasmer-compiler-singlepass 2.3.0", - "wasmer-derive 2.3.0", - "wasmer-engine", - "wasmer-engine-dylib", - "wasmer-engine-universal", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - [[package]] name = "wasmer" version = "4.2.2" @@ -1975,46 +1767,15 @@ dependencies = [ "thiserror", "wasm-bindgen", "wasm-bindgen-downcast", - "wasmer-compiler 4.2.2", - "wasmer-compiler-cranelift 4.2.2", - "wasmer-compiler-singlepass 4.2.2", - "wasmer-derive 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", + "wasmer-compiler", + "wasmer-compiler-cranelift", + "wasmer-compiler-singlepass", + "wasmer-derive", + "wasmer-types", + "wasmer-vm", "winapi", ] -[[package]] -name = "wasmer-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aaf9428c29c1d8ad2ac0e45889ba8a568a835e33fd058964e5e500f2f7ce325" -dependencies = [ - "enumset", - "loupe", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-compiler" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67a6cd866aed456656db2cfea96c18baabbd33f676578482b85c51e1ee19d2c" -dependencies = [ - "enumset", - "loupe", - "rkyv", - "serde", - "serde_bytes", - "smallvec", - "target-lexicon", - "thiserror", - "wasmer-types 2.3.0", - "wasmparser 0.83.0", -] - [[package]] name = "wasmer-compiler" version = "4.2.2" @@ -2036,68 +1797,29 @@ dependencies = [ "shared-buffer", "smallvec", "thiserror", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", - "wasmparser 0.95.0", + "wasmer-types", + "wasmer-vm", + "wasmparser", "winapi", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48be2f9f6495f08649e4f8b946a2cbbe119faf5a654aa1457f9504a99d23dae0" -dependencies = [ - "cranelift-codegen 0.82.3", - "cranelift-entity 0.82.3", - "cranelift-frontend 0.82.3", - "gimli 0.26.2", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-compiler-cranelift" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d96bce6fad15a954edcfc2749b59e47ea7de524b6ef3df392035636491a40b4" dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "gimli 0.26.2", "more-asserts", "rayon", "smallvec", "target-lexicon", "tracing", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-compiler-singlepass" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca2a35204d8befa85062bc7aac259a8db8070b801b8a783770ba58231d729e" -dependencies = [ - "byteorder", - "dynasm", - "dynasmrt", - "gimli 0.26.2", - "lazy_static", - "loupe", - "more-asserts", - "rayon", - "smallvec", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2115,20 +1837,8 @@ dependencies = [ "more-asserts", "rayon", "smallvec", - "wasmer-compiler 4.2.2", - "wasmer-types 4.2.2", -] - -[[package]] -name = "wasmer-derive" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e50405cc2a2f74ff574584710a5f2c1d5c93744acce2ca0866084739284b51" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", + "wasmer-compiler", + "wasmer-types", ] [[package]] @@ -2143,128 +1853,15 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "wasmer-engine" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" -dependencies = [ - "backtrace", - "enumset", - "lazy_static", - "loupe", - "memmap2 0.5.10", - "more-asserts", - "rustc-demangle", - "serde", - "serde_bytes", - "target-lexicon", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", -] - -[[package]] -name = "wasmer-engine-dylib" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0358af9c154724587731175553805648d9acb8f6657880d165e378672b7e53" -dependencies = [ - "cfg-if", - "enum-iterator", - "enumset", - "leb128", - "libloading", - "loupe", - "object 0.28.4", - "rkyv", - "serde", - "tempfile", - "tracing", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-object", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "which", -] - -[[package]] -name = "wasmer-engine-universal" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440dc3d93c9ca47865a4f4edd037ea81bf983b5796b59b3d712d844b32dbef15" -dependencies = [ - "cfg-if", - "enumset", - "leb128", - "loupe", - "region", - "rkyv", - "wasmer-compiler 2.3.0", - "wasmer-engine", - "wasmer-engine-universal-artifact", - "wasmer-types 2.3.0", - "wasmer-vm 2.3.0", - "winapi", -] - -[[package]] -name = "wasmer-engine-universal-artifact" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f1db3f54152657eb6e86c44b66525ff7801dad8328fe677da48dd06af9ad41" -dependencies = [ - "enum-iterator", - "enumset", - "loupe", - "rkyv", - "thiserror", - "wasmer-artifact", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - [[package]] name = "wasmer-middlewares" version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb4b87c0ea9f8636c81a8ab8f52bad01c8623c9fcbb3db5f367d5f157fada30" dependencies = [ - "wasmer 4.2.2", - "wasmer-types 4.2.2", - "wasmer-vm 4.2.2", -] - -[[package]] -name = "wasmer-object" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d831335ff3a44ecf451303f6f891175c642488036b92ceceb24ac8623a8fa8b" -dependencies = [ - "object 0.28.4", - "thiserror", - "wasmer-compiler 2.3.0", - "wasmer-types 2.3.0", -] - -[[package]] -name = "wasmer-types" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df01ea05dc0a9bab67e054c7cb01521e53b35a7bb90bd02eca564ed0b2667f" -dependencies = [ - "backtrace", - "enum-iterator", - "indexmap", - "loupe", - "more-asserts", - "rkyv", - "serde", - "thiserror", + "wasmer", + "wasmer-types", + "wasmer-vm", ] [[package]] @@ -2285,34 +1882,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "wasmer-vm" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d965fa61f4dc4cdb35a54daaf7ecec3563fbb94154a6c35433f879466247dd" -dependencies = [ - "backtrace", - "cc", - "cfg-if", - "corosensei", - "enum-iterator", - "indexmap", - "lazy_static", - "libc", - "loupe", - "mach", - "memoffset 0.6.5", - "more-asserts", - "region", - "rkyv", - "scopeguard", - "serde", - "thiserror", - "wasmer-artifact", - "wasmer-types 2.3.0", - "winapi", -] - [[package]] name = "wasmer-vm" version = "4.2.2" @@ -2332,21 +1901,15 @@ dependencies = [ "lazy_static", "libc", "mach", - "memoffset 0.8.0", + "memoffset", "more-asserts", "region", "scopeguard", "thiserror", - "wasmer-types 4.2.2", + "wasmer-types", "winapi", ] -[[package]] -name = "wasmparser" -version = "0.83.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" - [[package]] name = "wasmparser" version = "0.95.0" @@ -2357,18 +1920,6 @@ dependencies = [ "url", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -2404,57 +1955,27 @@ dependencies = [ "windows_x86_64_msvc 0.33.0", ] -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - [[package]] name = "windows-targets" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_gnullvm", "windows_aarch64_msvc 0.48.5", "windows_i686_gnu 0.48.5", "windows_i686_msvc 0.48.5", "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_gnullvm", "windows_x86_64_msvc 0.48.5", ] -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - [[package]] name = "windows_aarch64_msvc" version = "0.33.0" @@ -2467,12 +1988,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - [[package]] name = "windows_i686_gnu" version = "0.33.0" @@ -2485,12 +2000,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - [[package]] name = "windows_i686_msvc" version = "0.33.0" @@ -2503,12 +2012,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - [[package]] name = "windows_x86_64_gnu" version = "0.33.0" @@ -2521,24 +2024,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - [[package]] name = "windows_x86_64_msvc" version = "0.33.0" @@ -2551,12 +2042,6 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - [[package]] name = "wyz" version = "0.5.1" diff --git a/contracts/simple-callee/Cargo.toml b/contracts/simple-callee/Cargo.toml index 49a0e6066..29e5a1f0b 100644 --- a/contracts/simple-callee/Cargo.toml +++ b/contracts/simple-callee/Cargo.toml @@ -34,4 +34,4 @@ thiserror = "1.0.24" [dev-dependencies] cosmwasm-vm = { path = "../../packages/vm", default-features = false, features = ["iterator"] } -wasmer = { version = "2.3", default-features = false, features = ["cranelift", "universal", "singlepass"] } +wasmer = { version = "=4.2.2", default-features = false, features = ["cranelift", "singlepass"] } diff --git a/contracts/simple-callee/tests/integration.rs b/contracts/simple-callee/tests/integration.rs index f7edf2fd9..c8c2814a2 100644 --- a/contracts/simple-callee/tests/integration.rs +++ b/contracts/simple-callee/tests/integration.rs @@ -1,9 +1,9 @@ -use cosmwasm_std::to_vec; +use cosmwasm_std::to_json_vec; use cosmwasm_vm::testing::{ - mock_env, write_data_to_mock_env, Contract, MockApi, MockInstanceOptions, MockQuerier, + call_function, get_fe_mut, mock_env, Contract, MockApi, MockInstanceOptions, MockQuerier, MockStorage, }; -use cosmwasm_vm::Instance; +use cosmwasm_vm::{write_value_to_env, Instance}; use std::collections::HashMap; use wasmer::{FunctionType, Type}; @@ -24,13 +24,11 @@ fn required_exports() -> Vec<(String, FunctionType)> { fn make_instance() -> Instance { let options = MockInstanceOptions::default(); + let env = to_json_vec(&mock_env()).unwrap(); let api = MockApi::default(); let querier = MockQuerier::new(&[]); - let contract = Contract::from_code(CONTRACT, &options, None).unwrap(); + let contract = Contract::from_code(CONTRACT, &env, &options, None).unwrap(); let instance = contract.generate_instance(api, querier, &options).unwrap(); - instance - .env - .set_serialized_env(&to_vec(&mock_env()).unwrap()); instance } @@ -38,10 +36,11 @@ fn make_instance() -> Instance { #[test] fn callable_point_export_works() { let options = MockInstanceOptions::default(); - let contract = Contract::from_code(CONTRACT, &options, None).unwrap(); + let env = to_json_vec(&mock_env()).unwrap(); + let contract = Contract::from_code(CONTRACT, &env, &options, None).unwrap(); let export_function_map: HashMap<_, _> = contract - .module + .module() .exports() .functions() .map(|export| (export.name().to_string(), export.ty().clone())) @@ -62,25 +61,27 @@ fn callable_point_export_works() { #[test] fn callable_point_succeed_works() { - let instance = make_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); let export_index = 0; assert_eq!("succeed".to_string(), required_exports[export_index].0); // check succeed - instance - .call_function("succeed", &[env_region_ptr.into()]) - .unwrap(); + call_function(&mut instance, "succeed", &[env_region_ptr.into()]).unwrap(); } #[test] fn callable_point_succeed_readonly_works() { - let instance = make_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); let export_index = 1; @@ -90,25 +91,23 @@ fn callable_point_succeed_readonly_works() { ); // check succeed_readonly - instance - .call_function("succeed_readonly", &[env_region_ptr.into()]) - .unwrap(); + call_function(&mut instance, "succeed_readonly", &[env_region_ptr.into()]).unwrap(); } #[test] fn callable_fail_fails() { - let instance = make_instance(); - let env = to_vec(&mock_env()).unwrap(); - let env_region_ptr = write_data_to_mock_env(&instance.env, &env).unwrap(); + let mut instance = make_instance(); + let mut fe = get_fe_mut(&mut instance); + let (vm_env, mut vm_store) = fe.data_and_store_mut(); + let env = to_json_vec(&mock_env()).unwrap(); + let env_region_ptr = write_value_to_env(&vm_env, &mut vm_store, &env).unwrap(); let required_exports = required_exports(); let export_index = 2; assert_eq!("fail".to_string(), required_exports[export_index].0); // check unreachable - let call_result = instance - .call_function("fail", &[env_region_ptr.into()]) - .unwrap_err(); + let call_result = call_function(&mut instance, "fail", &[env_region_ptr.into()]).unwrap_err(); assert!(call_result .to_string() .contains("RuntimeError: unreachable"))