From d02a1c32a5615e5271fc8dca621b9cc0476e2cfa Mon Sep 17 00:00:00 2001 From: apodx Date: Wed, 27 Dec 2023 15:34:43 +0800 Subject: [PATCH] update wasmtime to support riscv update changelog message update mesg --- 0001-update-wasmtime-to-support-riscv64.patch | 1675 +++++++++++++++++ WasmEngine.spec | 177 +- 2 files changed, 1766 insertions(+), 86 deletions(-) create mode 100644 0001-update-wasmtime-to-support-riscv64.patch diff --git a/0001-update-wasmtime-to-support-riscv64.patch b/0001-update-wasmtime-to-support-riscv64.patch new file mode 100644 index 0000000..40149a3 --- /dev/null +++ b/0001-update-wasmtime-to-support-riscv64.patch @@ -0,0 +1,1675 @@ +diff --git a/Cargo.lock b/Cargo.lock +index df6be98..fe69af2 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -2,22 +2,13 @@ + # It is not intended for manual editing. + version = 3 + +-[[package]] +-name = "addr2line" +-version = "0.16.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "3e61f2b7f93d2c7d2b08263acaa4a363b3e276806c68af6134c44f523bf1aacd" +-dependencies = [ +- "gimli 0.25.0", +-] +- + [[package]] + name = "addr2line" + version = "0.17.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" + dependencies = [ +- "gimli 0.26.1", ++ "gimli", + ] + + [[package]] +@@ -26,6 +17,17 @@ version = "1.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + ++[[package]] ++name = "ahash" ++version = "0.7.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" ++dependencies = [ ++ "getrandom", ++ "once_cell", ++ "version_check 0.9.3", ++] ++ + [[package]] + name = "aho-corasick" + version = "0.7.18" +@@ -58,9 +60,15 @@ dependencies = [ + + [[package]] + name = "anyhow" +-version = "1.0.52" ++version = "1.0.76" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "59d2a3357dde987206219e78ecfbbb6e8dad06cbb65292758d3270e6254f7355" ++ ++[[package]] ++name = "arrayvec" ++version = "0.7.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "84450d0b4a8bd1ba4144ce8ce718fbc5d071358b1e5384bace6536b3d1f2d5b3" ++checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + + [[package]] + name = "async-trait" +@@ -79,7 +87,7 @@ version = "0.2.14" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" + dependencies = [ +- "hermit-abi", ++ "hermit-abi 0.1.19", + "libc", + "winapi", + ] +@@ -90,21 +98,6 @@ version = "1.0.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" + +-[[package]] +-name = "backtrace" +-version = "0.3.63" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "321629d8ba6513061f26707241fa9bc89524ff1cd7a915a97ef0c62c666ce1b6" +-dependencies = [ +- "addr2line 0.17.0", +- "cc", +- "cfg-if", +- "libc", +- "miniz_oxide 0.4.4", +- "object 0.27.1", +- "rustc-demangle", +-] +- + [[package]] + name = "base64" + version = "0.13.0" +@@ -126,6 +119,12 @@ version = "1.3.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + ++[[package]] ++name = "bitflags" ++version = "2.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" ++ + [[package]] + name = "block-buffer" + version = "0.9.0" +@@ -177,43 +176,39 @@ checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" + + [[package]] + name = "cap-fs-ext" +-version = "0.19.1" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1bf5c3b436b94a1adac74032ff35d8aa5bae6ec2a7900e76432c9ae8dac4d673" ++checksum = "0b0e103ce36d217d568903ad27b14ec2238ecb5d65bad2e756a8f3c0d651506e" + dependencies = [ + "cap-primitives", + "cap-std", + "io-lifetimes", +- "rustc_version", +- "winapi", ++ "windows-sys 0.36.1", + ] + + [[package]] + name = "cap-primitives" +-version = "0.19.1" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b51bd736eec54ae6552d18b0c958885b01d88c84c5fe6985e28c2b57ff385e94" ++checksum = "af3f336aa91cce16033ed3c94ac91d98956c49b420e6d6cd0dd7d0e386a57085" + dependencies = [ + "ambient-authority", +- "errno", +- "fs-set-times 0.12.2", ++ "fs-set-times", ++ "io-extras", + "io-lifetimes", + "ipnet", + "maybe-owned", +- "once_cell", +- "rsix 0.23.9", +- "rustc_version", +- "unsafe-io", +- "winapi", ++ "rustix 0.35.16", + "winapi-util", ++ "windows-sys 0.36.1", + "winx", + ] + + [[package]] + name = "cap-rand" +-version = "0.19.1" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6e6e89d00b0cebeb6da7a459b81e6a49cf2092cc4afe03f28eb99b8f0e889344" ++checksum = "d14b9606aa9550d34651bc481443203bc014237bdb992d201d2afa62d2ec6dea" + dependencies = [ + "ambient-authority", + "rand", +@@ -221,27 +216,26 @@ dependencies = [ + + [[package]] + name = "cap-std" +-version = "0.19.1" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "037334fe2f30ec71bcc51af1e8cbb8a9f9ac6a6b8cbd657d58dfef2ad5b9f19a" ++checksum = "c9d6e70b626eceac9d6fc790fe2d72cc3f2f7bc3c35f467690c54a526b0f56db" + dependencies = [ + "cap-primitives", ++ "io-extras", + "io-lifetimes", + "ipnet", +- "rsix 0.23.9", +- "rustc_version", +- "unsafe-io", ++ "rustix 0.35.16", + ] + + [[package]] + name = "cap-time-ext" +-version = "0.19.1" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "aea5319ada3a9517fc70eafe9cf3275f04da795c53770ebc5d91f4a33f4dd2b5" ++checksum = "c3a0524f7c4cff2ea547ae2b652bf7a348fd3e48f76556dc928d8b45ab2f1d50" + dependencies = [ + "cap-primitives", + "once_cell", +- "rsix 0.23.9", ++ "rustix 0.35.16", + "winx", + ] + +@@ -256,11 +250,12 @@ dependencies = [ + + [[package]] + name = "cc" +-version = "1.0.72" ++version = "1.0.83" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "22a9137b95ea06864e018375b72adfb7db6e6f68cfc8df5a04d00288050485ee" ++checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" + dependencies = [ + "jobserver", ++ "libc", + ] + + [[package]] +@@ -275,7 +270,7 @@ version = "2.34.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" + dependencies = [ +- "bitflags", ++ "bitflags 1.3.2", + "textwrap 0.11.0", + "unicode-width", + ] +@@ -287,7 +282,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "190814073e85d238f31ff738fcb0bf6910cedeb73376c87cd69291028966fd83" + dependencies = [ + "atty", +- "bitflags", ++ "bitflags 1.3.2", + "clap_derive", + "clap_lex", + "indexmap", +@@ -303,7 +298,7 @@ version = "3.2.7" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "759bf187376e1afa7b85b959e6a664a3e7a95203415dba952ad19139e798f902" + dependencies = [ +- "heck 0.4.0", ++ "heck", + "proc-macro-error", + "proc-macro2", + "quote", +@@ -355,60 +350,62 @@ dependencies = [ + + [[package]] + name = "cranelift-bforest" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "15013642ddda44eebcf61365b2052a23fd8b7314f90ba44aa059ec02643c5139" ++checksum = "593b398dd0c5b1e2e3a9c3dae8584e287894ea84e361949ad506376e99196265" + dependencies = [ + "cranelift-entity", + ] + + [[package]] + name = "cranelift-codegen" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "298f2a7ed5fdcb062d8e78b7496b0f4b95265d20245f2d0ca88f846dd192a3a3" ++checksum = "afc0d8faabd099ea15ab33d49d150e5572c04cfeb95d675fd41286739b754629" + dependencies = [ ++ "arrayvec", ++ "bumpalo", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", + "cranelift-entity", +- "gimli 0.25.0", ++ "cranelift-isle", ++ "gimli", + "log", +- "regalloc", ++ "regalloc2", + "smallvec", + "target-lexicon", + ] + + [[package]] + name = "cranelift-codegen-meta" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "5cf504261ac62dfaf4ffb3f41d88fd885e81aba947c1241275043885bc5f0bac" ++checksum = "1ac1669e42579476f001571d6ba4b825fac686282c97b88b18f8e34242066a81" + dependencies = [ + "cranelift-codegen-shared", +- "cranelift-entity", + ] + + [[package]] + name = "cranelift-codegen-shared" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1cd2a72db4301dbe7e5a4499035eedc1e82720009fb60603e20504d8691fa9cd" ++checksum = "e2a1b1eef9640ab72c1e7b583ac678083855a509da34b4b4378bd99954127c20" + + [[package]] + name = "cranelift-entity" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "48868faa07cacf948dc4a1773648813c0e453ff9467e800ff10f6a78c021b546" ++checksum = "eea4e17c3791fd8134640b26242a9ddbd7c67db78f0bad98cb778bf563ef81a0" + dependencies = [ + "serde", + ] + + [[package]] + name = "cranelift-frontend" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "351c9d13b4ecd1a536215ec2fd1c3ee9ee8bc31af172abf1e45ed0adb7a931df" ++checksum = "fca1474b5302348799656d43a40eacd716a3b46169405a3af812832c9edf77b4" + dependencies = [ + "cranelift-codegen", + "log", +@@ -416,11 +413,17 @@ dependencies = [ + "target-lexicon", + ] + ++[[package]] ++name = "cranelift-isle" ++version = "0.89.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "77aa537f020ea43483100153278e7215d41695bdcef9eea6642d122675f64249" ++ + [[package]] + name = "cranelift-native" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6df8b556663d7611b137b24db7f6c8d9a8a27d7f29c7ea7835795152c94c1b75" ++checksum = "8bdc6b65241a95b7d8eafbf4e114c082e49b80162a2dcd9c6bcc5989c3310c9e" + dependencies = [ + "cranelift-codegen", + "libc", +@@ -429,9 +432,9 @@ dependencies = [ + + [[package]] + name = "cranelift-wasm" +-version = "0.77.0" ++version = "0.89.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7a69816d90db694fa79aa39b89dda7208a4ac74b6f2b8f3c4da26ee1c8bdfc5e" ++checksum = "4eb6359f606a1c80ccaa04fae9dbbb504615ec7a49b6c212b341080fff7a65dd" + dependencies = [ + "cranelift-codegen", + "cranelift-entity", +@@ -643,6 +646,16 @@ dependencies = [ + "winapi", + ] + ++[[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 = "errno-dragonfly" + version = "0.1.2" +@@ -678,7 +691,7 @@ dependencies = [ + "cfg-if", + "libc", + "redox_syscall", +- "windows-sys", ++ "windows-sys 0.36.1", + ] + + [[package]] +@@ -688,7 +701,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" + dependencies = [ + "crc32fast", +- "miniz_oxide 0.5.3", ++ "miniz_oxide", + ] + + [[package]] +@@ -724,24 +737,13 @@ dependencies = [ + + [[package]] + name = "fs-set-times" +-version = "0.11.0" ++version = "0.17.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b05f9ac4aceff7d9f3cd1701217aa72f87a0bf7c6592886efe819727292a4c7f" ++checksum = "a267b6a9304912e018610d53fe07115d8b530b160e85db4d2d3a59f3ddde1aec" + dependencies = [ + "io-lifetimes", +- "rsix 0.22.4", +- "winapi", +-] +- +-[[package]] +-name = "fs-set-times" +-version = "0.12.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d9a6902d89feff48dc1cb9529bf2972cb98100310987b7a0ff9ac4c51adb0aff" +-dependencies = [ +- "io-lifetimes", +- "rsix 0.25.1", +- "winapi", ++ "rustix 0.35.16", ++ "windows-sys 0.36.1", + ] + + [[package]] +@@ -798,6 +800,15 @@ dependencies = [ + "slab", + ] + ++[[package]] ++name = "fxhash" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" ++dependencies = [ ++ "byteorder", ++] ++ + [[package]] + name = "generic-array" + version = "0.14.4" +@@ -821,21 +832,15 @@ dependencies = [ + + [[package]] + name = "gimli" +-version = "0.25.0" ++version = "0.26.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f0a01e0497841a3b2db4f8afa483cce65f7e96a3498bd6c541734792aeac8fe7" ++checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4" + dependencies = [ + "fallible-iterator", + "indexmap", + "stable_deref_trait", + ] + +-[[package]] +-name = "gimli" +-version = "0.26.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4" +- + [[package]] + name = "h2" + version = "0.3.13" +@@ -866,6 +871,9 @@ name = "hashbrown" + version = "0.12.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "607c8a29735385251a339424dd462993c0fed8fa09d378f259377df08c126022" ++dependencies = [ ++ "ahash", ++] + + [[package]] + name = "headers" +@@ -874,7 +882,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "a4c4eb0471fcb85846d8b0690695ef354f9afb11cb03cac2e1d7c9253351afb0" + dependencies = [ + "base64", +- "bitflags", ++ "bitflags 1.3.2", + "bytes", + "headers-core", + "http", +@@ -892,15 +900,6 @@ dependencies = [ + "http", + ] + +-[[package]] +-name = "heck" +-version = "0.3.3" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +-dependencies = [ +- "unicode-segmentation", +-] +- + [[package]] + name = "heck" + version = "0.4.0" +@@ -916,6 +915,15 @@ dependencies = [ + "libc", + ] + ++[[package]] ++name = "hermit-abi" ++version = "0.2.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" ++dependencies = [ ++ "libc", ++] ++ + [[package]] + name = "hmac" + version = "0.11.0" +@@ -1055,14 +1063,24 @@ dependencies = [ + "serde", + ] + ++[[package]] ++name = "io-extras" ++version = "0.15.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4a5d8c2ab5becd8720e30fd25f8fa5500d8dc3fceadd8378f05859bd7b46fc49" ++dependencies = [ ++ "io-lifetimes", ++ "windows-sys 0.36.1", ++] ++ + [[package]] + name = "io-lifetimes" +-version = "0.3.3" ++version = "0.7.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "278e90d6f8a6c76a8334b336e306efa3c5f2b604048cbfd486d6f49878e3af14" ++checksum = "59ce5ef949d49ee85593fc4d3f3f95ad61657076395cbbce23e2121fc5542074" + dependencies = [ +- "rustc_version", +- "winapi", ++ "libc", ++ "windows-sys 0.42.0", + ] + + [[package]] +@@ -1071,6 +1089,18 @@ version = "2.3.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "68f2d64f2edebec4ce84ad108148e67e1064789bee435edc5b60ad398714a3a9" + ++[[package]] ++name = "is-terminal" ++version = "0.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0d508111813f9af3afd2f92758f77e4ed2cc9371b642112c6a48d22eb73105c5" ++dependencies = [ ++ "hermit-abi 0.2.6", ++ "io-lifetimes", ++ "rustix 0.35.16", ++ "windows-sys 0.36.1", ++] ++ + [[package]] + name = "itertools" + version = "0.10.3" +@@ -1092,6 +1122,26 @@ version = "1.0.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" + ++[[package]] ++name = "ittapi" ++version = "0.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "25a5c0b993601cad796222ea076565c5d9f337d35592f8622c753724f06d7271" ++dependencies = [ ++ "anyhow", ++ "ittapi-sys", ++ "log", ++] ++ ++[[package]] ++name = "ittapi-sys" ++version = "0.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cb7b5e473765060536a660eed127f758cf1a810c73e49063264959c60d1727d9" ++dependencies = [ ++ "cc", ++] ++ + [[package]] + name = "jobserver" + version = "0.1.24" +@@ -1145,27 +1195,21 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" + + [[package]] + name = "libc" +-version = "0.2.126" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" +- +-[[package]] +-name = "linux-raw-sys" +-version = "0.0.23" ++version = "0.2.151" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "5802c30e8a573a9af97d504e9e66a076e0b881112222a67a8e037a79658447d6" ++checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4" + + [[package]] + name = "linux-raw-sys" +-version = "0.0.28" ++version = "0.0.46" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "687387ff42ec7ea4f2149035a5675fedb675d26f98db90a1846ac63d3addb5f5" ++checksum = "d4d2456c373231a208ad294c33dc5bff30051eafd954cd4caae83a712b12854d" + + [[package]] + name = "linux-raw-sys" +-version = "0.0.29" ++version = "0.4.12" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "373555fbb6dbd7a7a9e6527215899c7715f89f1ffa7921eb4ee983642afb8c65" ++checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456" + + [[package]] + name = "lock_api" +@@ -1178,12 +1222,9 @@ dependencies = [ + + [[package]] + name = "log" +-version = "0.4.14" ++version = "0.4.20" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" +-dependencies = [ +- "cfg-if", +-] ++checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + + [[package]] + name = "mach" +@@ -1221,6 +1262,15 @@ version = "2.4.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" + ++[[package]] ++name = "memfd" ++version = "0.6.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" ++dependencies = [ ++ "rustix 0.38.28", ++] ++ + [[package]] + name = "memoffset" + version = "0.6.5" +@@ -1246,16 +1296,6 @@ dependencies = [ + "unicase 2.6.0", + ] + +-[[package]] +-name = "miniz_oxide" +-version = "0.4.4" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" +-dependencies = [ +- "adler", +- "autocfg", +-] +- + [[package]] + name = "miniz_oxide" + version = "0.5.3" +@@ -1274,15 +1314,9 @@ dependencies = [ + "libc", + "log", + "wasi 0.11.0+wasi-snapshot-preview1", +- "windows-sys", ++ "windows-sys 0.36.1", + ] + +-[[package]] +-name = "more-asserts" +-version = "0.2.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" +- + [[package]] + name = "multipart" + version = "0.18.0" +@@ -1334,30 +1368,22 @@ version = "1.13.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" + dependencies = [ +- "hermit-abi", ++ "hermit-abi 0.1.19", + "libc", + ] + + [[package]] + name = "object" +-version = "0.26.2" ++version = "0.29.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "39f37e50073ccad23b6d09bcb5b263f4e76d3bb6038e4a3c08e52162ffa8abc2" ++checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" + dependencies = [ + "crc32fast", ++ "hashbrown", + "indexmap", + "memchr", + ] + +-[[package]] +-name = "object" +-version = "0.27.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "67ac1d3f9a1d3616fd9a60c8d74296f22406a238b6a72f5cc1e6f314df4ffbf9" +-dependencies = [ +- "memchr", +-] +- + [[package]] + name = "oci-distribution" + version = "0.9.2" +@@ -1395,9 +1421,9 @@ dependencies = [ + + [[package]] + name = "once_cell" +-version = "1.13.0" ++version = "1.19.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1" ++checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + + [[package]] + name = "oorandom" +@@ -1417,7 +1443,7 @@ version = "0.10.41" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "618febf65336490dfcf20b73f885f5651a0c89c64c2d4a8c3662585a70bf5bd0" + dependencies = [ +- "bitflags", ++ "bitflags 1.3.2", + "cfg-if", + "foreign-types", + "libc", +@@ -1482,7 +1508,7 @@ dependencies = [ + "libc", + "redox_syscall", + "smallvec", +- "windows-sys", ++ "windows-sys 0.36.1", + ] + + [[package]] +@@ -1703,7 +1729,7 @@ version = "0.2.10" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" + dependencies = [ +- "bitflags", ++ "bitflags 1.3.2", + ] + + [[package]] +@@ -1717,13 +1743,14 @@ dependencies = [ + ] + + [[package]] +-name = "regalloc" +-version = "0.0.31" ++name = "regalloc2" ++version = "0.4.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "571f7f397d61c4755285cd37853fe8e03271c243424a907415909379659381c5" ++checksum = "91b2eab54204ea0117fe9a060537e0b07a4e72f7c7d182361ecc346cab2240e5" + dependencies = [ ++ "fxhash", + "log", +- "rustc-hash", ++ "slice-group-by", + "smallvec", + ] + +@@ -1753,18 +1780,6 @@ version = "0.6.25" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" + +-[[package]] +-name = "region" +-version = "2.2.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "877e54ea2adcd70d80e9179344c97f93ef0dffd6b03e1f4529e6e83ab2fa9ae0" +-dependencies = [ +- "bitflags", +- "libc", +- "mach", +- "winapi", +-] +- + [[package]] + name = "remove_dir_all" + version = "0.5.3" +@@ -1812,72 +1827,47 @@ dependencies = [ + ] + + [[package]] +-name = "rsix" +-version = "0.22.4" ++name = "rustc-demangle" ++version = "0.1.21" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "19dc84e006a7522c44207fcd9c1f504f7c9a503093070840105930a685e299a0" +-dependencies = [ +- "bitflags", +- "cc", +- "errno", +- "io-lifetimes", +- "itoa 0.4.8", +- "libc", +- "linux-raw-sys 0.0.23", +- "once_cell", +- "rustc_version", +-] ++checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" + + [[package]] +-name = "rsix" +-version = "0.23.9" ++name = "rustc_version" ++version = "0.4.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1f64c5788d5aab8b75441499d99576a24eb09f76fb267b36fec7e3d970c66431" ++checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" + dependencies = [ +- "bitflags", +- "cc", +- "errno", +- "io-lifetimes", +- "itoa 0.4.8", +- "libc", +- "linux-raw-sys 0.0.28", +- "once_cell", +- "rustc_version", ++ "semver", + ] + + [[package]] +-name = "rsix" +-version = "0.25.1" ++name = "rustix" ++version = "0.35.16" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "af4da272ce5ef18de07bd84edb77769ce16da0a4ca8f84d4389efafaf0850f9f" ++checksum = "5363f616a5244fd47fc1dd0a0b24c28a5c0154f5010c16332a7ad6f78f2e8b62" + dependencies = [ +- "bitflags", +- "errno", ++ "bitflags 1.3.2", ++ "errno 0.2.8", + "io-lifetimes", ++ "itoa 1.0.1", + "libc", +- "linux-raw-sys 0.0.29", +- "rustc_version", ++ "linux-raw-sys 0.0.46", ++ "once_cell", ++ "windows-sys 0.42.0", + ] + + [[package]] +-name = "rustc-demangle" +-version = "0.1.21" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" +- +-[[package]] +-name = "rustc-hash" +-version = "1.1.0" ++name = "rustix" ++version = "0.38.28" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +- +-[[package]] +-name = "rustc_version" +-version = "0.4.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" ++checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316" + dependencies = [ +- "semver", ++ "bitflags 2.4.1", ++ "errno 0.3.8", ++ "libc", ++ "linux-raw-sys 0.4.12", ++ "windows-sys 0.52.0", + ] + + [[package]] +@@ -1908,7 +1898,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" + dependencies = [ + "lazy_static", +- "windows-sys", ++ "windows-sys 0.36.1", + ] + + [[package]] +@@ -1929,7 +1919,7 @@ version = "2.6.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc" + dependencies = [ +- "bitflags", ++ "bitflags 1.3.2", + "core-foundation", + "core-foundation-sys", + "libc", +@@ -2064,6 +2054,12 @@ version = "0.4.5" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" + ++[[package]] ++name = "slice-group-by" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" ++ + [[package]] + name = "smallvec" + version = "1.7.0" +@@ -2111,18 +2107,17 @@ dependencies = [ + + [[package]] + name = "system-interface" +-version = "0.14.1" ++version = "0.23.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "024bceeab03feb74fb78395d5628df5664a7b6b849155f5e5db05e7e7b962128" ++checksum = "92adbaf536f5aff6986e1e62ba36cee72b1718c5153eee08b9e728ddde3f6029" + dependencies = [ + "atty", +- "bitflags", ++ "bitflags 1.3.2", + "cap-fs-ext", + "cap-std", + "io-lifetimes", +- "rsix 0.23.9", +- "rustc_version", +- "winapi", ++ "rustix 0.35.16", ++ "windows-sys 0.36.1", + "winx", + ] + +@@ -2139,9 +2134,9 @@ dependencies = [ + + [[package]] + name = "target-lexicon" +-version = "0.12.2" ++version = "0.12.12" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d9bffcddbc2458fa3e6058414599e3c838a022abae82e5c67b4f7f80298d5bff" ++checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a" + + [[package]] + name = "tempfile" +@@ -2479,12 +2474,6 @@ dependencies = [ + "tinyvec", + ] + +-[[package]] +-name = "unicode-segmentation" +-version = "1.9.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" +- + [[package]] + name = "unicode-width" + version = "0.1.9" +@@ -2497,17 +2486,6 @@ version = "0.2.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" + +-[[package]] +-name = "unsafe-io" +-version = "0.9.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "11e8cceed59fe60bd092be347343917cbc14b9239536980f09fe34e22c8efbc7" +-dependencies = [ +- "io-lifetimes", +- "rustc_version", +- "winapi", +-] +- + [[package]] + name = "url" + version = "1.7.2" +@@ -2626,67 +2604,61 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + + [[package]] + name = "wasi-cap-std-sync" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f9d864043ca88090ab06a24318b6447c7558eb797390ff312f4cc8d36348622f" ++checksum = "c4b4953999c746173c263b81e9e5e3e335ff47face7187ba2a5ecc91c716e6f3" + dependencies = [ + "anyhow", + "async-trait", +- "bitflags", + "cap-fs-ext", + "cap-rand", + "cap-std", + "cap-time-ext", +- "fs-set-times 0.11.0", ++ "fs-set-times", ++ "io-extras", + "io-lifetimes", +- "lazy_static", +- "rsix 0.22.4", ++ "is-terminal", ++ "once_cell", ++ "rustix 0.35.16", + "system-interface", + "tracing", + "wasi-common", +- "winapi", ++ "windows-sys 0.36.1", + ] + + [[package]] + name = "wasi-common" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f782e345db0464507cff47673c18b2765c020e8086e16a008a2bfffe0c78c819" ++checksum = "d47faf4f76ebfdeb1f3346a949c6fbf2f2471afc68280b00c76d6c02221d80ad" + dependencies = [ + "anyhow", +- "bitflags", ++ "bitflags 1.3.2", + "cap-rand", + "cap-std", +- "io-lifetimes", +- "rsix 0.22.4", ++ "io-extras", ++ "rustix 0.35.16", + "thiserror", + "tracing", + "wiggle", +- "winapi", ++ "windows-sys 0.36.1", + ] + + [[package]] + name = "wasi-tokio" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bb34b1f956b3035b9f0e260725fb5b20d0b044a74362a45bb4558c1de46e345c" ++checksum = "0ec5c029f1e04f7e2d87af3cd978c4d3f05f06ab84f4e6d31ad7e6505d4b5e9c" + dependencies = [ + "anyhow", +- "bitflags", +- "cap-fs-ext", + "cap-std", +- "cap-time-ext", +- "fs-set-times 0.11.0", ++ "io-extras", + "io-lifetimes", +- "lazy_static", +- "rsix 0.22.4", +- "system-interface", ++ "rustix 0.35.16", + "tokio", +- "tracing", + "wasi-cap-std-sync", + "wasi-common", + "wiggle", +- "winapi", + ] + + [[package]] +@@ -2757,9 +2729,9 @@ checksum = "0237232789cf037d5480773fe568aac745bfe2afbc11a863e97901780a6b47cc" + + [[package]] + name = "wasm-encoder" +-version = "0.14.0" ++version = "0.38.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f76068e87fe9b837a6bc2ccded66784173eadb828c4168643e9fddf6f9ed2e61" ++checksum = "0ad2b51884de9c7f4fe2fd1043fccb8dcad4b1e29558146ee57a144d15779f3f" + dependencies = [ + "leb128", + ] +@@ -2795,31 +2767,31 @@ dependencies = [ + + [[package]] + name = "wasmparser" +-version = "0.80.2" ++version = "0.92.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "449167e2832691a1bff24cde28d2804e90e09586a448c8e76984792c44334a6b" ++checksum = "7da34cec2a8c23db906cdf8b26e988d7a7f0d549eb5d51299129647af61a1b37" ++dependencies = [ ++ "indexmap", ++] + + [[package]] + name = "wasmtime" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "899b1e5261e3d3420860dacfb952871ace9d7ba9f953b314f67aaf9f8e2a4d89" ++checksum = "743d37c265fa134a76de653c7e66be22590eaccd03da13cee99f3ac7a59cb826" + dependencies = [ + "anyhow", +- "backtrace", ++ "async-trait", + "bincode", + "cfg-if", +- "cpp_demangle", + "indexmap", +- "lazy_static", + "libc", + "log", +- "object 0.26.2", ++ "object", ++ "once_cell", + "paste", + "psm", + "rayon", +- "region", +- "rustc-demangle", + "serde", + "target-lexicon", + "wasmparser", +@@ -2830,35 +2802,43 @@ dependencies = [ + "wasmtime-jit", + "wasmtime-runtime", + "wat", +- "winapi", ++ "windows-sys 0.36.1", ++] ++ ++[[package]] ++name = "wasmtime-asm-macros" ++version = "2.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "de327cf46d5218315957138131ed904621e6f99018aa2da508c0dcf0c65f1bf2" ++dependencies = [ ++ "cfg-if", + ] + + [[package]] + name = "wasmtime-cache" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e2493b81d7a9935f7af15e06beec806f256bc974a90a843685f3d61f2fc97058" ++checksum = "42bd53d27df1076100519b680b45d8209aed62b4bbaf0913732810cb216f7b2b" + dependencies = [ + "anyhow", + "base64", + "bincode", + "directories-next", +- "errno", + "file-per-thread-logger", +- "libc", + "log", ++ "rustix 0.35.16", + "serde", + "sha2", + "toml", +- "winapi", ++ "windows-sys 0.36.1", + "zstd", + ] + + [[package]] + name = "wasmtime-cranelift" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "99706bacdf5143f7f967d417f0437cce83a724cf4518cb1a3ff40e519d793021" ++checksum = "017c3605ccce867b3ba7f71d95e5652acc22b9dc2971ad6a6f9df4a8d7af2648" + dependencies = [ + "anyhow", + "cranelift-codegen", +@@ -2866,9 +2846,9 @@ dependencies = [ + "cranelift-frontend", + "cranelift-native", + "cranelift-wasm", +- "gimli 0.25.0", +- "more-asserts", +- "object 0.26.2", ++ "gimli", ++ "log", ++ "object", + "target-lexicon", + "thiserror", + "wasmparser", +@@ -2877,18 +2857,16 @@ dependencies = [ + + [[package]] + name = "wasmtime-environ" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ac42cb562a2f98163857605f02581d719a410c5abe93606128c59a10e84de85b" ++checksum = "6aec5c1f81aab9bb35997113c171b6bb9093afc90e3757c55e0c08dc9ac612e4" + dependencies = [ + "anyhow", +- "cfg-if", + "cranelift-entity", +- "gimli 0.25.0", ++ "gimli", + "indexmap", + "log", +- "more-asserts", +- "object 0.26.2", ++ "object", + "serde", + "target-lexicon", + "thiserror", +@@ -2898,70 +2876,85 @@ dependencies = [ + + [[package]] + name = "wasmtime-fiber" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8779dd78755a248512233df4f6eaa6ba075c41bea2085fec750ed2926897bf95" ++checksum = "1075aa43857086ef89afbe87602fe2dae98ad212582e722b6d3d2676bb5ee141" + dependencies = [ + "cc", +- "libc", +- "winapi", ++ "cfg-if", ++ "rustix 0.35.16", ++ "wasmtime-asm-macros", ++ "windows-sys 0.36.1", + ] + + [[package]] + name = "wasmtime-jit" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "24f46dd757225f29a419be415ea6fb8558df9b0194f07e3a6a9c99d0e14dd534" ++checksum = "08c683893dbba3986aa71582a5332b87157fb95d34098de2e5f077c7f078726d" + dependencies = [ +- "addr2line 0.16.0", ++ "addr2line", + "anyhow", + "bincode", + "cfg-if", +- "gimli 0.25.0", +- "libc", ++ "cpp_demangle", ++ "gimli", ++ "ittapi", + "log", +- "more-asserts", +- "object 0.26.2", +- "region", ++ "object", ++ "rustc-demangle", ++ "rustix 0.35.16", + "serde", + "target-lexicon", + "thiserror", +- "wasmparser", + "wasmtime-environ", ++ "wasmtime-jit-debug", + "wasmtime-runtime", +- "winapi", ++ "windows-sys 0.36.1", ++] ++ ++[[package]] ++name = "wasmtime-jit-debug" ++version = "2.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b2f8f15a81292eec468c79a4f887a37a3d02eb0c610f34ddbec607d3e9022f18" ++dependencies = [ ++ "object", ++ "once_cell", ++ "rustix 0.35.16", + ] + + [[package]] + name = "wasmtime-runtime" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0122215a44923f395487048cb0a1d60b5b32c73aab15cf9364b798dbaff0996f" ++checksum = "09af6238c962e8220424c815a7b1a9a6d0ba0694f0ab0ae12a6cda1923935a0d" + dependencies = [ + "anyhow", +- "backtrace", + "cc", + "cfg-if", + "indexmap", +- "lazy_static", + "libc", + "log", + "mach", ++ "memfd", + "memoffset", +- "more-asserts", ++ "paste", + "rand", +- "region", ++ "rustix 0.35.16", + "thiserror", ++ "wasmtime-asm-macros", + "wasmtime-environ", + "wasmtime-fiber", +- "winapi", ++ "wasmtime-jit-debug", ++ "windows-sys 0.36.1", + ] + + [[package]] + name = "wasmtime-types" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f9b01caf8a204ef634ebac99700e77ba716d3ebbb68a1abbc2ceb6b16dbec9e4" ++checksum = "5dc3dd9521815984b35d6362f79e6b9c72475027cd1c71c44eb8df8fbf33a9fb" + dependencies = [ + "cranelift-entity", + "serde", +@@ -2971,9 +2964,9 @@ dependencies = [ + + [[package]] + name = "wasmtime-wasi" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "12b0e75c044aa4afba7f274a625a43260390fbdd8ca79e4aeed6827f7760fba2" ++checksum = "a3bba5cc0a940cef3fbbfa7291c7e5fe0f7ec6fb2efa7bd1504032ed6202a1c0" + dependencies = [ + "anyhow", + "wasi-cap-std-sync", +@@ -2994,9 +2987,9 @@ dependencies = [ + + [[package]] + name = "wast" +-version = "43.0.0" ++version = "69.0.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "408feaebf6dbf9d154957873b14d00e8fba4cbc17a8cbb1bc9e4c1db425c50a8" ++checksum = "c1ee37317321afde358e4d7593745942c48d6d17e0e6e943704de9bbee121e7a" + dependencies = [ + "leb128", + "memchr", +@@ -3006,11 +2999,11 @@ dependencies = [ + + [[package]] + name = "wat" +-version = "1.0.45" ++version = "1.0.82" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2b70bfff0cfaf33dc9d641196dbcd0023a2da8b4b9030c59535cb44e2884983b" ++checksum = "aeb338ee8dee4d4cd05e6426683f21c5087dc7cfc8903e839ccf48d43332da3c" + dependencies = [ +- "wast 43.0.0", ++ "wast 69.0.1", + ] + + [[package]] +@@ -3025,28 +3018,27 @@ dependencies = [ + + [[package]] + name = "wiggle" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "cbd408c06047cf3aa2d0408a34817da7863bcfc1e7d16c154ef92864b5fa456a" ++checksum = "211ef4d238fd83bbe6f1bc57f3e2e20dc8b1f999188be252e7a535b696c6f84f" + dependencies = [ + "anyhow", + "async-trait", +- "bitflags", ++ "bitflags 1.3.2", + "thiserror", + "tracing", + "wasmtime", + "wiggle-macro", +- "witx", + ] + + [[package]] + name = "wiggle-generate" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "02575a1580353bd15a0bce308887ff6c9dae13fb3c60d49caf2e6dabf944b14d" ++checksum = "63feec26b2fc3708c7a63316949ca75dd96988f03a17e4cb8d533dc62587ada4" + dependencies = [ + "anyhow", +- "heck 0.3.3", ++ "heck", + "proc-macro2", + "quote", + "shellexpand", +@@ -3056,15 +3048,14 @@ dependencies = [ + + [[package]] + name = "wiggle-macro" +-version = "0.30.0" ++version = "2.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "74b91f637729488f0318db544b24493788a3228fed1e1ccd24abbe4fc4f92663" ++checksum = "494dc2646618c2b7fb0ec5e1d27dbac5ca31194c00a64698a4b5b35a83d80c21" + dependencies = [ + "proc-macro2", + "quote", + "syn", + "wiggle-generate", +- "witx", + ] + + [[package]] +@@ -3104,43 +3095,166 @@ version = "0.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" + dependencies = [ +- "windows_aarch64_msvc", +- "windows_i686_gnu", +- "windows_i686_msvc", +- "windows_x86_64_gnu", +- "windows_x86_64_msvc", ++ "windows_aarch64_msvc 0.36.1", ++ "windows_i686_gnu 0.36.1", ++ "windows_i686_msvc 0.36.1", ++ "windows_x86_64_gnu 0.36.1", ++ "windows_x86_64_msvc 0.36.1", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.42.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" ++dependencies = [ ++ "windows_aarch64_gnullvm 0.42.2", ++ "windows_aarch64_msvc 0.42.2", ++ "windows_i686_gnu 0.42.2", ++ "windows_i686_msvc 0.42.2", ++ "windows_x86_64_gnu 0.42.2", ++ "windows_x86_64_gnullvm 0.42.2", ++ "windows_x86_64_msvc 0.42.2", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" ++dependencies = [ ++ "windows-targets", + ] + ++[[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.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" ++ ++[[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.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" + ++[[package]] ++name = "windows_aarch64_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" ++ ++[[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.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" + ++[[package]] ++name = "windows_i686_gnu" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" ++ ++[[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.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" + ++[[package]] ++name = "windows_i686_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" ++ ++[[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.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" + ++[[package]] ++name = "windows_x86_64_gnu" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" ++ ++[[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.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" ++ ++[[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.36.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" + ++[[package]] ++name = "windows_x86_64_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" ++ ++[[package]] ++name = "windows_x86_64_msvc" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" ++ + [[package]] + name = "winreg" + version = "0.7.0" +@@ -3152,13 +3266,13 @@ dependencies = [ + + [[package]] + name = "winx" +-version = "0.29.2" ++version = "0.33.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "afba0891d41a50943c32fcea61e124b9dd5755275054b0a3e1e1eba26e671137" ++checksum = "b7b01e010390eb263a4518c8cebf86cb67469d1511c00b749a47b64c39e8054d" + dependencies = [ +- "bitflags", ++ "bitflags 1.3.2", + "io-lifetimes", +- "winapi", ++ "windows-sys 0.36.1", + ] + + [[package]] +@@ -3195,18 +3309,18 @@ dependencies = [ + + [[package]] + name = "zstd" +-version = "0.9.2+zstd.1.5.1" ++version = "0.11.2+zstd.1.5.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2390ea1bf6c038c39674f22d95f0564725fc06034a47129179810b2fc58caa54" ++checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" + dependencies = [ + "zstd-safe", + ] + + [[package]] + name = "zstd-safe" +-version = "4.1.3+zstd.1.5.1" ++version = "5.0.2+zstd.1.5.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e99d81b99fb3c2c2c794e3fe56c305c63d5173a16a46b5850b07c935ffc7db79" ++checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" + dependencies = [ + "libc", + "zstd-sys", +@@ -3214,10 +3328,10 @@ dependencies = [ + + [[package]] + name = "zstd-sys" +-version = "1.6.2+zstd.1.5.1" ++version = "2.0.9+zstd.1.5.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2daf2f248d9ea44454bfcb2516534e8b8ad2fc91bf818a1885495fc42bc8ac9f" ++checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" + dependencies = [ + "cc", +- "libc", ++ "pkg-config", + ] +diff --git a/Cargo.toml b/Cargo.toml +index c92a4a1..75e14ba 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -13,9 +13,9 @@ anyhow = "1.0.44" + tracing = "0.1" + tracing-subscriber = {version = "0.3.14", features = ["env-filter"] } + semver = "^1.0" +-wasmtime = "0.30.0" +-wasmtime-wasi = { version= "0.30.0", features = ["tokio"]} +-wasi-common = "0.30.0" ++wasmtime = "2.0.1" ++wasmtime-wasi = { version= "2.0.1", features = ["tokio"]} ++wasi-common = "2.0.1" + serde = { version = "1.0", features = ["derive"] } + serde_json = "1.0" + serde_derive = "1.0" +diff --git a/src/wrapper/wasmtime_runtime.rs b/src/wrapper/wasmtime_runtime.rs +index 6d5e9cc..5d214c1 100644 +--- a/src/wrapper/wasmtime_runtime.rs ++++ b/src/wrapper/wasmtime_runtime.rs +@@ -28,9 +28,9 @@ impl WasmtimeRuntime { + .wasm_bulk_memory(true) + .wasm_multi_value(true) + .wasm_multi_memory(true) +- .wasm_module_linking(false) ++ + // Disable profiler +- .profiler(ProfilingStrategy::None)? ++ .profiler(ProfilingStrategy::None) + .cranelift_opt_level(OptLevel::SpeedAndSize) + // Allocate resources on demand because we can't predict how many instances will exist + .allocation_strategy(InstanceAllocationStrategy::OnDemand) diff --git a/WasmEngine.spec b/WasmEngine.spec index cb212a8..1bdb31b 100644 --- a/WasmEngine.spec +++ b/WasmEngine.spec @@ -1,87 +1,92 @@ -%global debug_package %{nil} - -Name: WasmEngine -Version: v0.1.2 -Release: 4 -Summary: WasmEngine is a webassembly function engine, which provides high concurrency and sandbox security. - -License: MulanPSL-2.0 -URL: https://gitee.com/openeuler/WasmEngine -Source0: %{name}-%{version}.tar.gz -Source1: git-commit -Source2: VERSION-openeuler -Source3: apply-patches -Source4: gen-version.sh -Source5: series.conf -Source6: patch.tar.gz - -BuildRequires: rust,cargo,rust-packaging,git -BuildRequires: gcc,dtc,openssl-devel - -%description -Based on Rust programming language, WasmEngine is a webassembly function engine, which provides high concurrency and sandbox security. -Summary: %{summary} - -%prep -cp %{SOURCE0} . -cp %{SOURCE1} . -cp %{SOURCE2} . -cp %{SOURCE3} . -cp %{SOURCE4} . -cp %{SOURCE5} . -cp %{SOURCE6} . - -%build -sh ./apply-patches -rm -f build.rs - -mkdir -p .cargo -touch .cargo/config -cat > .cargo/config << EOF -[source.crates-io] -replace-with = "vendored-sources" - -[source.vendored-sources] -directory = "vendor" - -[profile.release] -strip = true -EOF - -CARGO_HOME=.cargo cargo build --release - -echo "build wasm success" - -%install -install -d %{buildroot}%{_bindir} -install -p ./target/release/wasm_engine %{buildroot}/usr/bin/wasm_engine - -%clean -rm -rf %{buildroot} - -%files -%attr(550,root,root) %{_bindir}/wasm_engine - -%changelog -* Tue Mar 07 2023 xingweizheng - v0.1.2-4 -- Type: bugfix -- CVE: NA -- SUG: restart -- DESC: strip wasm_engine binary -* Mon Aug 08 2022 jiangpengfei - v0.1.2-3 -- Type: bugfix -- CVE: NA -- SUG: restart -- DESC: patch structure init, sync upstream patches - -* Mon Aug 08 2022 xingweizheng - v0.1.2-2 -- Type: requirement -- CVE: NA -- SUG: restart -- DESC: add patch directory - -* Fri Jul 29 2022 jiangpengfei - v0.1.2-1 -- Type: requirement -- CVE: NA -- SUG: restart +%global debug_package %{nil} + +Name: WasmEngine +Version: v0.1.2 +Release: 5 +Summary: WasmEngine is a webassembly function engine, which provides high concurrency and sandbox security. + +License: MulanPSL-2.0 +URL: https://gitee.com/openeuler/WasmEngine +Source0: %{name}-%{version}.tar.gz +Source1: git-commit +Source2: VERSION-openeuler +Source3: apply-patches +Source4: gen-version.sh +Source5: series.conf +Source6: patch.tar.gz +Patch0: 0001-update-wasmtime-to-support-riscv64.patch +BuildRequires: rust,cargo,rust-packaging,git +BuildRequires: gcc,dtc,openssl-devel + +%description +Based on Rust programming language, WasmEngine is a webassembly function engine, which provides high concurrency and sandbox security. +Summary: %{summary} + +%prep +cp %{SOURCE0} . +cp %{SOURCE1} . +cp %{SOURCE2} . +cp %{SOURCE3} . +cp %{SOURCE4} . +cp %{SOURCE5} . +cp %{SOURCE6} . + +%build +sh ./apply-patches +rm -f build.rs + +mkdir -p .cargo +touch .cargo/config +cat > .cargo/config << EOF +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" + +[profile.release] +strip = true +EOF + +CARGO_HOME=.cargo cargo build --release + +echo "build wasm success" + +%install +install -d %{buildroot}%{_bindir} +install -p ./target/release/wasm_engine %{buildroot}/usr/bin/wasm_engine + +%clean +rm -rf %{buildroot} + +%files +%attr(550,root,root) %{_bindir}/wasm_engine + +%changelog +* Tue Mar 07 2023 zhouruifa - v0.1.2-5 +- Type: bugfix +- CVE: NA +- SUG: restart +- DESC: update wasmtime to support riscv +* Tue Mar 07 2023 xingweizheng - v0.1.2-4 +- Type: bugfix +- CVE: NA +- SUG: restart +- DESC: strip wasm_engine binary +* Mon Aug 08 2022 jiangpengfei - v0.1.2-3 +- Type: bugfix +- CVE: NA +- SUG: restart +- DESC: patch structure init, sync upstream patches + +* Mon Aug 08 2022 xingweizheng - v0.1.2-2 +- Type: requirement +- CVE: NA +- SUG: restart +- DESC: add patch directory + +* Fri Jul 29 2022 jiangpengfei - v0.1.2-1 +- Type: requirement +- CVE: NA +- SUG: restart - DESC: package init \ No newline at end of file -- Gitee