diff --git a/Cargo.lock b/Cargo.lock index c857d5862..0a3ceb08f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -631,27 +631,27 @@ dependencies = [ [[package]] name = "cranelift-assembler-x64" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bc293b86236abcc45f2f72e2d18e2bd636f2a08b75eb286bae31e71e1430c91" +checksum = "715783c05f20985a5dfe6bfdccbfcb146cb44bfd8f6ff1d09526c3bf442fdac5" dependencies = [ "cranelift-assembler-x64-meta", ] [[package]] name = "cranelift-assembler-x64-meta" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b954c826eddaf1b001402cb8aecf1764c6f6d637ba69fb9e3311f1ebac965be6" +checksum = "4c3da5a783f2b72af39ab98c1bf3157e081511e1febeafe550d71a4d0ba75f66" dependencies = [ "cranelift-srcgen", ] [[package]] name = "cranelift-bforest" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4053fa2575ef4a5c35d2708533df2200400ae979226cea9cc92a578b811bd4e7" +checksum = "8e2e9b7adf77fa02204d4d523ae4f171b6591c2632b030865336335c7d7b420e" dependencies = [ "cranelift-entity", "wasmtime-internal-core", @@ -659,9 +659,9 @@ dependencies = [ [[package]] name = "cranelift-bitset" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d216663191014aa63e1d2cffd058e609eaf207646d40b739d88250f65b2c4f69" +checksum = "90f09d9f397eae612ac15becf0e0b2165d2232003f4f2a1549572a724d1c48c5" dependencies = [ "serde", "serde_derive", @@ -670,9 +670,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a5e7e7aad6a425a51da1ad7ab9e5d280ea97eb7c7c4545fafb567915a75aadb" +checksum = "5e004cf1270abc82f7b9fb32d1a9d73a1cc0d5a0215b97db8c32658748e78b01" dependencies = [ "bumpalo", "cranelift-assembler-x64", @@ -687,10 +687,13 @@ dependencies = [ "hashbrown 0.17.1", "libm", "log", + "postcard", "pulley-interpreter", "regalloc2", "rustc-hash", "serde", + "serde_derive", + "sha2 0.10.9", "smallvec", "target-lexicon", "wasmtime-internal-core", @@ -698,9 +701,9 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c421d80a9a85f806cb02a2983b5b5368a335c319795b1f1b4b771a24479af5b0" +checksum = "04f32034641f96b123e4fdb5666e726d9f252e222638fc8fdd905b4ff18c3c4e" dependencies = [ "cranelift-assembler-x64-meta", "cranelift-codegen-shared", @@ -711,24 +714,24 @@ dependencies = [ [[package]] name = "cranelift-codegen-shared" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78fdb83ab012d0ee6a44ced7ca8788a444f17cf821c62f95d6ef87c9f0262518" +checksum = "746566ae868b0e87a89206b3856350886a4fc2e078ce6485bec2ea6727c31685" [[package]] name = "cranelift-control" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b75adc6eb7bb4ac6365106afb6cac4f12fe1ddfa02ddc9fd7015ca1469b471b" +checksum = "def01ab5cd08a1be551d4bc96adc6af91f89138c4f81d0a60fdf3b9f82272703" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "668e56db75a54816cbdd7c7b7bfc558b08bf7b2cda9d0846491517e92f3b393b" +checksum = "341d5e1e071320505ebbc8194a8eb61fa94394b1ed93ba3cbec3be5fa1c3c1ce" dependencies = [ "cranelift-bitset", "serde", @@ -738,11 +741,12 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c63892dc1cc3ae48680183fa66997f60ffe7f1e200c8d390f8ee66edff4aef5a" +checksum = "97c6f3e2419ecb54a5503994d35421554c5e487d0493bc86ea96907bab51fd29" dependencies = [ "cranelift-codegen", + "hashbrown 0.17.1", "log", "smallvec", "target-lexicon", @@ -750,15 +754,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94eaf429c32a12715429c7c6ddfdd43c170f4cdd7e97bfa507bd68a652091087" +checksum = "21aa47a5e0b1e9fb2c9348459088d5dbb872ebe17781ada1270d8364c7e73257" [[package]] name = "cranelift-native" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd77674904ae9be11c1e1efdba54788b59f3d6658d747b97534bfbba2909aacc" +checksum = "c3054a03ac285b170662ec9530602b01cd394a7428cd753b48d9cae51f05249a" dependencies = [ "cranelift-codegen", "libc", @@ -767,9 +771,9 @@ dependencies = [ [[package]] name = "cranelift-srcgen" -version = "0.132.2" +version = "0.133.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cba7c0ff5941842c36653da155580ce41e675c204a67ac1b4e1c478a9347bbb7" +checksum = "fd2498406acfcfd39c69078af187154ac8dcd31d3082888b258deb2a4fd0ecf4" [[package]] name = "crc32fast" @@ -2011,12 +2015,9 @@ checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" [[package]] name = "mach2" -version = "0.4.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" -dependencies = [ - "libc", -] +checksum = "dae608c151f68243f2b000364e1f7b186d9c29845f7d2d85bd31b9ad77ad552b" [[package]] name = "matchers" @@ -2374,9 +2375,9 @@ dependencies = [ [[package]] name = "pulley-interpreter" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d9880c1985ccccaed3646b0ef793dc39a4b117403ed4afc6fa3ef6027c5200f" +checksum = "047bda68096e5f290619ce037b7c3fa352d11f08edf0fce3030c351adc0f8ec0" dependencies = [ "cranelift-bitset", "log", @@ -2386,9 +2387,9 @@ dependencies = [ [[package]] name = "pulley-macros" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee249346855ad102580e474da5463f86f8a7d449e6d49e00fefb304e448e2983" +checksum = "83258a9bcc97d3fb15bf4e1c43bc2cc85c718e3563a697f145f245e651f2828f" dependencies = [ "proc-macro2", "quote", @@ -2607,6 +2608,7 @@ dependencies = [ "hashbrown 0.17.1", "log", "rustc-hash", + "serde", "smallvec", ] @@ -3982,9 +3984,9 @@ dependencies = [ [[package]] name = "wasi-preview1-component-adapter-provider" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17218dd1de5aa7b0b5c7afec3cdd69d780632eb31f3925a8b8728cd6e29ebb73" +checksum = "14f9c3b8eaed9cd8cf43d261a420218794da54c9f1d37eec826b1798fd13884d" [[package]] name = "wasip2" @@ -4050,16 +4052,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "wasm-encoder" -version = "0.248.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac92cf547bc18d27ecc521015c08c353b4f18b84ab388bb6d1b6b682c620d9b6" -dependencies = [ - "leb128fmt", - "wasmparser 0.248.0", -] - [[package]] name = "wasm-encoder" version = "0.251.0" @@ -4127,19 +4119,6 @@ dependencies = [ "thiserror 2.0.18", ] -[[package]] -name = "wasmparser" -version = "0.248.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4439c5eee9df71ee0c6efb37f63b1fcb1fec38f85f5142c54e7ed05d33091a" -dependencies = [ - "bitflags", - "hashbrown 0.17.1", - "indexmap", - "semver", - "serde", -] - [[package]] name = "wasmparser" version = "0.251.0" @@ -4150,6 +4129,7 @@ dependencies = [ "hashbrown 0.17.1", "indexmap", "semver", + "serde", ] [[package]] @@ -4166,20 +4146,20 @@ dependencies = [ [[package]] name = "wasmprinter" -version = "0.248.0" +version = "0.251.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b264a5410b008d4d199a92bf536eae703cbd614482fc1ec53831cf19e1c183" +checksum = "8798c1a699bd25648b6708eefe94d97c6f9891febb94b42cca1f7a4b086ea64e" dependencies = [ "anyhow", "termcolor", - "wasmparser 0.248.0", + "wasmparser 0.251.0", ] [[package]] name = "wasmtime" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7ce9aa2c67f75fadcfdc6aa9097d03e7c39485dfe316f2ed6a7c0fd186c527" +checksum = "08dd5caf09eda1d523261a0dd421a54e3bb165cf6f5b02c82327e712d49e3cf4" dependencies = [ "addr2line", "async-trait", @@ -4188,6 +4168,7 @@ dependencies = [ "cc", "cfg-if", "encoding_rs", + "futures", "fxprof-processed-profile", "gimli", "ittapi", @@ -4207,8 +4188,8 @@ dependencies = [ "serde_json", "smallvec", "target-lexicon", - "wasm-encoder 0.248.0", - "wasmparser 0.248.0", + "wasm-encoder 0.251.0", + "wasmparser 0.251.0", "wasmtime-environ", "wasmtime-internal-cache", "wasmtime-internal-component-macro", @@ -4220,16 +4201,15 @@ dependencies = [ "wasmtime-internal-jit-icache-coherence", "wasmtime-internal-unwinder", "wasmtime-internal-versioned-export-macros", - "wasmtime-internal-winch", "wat", "windows-sys 0.61.2", ] [[package]] name = "wasmtime-cli-flags" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317c48ae65d959170d9255ecb4d4ca5cddb482ad6368664e67b01aadf3a01885" +checksum = "0f9a4e15c3dc54d4dcd368df7727fd29a1820bff3c9895910bce341a250b2089" dependencies = [ "clap", "rayon", @@ -4241,9 +4221,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fb157bd1fbf689ac89d570433a700db6f33bdfcb5ffc30e3f1c49e4c70de71" +checksum = "a1f3aa689689cf295568aa4d24ab636579fb3b36dfa7cea35020d87064fc88ec" dependencies = [ "anyhow", "cpp_demangle", @@ -4263,8 +4243,8 @@ dependencies = [ "sha2 0.10.9", "smallvec", "target-lexicon", - "wasm-encoder 0.248.0", - "wasmparser 0.248.0", + "wasm-encoder 0.251.0", + "wasmparser 0.251.0", "wasmprinter", "wasmtime-internal-component-util", "wasmtime-internal-core", @@ -4272,9 +4252,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-cache" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0d1a46c4a2360186b59c6ed7a74a1121ac97925ae9a18db1b2f146cc27ac0b7" +checksum = "fd6c27fbabb7df6c88a592a28773a92aa8cfba5ee656963d7ad9b32a8f57a3d8" dependencies = [ "base64", "directories-next", @@ -4292,9 +4272,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-component-macro" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b96c17f35fae2ab574667aba0c58fd56349a6f788ac42541a2e543116d5cfb91" +checksum = "de4451ab437d7b2d41e637a4379e87ff76aeeb051236064dcc75c1855714ee58" dependencies = [ "anyhow", "proc-macro2", @@ -4302,20 +4282,20 @@ dependencies = [ "syn", "wasmtime-internal-component-util", "wasmtime-internal-wit-bindgen", - "wit-parser 0.248.0", + "wit-parser 0.251.0", ] [[package]] name = "wasmtime-internal-component-util" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d2eeb9b53222859e6f5dc73d2ccfb33254d672469cac11b693a71912e2f3817" +checksum = "53b5e357002645964342b99a6fe8405cda7dd031f498927992c9d99d5012daa7" [[package]] name = "wasmtime-internal-core" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1deaf6bc3430abd7497b00c64f06ca2b97ca0fe41af87836446ca30949965c" +checksum = "4f6ce74d60a8ed870548e7efa9710c54f982bbfcf80e5ee5eee8498318616483" dependencies = [ "anyhow", "hashbrown 0.17.1", @@ -4325,9 +4305,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-cranelift" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b845f83b5b04b11bc48329b53eb4fa8cf9f28a43c71ed8e1203f68ffa9806d1b" +checksum = "e24204583d847b7ce3d770f7a3456739d5d43f65c884cb47111dbe27b26ebbe6" dependencies = [ "cfg-if", "cranelift-codegen", @@ -4343,7 +4323,7 @@ dependencies = [ "smallvec", "target-lexicon", "thiserror 2.0.18", - "wasmparser 0.248.0", + "wasmparser 0.251.0", "wasmtime-environ", "wasmtime-internal-core", "wasmtime-internal-unwinder", @@ -4352,9 +4332,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-fiber" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10c8466f72965ae85c250f90aaa7992c089a2f8502009bd0d2c9e7d6409174a" +checksum = "ecaeb13bf3eb94a02e32ea3842c8fda3ea6897c299745100c1230b65769d2d91" dependencies = [ "cc", "cfg-if", @@ -4367,9 +4347,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-debug" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3adfecf5621b14d8f8871f4cb4ed9f844197b1ddefc702ef4c859552cd9551" +checksum = "5090e9a302bb5729a84766e4af07b6b10efe733e437bc266dd954a957114df63" dependencies = [ "cc", "object", @@ -4379,9 +4359,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-icache-coherence" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d3c1e9fb618ec45c9b3477ea683cd37bee427273d7b13bba5c66a1caaf1dd6" +checksum = "0bba33d9d951a9a974a866e80c864a9a46b28086e369582e0caa78e14a9f29e4" dependencies = [ "cfg-if", "libc", @@ -4391,9 +4371,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-unwinder" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aa91132b81f1e172ec7e7c3c114ac34209ee6b3524b3a8d6943af99803f66c5" +checksum = "695063a19bac17895f95c0c0f2f9544e85a277763cd77b5778f0cce6a971073e" dependencies = [ "cfg-if", "cranelift-codegen", @@ -4404,50 +4384,33 @@ dependencies = [ [[package]] name = "wasmtime-internal-versioned-export-macros" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea811ffe23f597cc7708327ea25d9eb018dcf760ffe15ccb7d0b27ad635de61" +checksum = "cc77f7513209b76e8f4772af640819f47fca3a5425b4417ef9c20b888334063c" dependencies = [ "proc-macro2", "quote", "syn", ] -[[package]] -name = "wasmtime-internal-winch" -version = "45.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "828b66175c54a0d00b4c1c1c76658d8aa73aeb9fa3553575c5eee56d40f2eb18" -dependencies = [ - "cranelift-codegen", - "gimli", - "log", - "object", - "target-lexicon", - "wasmparser 0.248.0", - "wasmtime-environ", - "wasmtime-internal-cranelift", - "winch-codegen", -] - [[package]] name = "wasmtime-internal-wit-bindgen" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae00896ad9bef1b3ca6401ae9a841daa6f357dd91541b6baf87082946d1bde1" +checksum = "e859103d8336304b8beebbf89a620c2f53a118fd5fbce41bc572cf4bacc8111d" dependencies = [ "anyhow", "bitflags", "heck", "indexmap", - "wit-parser 0.248.0", + "wit-parser 0.251.0", ] [[package]] name = "wasmtime-wasi" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6032ceffcb74cf30a2cdac298a4d6ce219058f08479ce1ab38434aadc044000b" +checksum = "093c67243785465fdab0cb8bfada4a1171a543dfc22b392201c77d8086367b58" dependencies = [ "async-trait", "bitflags", @@ -4457,7 +4420,6 @@ dependencies = [ "cap-std", "cap-time-ext", "cfg-if", - "fs-set-times", "futures", "io-extras", "io-lifetimes", @@ -4474,9 +4436,9 @@ dependencies = [ [[package]] name = "wasmtime-wasi-http" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb570dc29e051beeb016aa62839871fde20d9b305b3809655d09461c304d71b2" +checksum = "357b734a727b95c9117d78b3ad17abea5e6208e2af545160dfc462b0c342fa94" dependencies = [ "async-trait", "bytes", @@ -4497,9 +4459,9 @@ dependencies = [ [[package]] name = "wasmtime-wasi-io" -version = "45.0.2" +version = "46.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b6e6868e5b93e1e10983a17afb631b39c236d8b6b4abe9faffe78f1ee0c6e7" +checksum = "95db6ca70bd5b7aab6b0297419ccbdb88682e12cc37764c757f58e917da650b9" dependencies = [ "async-trait", "bytes", @@ -4608,25 +4570,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "winch-codegen" -version = "45.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89c09acfdfa281b3340e1e94ef3cf6618d69eab975280f881e154c29f49419c1" -dependencies = [ - "cranelift-assembler-x64", - "cranelift-codegen", - "gimli", - "regalloc2", - "smallvec", - "target-lexicon", - "thiserror 2.0.18", - "wasmparser 0.248.0", - "wasmtime-environ", - "wasmtime-internal-core", - "wasmtime-internal-cranelift", -] - [[package]] name = "windows-core" version = "0.62.2" @@ -5112,25 +5055,6 @@ dependencies = [ "wit-parser 0.252.0", ] -[[package]] -name = "wit-parser" -version = "0.248.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "247ad505da2915a082fe13204c5ba8788425aea1de54f43b284818cf82637856" -dependencies = [ - "anyhow", - "hashbrown 0.17.1", - "id-arena", - "indexmap", - "log", - "semver", - "serde", - "serde_derive", - "serde_json", - "unicode-xid", - "wasmparser 0.248.0", -] - [[package]] name = "wit-parser" version = "0.251.0" diff --git a/Cargo.toml b/Cargo.toml index 475649a8f..e7b40b812 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,14 +170,14 @@ tracing-subscriber = { version = "0.3", default-features = false } url = { version = "2" } uuid = { version = "1", default-features = false } wasi = { version = "0.14", default-features = false } -wasi-preview1-component-adapter-provider = { version = "45", default-features = false } +wasi-preview1-component-adapter-provider = { version = "46", default-features = false } wasm-tokio = { version = "0.6", default-features = false } wasm-wave = { version = "0.252", default-features = false } wasmparser = { version = "0.252", default-features = false } -wasmtime = { version = "45", default-features = false } -wasmtime-cli-flags = { version = "45", default-features = false } -wasmtime-wasi = { version = "45", default-features = false } -wasmtime-wasi-http = { version = "45", default-features = false } +wasmtime = { version = "46", default-features = false } +wasmtime-cli-flags = { version = "46", default-features = false } +wasmtime-wasi = { version = "46", default-features = false } +wasmtime-wasi-http = { version = "46", default-features = false } wit-bindgen = { version = "0.58", default-features = false } wit-bindgen-core = { version = "0.58", default-features = false } wit-bindgen-wrpc = { version = "0.11", default-features = false, path = "./crates/wit-bindgen" } diff --git a/crates/wasmtime-cli/src/lib.rs b/crates/wasmtime-cli/src/lib.rs index f20870c2e..9ee50731e 100644 --- a/crates/wasmtime-cli/src/lib.rs +++ b/crates/wasmtime-cli/src/lib.rs @@ -302,7 +302,7 @@ where .collect::>(); let host_resources = Arc::from(host_resources); let guest_resources = Arc::from(guest_resources); - for (name, item) in ty.imports(&engine) { + for (name, types::ComponentExtern { ty: item, .. }) in ty.imports(&engine) { // Avoid polyfilling instances, for which static bindings are linked match name.split_once('/').map(|(pkg, suffix)| { suffix @@ -446,7 +446,9 @@ where wrpc_wasmtime::paths::wasi_io_stream_resources(&engine, &pre.component().component_type()) .into(); let store = Arc::new(Mutex::new(store)); - for (name, ty) in pre.component().component_type().exports(&engine) { + for (name, types::ComponentExtern { ty, .. }) in + pre.component().component_type().exports(&engine) + { match (name, ty) { (name, types::ComponentItem::ComponentFunc(ty)) => { info!(?name, "serving root function"); @@ -497,7 +499,7 @@ where warn!(name, "serving root component exports not supported yet"); } (instance_name, types::ComponentItem::ComponentInstance(ty)) => { - for (name, ty) in ty.exports(&engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(&engine) { match ty { types::ComponentItem::ComponentFunc(ty) => { info!(?name, "serving instance function"); @@ -593,7 +595,9 @@ where S: Serve, { let span = Span::current(); - for (name, ty) in pre.component().component_type().exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in + pre.component().component_type().exports(engine) + { match (name, ty) { (name, types::ComponentItem::ComponentFunc(ty)) => { let clt = clt.clone(); @@ -647,7 +651,7 @@ where warn!(name, "serving root component exports not supported yet"); } (instance_name, types::ComponentItem::ComponentInstance(ty)) => { - for (name, ty) in ty.exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(engine) { match ty { types::ComponentItem::ComponentFunc(ty) => { let clt = clt.clone(); diff --git a/crates/wasmtime/src/lib.rs b/crates/wasmtime/src/lib.rs index 1a2cd14a6..c855b6935 100644 --- a/crates/wasmtime/src/lib.rs +++ b/crates/wasmtime/src/lib.rs @@ -525,7 +525,7 @@ pub fn collect_instance_resource_exports( ty: &types::ComponentInstance, resources: &mut impl Extend, ) { - for (name, ty) in ty.exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(engine) { trace!(name, ?ty, "collect instance item resource exports"); collect_item_resource_exports(engine, ty, resources); } @@ -538,7 +538,7 @@ pub fn collect_component_resource_exports( ty: &types::Component, resources: &mut impl Extend, ) { - for (name, ty) in ty.exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(engine) { trace!(name, ?ty, "collect component item resource exports"); collect_item_resource_exports(engine, ty, resources); } @@ -551,7 +551,7 @@ pub fn collect_component_resource_imports( ty: &types::Component, resources: &mut BTreeMap, HashMap, types::ResourceType>>, ) { - for (name, ty) in ty.imports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.imports(engine) { match ty { types::ComponentItem::ComponentFunc(..) | types::ComponentItem::CoreFunc(..) @@ -560,7 +560,7 @@ pub fn collect_component_resource_imports( | types::ComponentItem::Component(..) => {} types::ComponentItem::ComponentInstance(ty) => { let instance = name; - for (name, ty) in ty.exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(engine) { if let types::ComponentItem::Resource(ty) = ty { debug!(instance, name, ?ty, "collect instance resource import"); if let Some(resources) = resources.get_mut(instance) { diff --git a/crates/wasmtime/src/polyfill.rs b/crates/wasmtime/src/polyfill.rs index b85d46132..441d165c1 100644 --- a/crates/wasmtime/src/polyfill.rs +++ b/crates/wasmtime/src/polyfill.rs @@ -54,7 +54,7 @@ where } types::ComponentItem::Module(_) => bail!("polyfilling modules not supported yet"), types::ComponentItem::Component(ty) => { - for (name, ty) in ty.imports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.imports(engine) { debug!(?instance, name, "linking component item"); link_item( engine, @@ -116,7 +116,7 @@ where let instance = name.into(); let guest_resources = guest_resources.into(); let host_resources = host_resources.into(); - for (name, ty) in ty.exports(engine) { + for (name, types::ComponentExtern { ty, .. }) in ty.exports(engine) { debug!(name, "linking instance item"); link_item( engine,