diff --git a/Cargo.lock b/Cargo.lock index 0e720992f..f8e72ebef 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1150,11 +1150,11 @@ name = "test-helpers" version = "0.0.0" dependencies = [ "codegen-macro", - "wasm-encoder", + "wasm-encoder 0.26.0", "wat", "wit-bindgen-core", "wit-component", - "wit-parser 0.7.0", + "wit-parser 0.7.1", ] [[package]] @@ -1328,17 +1328,26 @@ dependencies = [ "leb128", ] +[[package]] +name = "wasm-encoder" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d05d0b6fcd0aeb98adf16e7975331b3c17222aa815148f5b976370ce589d80ef" +dependencies = [ + "leb128", +] + [[package]] name = "wasm-metadata" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23f0e21d37de19839e41148d35172a14475fe90bb3eefe27a75a9fd81d004a30" +checksum = "dbdef99fafff010c57fabb7bc703f0903ec16fcee49207a22dcc4f78ea44562f" dependencies = [ "anyhow", "indexmap", "serde", - "wasm-encoder", - "wasmparser 0.103.0", + "wasm-encoder 0.26.0", + "wasmparser 0.104.0", ] [[package]] @@ -1361,6 +1370,16 @@ dependencies = [ "url", ] +[[package]] +name = "wasmparser" +version = "0.104.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a396af81a7c56ad976131d6a35e4b693b78a1ea0357843bd436b4577e254a7d" +dependencies = [ + "indexmap", + "url", +] + [[package]] name = "wasmprinter" version = "0.2.55" @@ -1507,7 +1526,7 @@ dependencies = [ "serde", "target-lexicon", "thiserror", - "wasm-encoder", + "wasm-encoder 0.25.0", "wasmparser 0.102.0", "wasmprinter", "wasmtime-component-util", @@ -1625,21 +1644,21 @@ dependencies = [ [[package]] name = "wast" -version = "56.0.0" +version = "57.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b54185c051d7bbe23757d50fe575880a2426a2f06d2e9f6a10fd9a4a42920c0" +checksum = "6eb0f5ed17ac4421193c7477da05892c2edafd67f9639e3c11a82086416662dc" dependencies = [ "leb128", "memchr", "unicode-width", - "wasm-encoder", + "wasm-encoder 0.26.0", ] [[package]] name = "wat" -version = "1.0.62" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56681922808216ab86d96bb750f70d500b5a7800e41564290fd46bb773581299" +checksum = "ab9ab0d87337c3be2bb6fc5cd331c4ba9fd6bcb4ee85048a0dd59ed9ecf92e53" dependencies = [ "wast", ] @@ -1823,7 +1842,7 @@ dependencies = [ "clap", "heck", "test-helpers", - "wasm-encoder", + "wasm-encoder 0.26.0", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -1837,7 +1856,7 @@ dependencies = [ "clap", "heck", "test-artifacts", - "wasm-encoder", + "wasm-encoder 0.26.0", "wasmtime", "wat", "wit-bindgen-c", @@ -1847,7 +1866,7 @@ dependencies = [ "wit-bindgen-rust", "wit-bindgen-teavm-java", "wit-component", - "wit-parser 0.7.0", + "wit-parser 0.7.1", ] [[package]] @@ -1856,7 +1875,7 @@ version = "0.5.0" dependencies = [ "anyhow", "wit-component", - "wit-parser 0.7.0", + "wit-parser 0.7.1", ] [[package]] @@ -1930,20 +1949,20 @@ dependencies = [ [[package]] name = "wit-component" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1525441a5cdd77a259e6fb02432348d5040da428def769cafbdbc4260efdbde2" +checksum = "e291ff83cb9c8e59963cc6922bdda77ed8f5517d6835f0c98070c4e7f1ae4996" dependencies = [ "anyhow", "bitflags 1.3.2", "indexmap", "log", "url", - "wasm-encoder", + "wasm-encoder 0.26.0", "wasm-metadata", - "wasmparser 0.103.0", + "wasmparser 0.104.0", "wat", - "wit-parser 0.7.0", + "wit-parser 0.7.1", ] [[package]] @@ -1963,9 +1982,9 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "365273e457e2cacf762df10df4b1e0d4d9912b5332ff4cf2a172760fd67b7ec4" +checksum = "5ca2581061573ef6d1754983d7a9b3ed5871ef859d52708ea9a0f5af32919172" dependencies = [ "anyhow", "id-arena", diff --git a/Cargo.toml b/Cargo.toml index 6fb1a3def..9bcaada93 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,11 +29,11 @@ clap = { version = "4.2.2", features = ["derive"] } env_logger = "0.10.0" indexmap = "1.9.3" -wasm-encoder = "0.25.0" -wasm-metadata = "0.4.0" -wat = "1.0.62" -wit-parser = "0.7.0" -wit-component = "0.8.1" +wasm-encoder = "0.26.0" +wasm-metadata = "0.5.0" +wat = "1.0.63" +wit-parser = "0.7.1" +wit-component = "0.8.2" wit-bindgen-core = { path = 'crates/core', version = '0.5.0' } wit-bindgen-c = { path = 'crates/c', version = '0.5.0' } diff --git a/crates/c/src/component_type_object.rs b/crates/c/src/component_type_object.rs index 29df0721a..671d1dd95 100644 --- a/crates/c/src/component_type_object.rs +++ b/crates/c/src/component_type_object.rs @@ -43,8 +43,8 @@ pub fn object(resolve: &Resolve, world: WorldId, encoding: StringEncoding) -> Re // Add our custom section module.section(&CustomSection { - name: §ion_name, - data: data.as_slice(), + name: std::borrow::Cow::Borrowed(§ion_name), + data: std::borrow::Cow::Borrowed(data.as_slice()), }); // Append the linking section, so that lld knows the custom section's symbol name diff --git a/crates/test-helpers/src/lib.rs b/crates/test-helpers/src/lib.rs index 361bd7432..1ce29d867 100644 --- a/crates/test-helpers/src/lib.rs +++ b/crates/test-helpers/src/lib.rs @@ -93,8 +93,8 @@ pub fn run_component_codegen_test( let encoded = wit_component::metadata::encode(&resolve, world, StringEncoding::UTF8, None).unwrap(); let section = wasm_encoder::CustomSection { - name: "component-type", - data: &encoded, + name: std::borrow::Cow::Borrowed("component-type"), + data: std::borrow::Cow::Borrowed(&encoded), }; wasm.push(section.id()); section.encode(&mut wasm); diff --git a/tests/runtime/main.rs b/tests/runtime/main.rs index 3d06971f6..60df4949e 100644 --- a/tests/runtime/main.rs +++ b/tests/runtime/main.rs @@ -1,4 +1,5 @@ use anyhow::Result; +use std::borrow::Cow; use std::fs; use std::io::Write; use std::path::PathBuf; @@ -266,8 +267,8 @@ fn tests(name: &str) -> Result> { let encoded = wit_component::metadata::encode(&resolve, world, StringEncoding::UTF8, None)?; let section = wasm_encoder::CustomSection { - name: "component-type", - data: &encoded, + name: Cow::Borrowed("component-type"), + data: Cow::Borrowed(&encoded), }; module.push(section.id()); section.encode(&mut module);