Update wasm-tools crates (#5757)
* Update wasm-tools crates Pulls in a new component binary format which should hopefully be the last update for awhile. * Update cargo vet configuration
This commit is contained in:
38
Cargo.lock
generated
38
Cargo.lock
generated
@@ -3260,18 +3260,18 @@ checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-encoder"
|
name = "wasm-encoder"
|
||||||
version = "0.22.0"
|
version = "0.23.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ef126be0e14bdf355ac1a8b41afc89195289e5c7179f80118e3abddb472f0810"
|
checksum = "1c3e4bc09095436c8e7584d86d33e6c3ee67045af8fb262cbb9cc321de553428"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"leb128",
|
"leb128",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-mutate"
|
name = "wasm-mutate"
|
||||||
version = "0.2.16"
|
version = "0.2.18"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "dd32bdc265dba5092bf434475b12b9e54dd405938a487bdd86aa41873fbd8532"
|
checksum = "87a229d5b8e4b2b78985dc905f0a033ba8a0bc948321622d41912238c6e0eab1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"egg",
|
"egg",
|
||||||
"log",
|
"log",
|
||||||
@@ -3283,9 +3283,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-smith"
|
name = "wasm-smith"
|
||||||
version = "0.12.0"
|
version = "0.12.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "efa1d0e7cff965d746a1f559470bf4d9fbafd34fe11d4e34cfd0c382259bb986"
|
checksum = "411278ee8e89067a252a3a6d6d578038251f9c0a1d4c088adf4162ad13e97b04"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arbitrary",
|
"arbitrary",
|
||||||
"flagset",
|
"flagset",
|
||||||
@@ -3335,9 +3335,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasmparser"
|
name = "wasmparser"
|
||||||
version = "0.99.0"
|
version = "0.100.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9ef3b717afc67f848f412d4f02c127dd3e35a0eecd58c684580414df4fde01d3"
|
checksum = "64b20236ab624147dfbb62cf12a19aaf66af0e41b8398838b66e997d07d269d4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"url",
|
"url",
|
||||||
@@ -3354,9 +3354,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasmprinter"
|
name = "wasmprinter"
|
||||||
version = "0.2.49"
|
version = "0.2.50"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "27c13dff901f9354fa9a6a877152d9c5642513645985635c9b83bcca99e40ea1"
|
checksum = "b2d3f7d7cb1e00ae9f91bb21f2856cdc68a913afb3b6b33fca5a83dba8c8c4eb"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"wasmparser",
|
"wasmparser",
|
||||||
@@ -3509,7 +3509,7 @@ dependencies = [
|
|||||||
"wasmtime-wasi-nn",
|
"wasmtime-wasi-nn",
|
||||||
"wasmtime-wasi-threads",
|
"wasmtime-wasi-threads",
|
||||||
"wasmtime-wast",
|
"wasmtime-wast",
|
||||||
"wast 52.0.2",
|
"wast 53.0.0",
|
||||||
"wat",
|
"wat",
|
||||||
"windows-sys",
|
"windows-sys",
|
||||||
]
|
]
|
||||||
@@ -3796,7 +3796,7 @@ dependencies = [
|
|||||||
"anyhow",
|
"anyhow",
|
||||||
"log",
|
"log",
|
||||||
"wasmtime",
|
"wasmtime",
|
||||||
"wast 52.0.2",
|
"wast 53.0.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -3831,9 +3831,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wast"
|
name = "wast"
|
||||||
version = "52.0.2"
|
version = "53.0.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "707a9fd59b0144c530f0a31f21737036ffea6ece492918cae0843dd09b6f9bc9"
|
checksum = "8244fa24196b1d8fd3ca4a96a3a164c40f846498c5deab6caf414c67340ca4af"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"leb128",
|
"leb128",
|
||||||
"memchr",
|
"memchr",
|
||||||
@@ -3843,11 +3843,11 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wat"
|
name = "wat"
|
||||||
version = "1.0.56"
|
version = "1.0.58"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "91d73cbaa81acc2f8a3303e2289205c971d99c89245c2f56ab8765c4daabc2be"
|
checksum = "4620f1059add6dad511decb9d5d88b4a0a0d3e2e315ed34f79b0dc0dce18aa4b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"wast 52.0.2",
|
"wast 53.0.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -4095,9 +4095,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wit-parser"
|
name = "wit-parser"
|
||||||
version = "0.5.0"
|
version = "0.6.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "896b2d88f139eb303e8e76fd72925115b11aad1944887ec2e5b2eeac1e58526f"
|
checksum = "6e0fe225a32528b42a7037add1b5ed1dff83288f21a067007b34565ce87fc2c7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"id-arena",
|
"id-arena",
|
||||||
|
|||||||
16
Cargo.toml
16
Cargo.toml
@@ -162,14 +162,14 @@ winch-test-macros = { path = "winch/test-macros" }
|
|||||||
|
|
||||||
target-lexicon = { version = "0.12.3", default-features = false, features = ["std"] }
|
target-lexicon = { version = "0.12.3", default-features = false, features = ["std"] }
|
||||||
anyhow = "1.0.22"
|
anyhow = "1.0.22"
|
||||||
wasmparser = "0.99.0"
|
wasmparser = "0.100.0"
|
||||||
wat = "1.0.56"
|
wat = "1.0.57"
|
||||||
wast = "52.0.2"
|
wast = "53.0.0"
|
||||||
wasmprinter = "0.2.49"
|
wasmprinter = "0.2.50"
|
||||||
wasm-encoder = "0.22.0"
|
wasm-encoder = "0.23.0"
|
||||||
wasm-smith = "0.12.0"
|
wasm-smith = "0.12.1"
|
||||||
wasm-mutate = "0.2.16"
|
wasm-mutate = "0.2.17"
|
||||||
wit-parser = "0.5.0"
|
wit-parser = "0.6.0"
|
||||||
windows-sys = "0.45.0"
|
windows-sys = "0.45.0"
|
||||||
env_logger = "0.9"
|
env_logger = "0.9"
|
||||||
rustix = "0.36.7"
|
rustix = "0.36.7"
|
||||||
|
|||||||
@@ -132,7 +132,12 @@ impl Wasmtime {
|
|||||||
);
|
);
|
||||||
Import::Interface { snake }
|
Import::Interface { snake }
|
||||||
}
|
}
|
||||||
WorldItem::Type(_) => unreachable!(),
|
WorldItem::Type(ty) => {
|
||||||
|
gen.define_type(name, *ty);
|
||||||
|
let body = mem::take(&mut gen.src);
|
||||||
|
self.src.push_str(&body);
|
||||||
|
return;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
self.imports.push(import);
|
self.imports.push(import);
|
||||||
@@ -150,12 +155,7 @@ impl Wasmtime {
|
|||||||
self.exports.funcs.push(body);
|
self.exports.funcs.push(body);
|
||||||
(format!("wasmtime::component::Func"), getter)
|
(format!("wasmtime::component::Func"), getter)
|
||||||
}
|
}
|
||||||
WorldItem::Type(ty) => {
|
WorldItem::Type(_) => unreachable!(),
|
||||||
gen.define_type(name, *ty);
|
|
||||||
let body = mem::take(&mut gen.src);
|
|
||||||
self.src.push_str(&body);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
WorldItem::Interface(id) => {
|
WorldItem::Interface(id) => {
|
||||||
gen.current_interface = Some(*id);
|
gen.current_interface = Some(*id);
|
||||||
gen.types(*id);
|
gen.types(*id);
|
||||||
|
|||||||
@@ -756,6 +756,12 @@ criteria = "safe-to-deploy"
|
|||||||
version = "0.22.0"
|
version = "0.22.0"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wasm-encoder]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "0.23.0"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wasm-encoder]]
|
[[audits.wasm-encoder]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
@@ -828,6 +834,12 @@ criteria = "safe-to-run"
|
|||||||
version = "0.2.16"
|
version = "0.2.16"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wasm-mutate]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-run"
|
||||||
|
version = "0.2.18"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wasm-smith]]
|
[[audits.wasm-smith]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
@@ -894,6 +906,12 @@ criteria = "safe-to-run"
|
|||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wasm-smith]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-run"
|
||||||
|
version = "0.12.2"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wasmi]]
|
[[audits.wasmi]]
|
||||||
who = "Robin Freyler <robin.freyler@gmail.com>"
|
who = "Robin Freyler <robin.freyler@gmail.com>"
|
||||||
criteria = "safe-to-run"
|
criteria = "safe-to-run"
|
||||||
@@ -1008,6 +1026,12 @@ criteria = "safe-to-deploy"
|
|||||||
version = "0.99.0"
|
version = "0.99.0"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wasmparser]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "0.100.0"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wasmparser-nostd]]
|
[[audits.wasmparser-nostd]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-run"
|
criteria = "safe-to-run"
|
||||||
@@ -1085,6 +1109,12 @@ criteria = "safe-to-deploy"
|
|||||||
version = "0.2.49"
|
version = "0.2.49"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wasmprinter]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "0.2.50"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wast]]
|
[[audits.wast]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
@@ -1151,6 +1181,12 @@ criteria = "safe-to-deploy"
|
|||||||
version = "52.0.2"
|
version = "52.0.2"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wast]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "53.0.0"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wat]]
|
[[audits.wat]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
@@ -1199,6 +1235,12 @@ criteria = "safe-to-deploy"
|
|||||||
version = "1.0.56"
|
version = "1.0.56"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wat]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "1.0.58"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
[[audits.wat]]
|
[[audits.wat]]
|
||||||
who = "Alex Crichton <alex@alexcrichton.com>"
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
@@ -1349,3 +1391,9 @@ criteria = "safe-to-deploy"
|
|||||||
version = "0.5.0"
|
version = "0.5.0"
|
||||||
notes = "The Bytecode Alliance is the author of this crate."
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
[[audits.wit-parser]]
|
||||||
|
who = "Alex Crichton <alex@alexcrichton.com>"
|
||||||
|
criteria = "safe-to-deploy"
|
||||||
|
version = "0.6.0"
|
||||||
|
notes = "The Bytecode Alliance is the author of this crate."
|
||||||
|
|
||||||
|
|||||||
@@ -66,10 +66,6 @@ criteria = "safe-to-deploy"
|
|||||||
version = "0.1.8"
|
version = "0.1.8"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
|
|
||||||
[[exemptions.base64]]
|
|
||||||
version = "0.13.0"
|
|
||||||
criteria = "safe-to-deploy"
|
|
||||||
|
|
||||||
[[exemptions.base64ct]]
|
[[exemptions.base64ct]]
|
||||||
version = "1.1.1"
|
version = "1.1.1"
|
||||||
criteria = "safe-to-deploy"
|
criteria = "safe-to-deploy"
|
||||||
|
|||||||
@@ -466,86 +466,6 @@
|
|||||||
))
|
))
|
||||||
)
|
)
|
||||||
|
|
||||||
;; struct field reordering
|
|
||||||
(component
|
|
||||||
(component $c1
|
|
||||||
(type $in (record
|
|
||||||
(field "a" u32)
|
|
||||||
(field "b" bool)
|
|
||||||
(field "c" u8)
|
|
||||||
))
|
|
||||||
(type $out (record
|
|
||||||
(field "x" u8)
|
|
||||||
(field "y" u32)
|
|
||||||
(field "z" bool)
|
|
||||||
))
|
|
||||||
|
|
||||||
(core module $m
|
|
||||||
(memory (export "memory") 1)
|
|
||||||
(func (export "r") (param i32 i32 i32) (result i32)
|
|
||||||
(if (i32.ne (local.get 0) (i32.const 3)) (unreachable)) ;; a == 3
|
|
||||||
(if (i32.ne (local.get 1) (i32.const 1)) (unreachable)) ;; b == true
|
|
||||||
(if (i32.ne (local.get 2) (i32.const 2)) (unreachable)) ;; c == 2
|
|
||||||
|
|
||||||
|
|
||||||
(i32.store8 offset=0 (i32.const 200) (i32.const 0xab)) ;; x == 0xab
|
|
||||||
(i32.store offset=4 (i32.const 200) (i32.const 200)) ;; y == 200
|
|
||||||
(i32.store8 offset=8 (i32.const 200) (i32.const 0)) ;; z == false
|
|
||||||
i32.const 200
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(core instance $m (instantiate $m))
|
|
||||||
(func (export "r") (param "a" $in) (result $out)
|
|
||||||
(canon lift (core func $m "r") (memory $m "memory"))
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(component $c2
|
|
||||||
;; note the different field orderings than the records specified above
|
|
||||||
(type $in (record
|
|
||||||
(field "b" bool)
|
|
||||||
(field "c" u8)
|
|
||||||
(field "a" u32)
|
|
||||||
))
|
|
||||||
(type $out (record
|
|
||||||
(field "z" bool)
|
|
||||||
(field "x" u8)
|
|
||||||
(field "y" u32)
|
|
||||||
))
|
|
||||||
(import "r" (func $r (param "a" $in) (result $out)))
|
|
||||||
(core module $libc (memory (export "memory") 1))
|
|
||||||
(core instance $libc (instantiate $libc))
|
|
||||||
(core func $r (canon lower (func $r) (memory $libc "memory")))
|
|
||||||
|
|
||||||
(core module $m
|
|
||||||
(import "" "r" (func $r (param i32 i32 i32 i32)))
|
|
||||||
(import "libc" "memory" (memory 0))
|
|
||||||
(func $start
|
|
||||||
i32.const 100 ;; b: bool
|
|
||||||
i32.const 2 ;; c: u8
|
|
||||||
i32.const 3 ;; a: u32
|
|
||||||
i32.const 100 ;; retptr
|
|
||||||
call $r
|
|
||||||
|
|
||||||
;; z == false
|
|
||||||
(if (i32.ne (i32.load8_u offset=0 (i32.const 100)) (i32.const 0)) (unreachable))
|
|
||||||
;; x == 0xab
|
|
||||||
(if (i32.ne (i32.load8_u offset=1 (i32.const 100)) (i32.const 0xab)) (unreachable))
|
|
||||||
;; y == 200
|
|
||||||
(if (i32.ne (i32.load offset=4 (i32.const 100)) (i32.const 200)) (unreachable))
|
|
||||||
)
|
|
||||||
(start $start)
|
|
||||||
)
|
|
||||||
(core instance (instantiate $m
|
|
||||||
(with "libc" (instance $libc))
|
|
||||||
(with "" (instance
|
|
||||||
(export "r" (func $r))
|
|
||||||
))
|
|
||||||
))
|
|
||||||
)
|
|
||||||
(instance $c1 (instantiate $c1))
|
|
||||||
(instance $c2 (instantiate $c2 (with "r" (func $c1 "r"))))
|
|
||||||
)
|
|
||||||
|
|
||||||
;; callee retptr misaligned
|
;; callee retptr misaligned
|
||||||
(assert_trap
|
(assert_trap
|
||||||
(component
|
(component
|
||||||
|
|||||||
Reference in New Issue
Block a user