Skip to content

Commit 53e07c7

Browse files
authored
Update to Wasmtime 19 (bytecodealliance#901)
* Update to Wasmtime 19 * Remove drop that shouldn't be there
1 parent 6fbcb94 commit 53e07c7

9 files changed

+346
-412
lines changed

Cargo.lock

Lines changed: 328 additions & 386 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ bitflags = "2.3.3"
2626
heck = { version = "0.4", features = ["unicode"] }
2727
pulldown-cmark = { version = "0.9", default-features = false }
2828
clap = { version = "4.3.19", features = ["derive"] }
29-
env_logger = "0.10.0"
3029
indexmap = "2.0.0"
3130

3231
wasmparser = "0.201.0"
@@ -80,8 +79,8 @@ csharp-mono = ['csharp']
8079

8180
[dev-dependencies]
8281
heck = { workspace = true }
83-
wasmtime = { version = "17.0.0", features = ['component-model'] }
84-
wasmtime-wasi = { version = "17.0.0" }
82+
wasmtime = { version = "19.0.0", features = ['component-model'] }
83+
wasmtime-wasi = { version = "19.0.0" }
8584
test-artifacts = { path = 'crates/test-rust-wasm/artifacts' }
8685
wit-parser = { workspace = true }
8786
wasmparser = { workspace = true }

tests/runtime/main.rs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use std::{env, fs};
99
use wasm_encoder::{Encode, Section};
1010
use wasmtime::component::{Component, Instance, Linker, ResourceTable};
1111
use wasmtime::{Config, Engine, Store, Table};
12-
use wasmtime_wasi::preview2::{WasiCtx, WasiCtxBuilder, WasiView};
12+
use wasmtime_wasi::{WasiCtx, WasiCtxBuilder, WasiView};
1313
use wit_component::{ComponentEncoder, StringEncoding};
1414
use wit_parser::{Resolve, WorldId, WorldItem};
1515

@@ -46,16 +46,10 @@ struct Wasi<T: Send>(T, MyCtx, ResourceTable, WasiCtx);
4646

4747
// wasi trait
4848
impl<T: Send> WasiView for Wasi<T> {
49-
fn table(&self) -> &ResourceTable {
50-
&self.2
51-
}
52-
fn table_mut(&mut self) -> &mut ResourceTable {
49+
fn table(&mut self) -> &mut ResourceTable {
5350
&mut self.2
5451
}
55-
fn ctx(&self) -> &WasiCtx {
56-
&self.3
57-
}
58-
fn ctx_mut(&mut self) -> &mut WasiCtx {
52+
fn ctx(&mut self) -> &mut WasiCtx {
5953
&mut self.3
6054
}
6155
}
@@ -106,7 +100,7 @@ where
106100

107101
let mut store = Store::new(&engine, data);
108102

109-
wasmtime_wasi::preview2::command::sync::add_to_linker(&mut linker)?;
103+
wasmtime_wasi::command::sync::add_to_linker(&mut linker)?;
110104

111105
let (exports, _) = instantiate(&mut store, &component, &linker)?;
112106

tests/runtime/resource_borrow_export.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use wasmtime::Store;
22

33
wasmtime::component::bindgen!(in "tests/runtime/resource_borrow_export");
44

5-
use exports::test::resource_borrow_export::test::Test;
5+
use exports::test::resource_borrow_export::test::Guest;
66

77
#[test]
88
fn run() -> anyhow::Result<()> {
@@ -17,7 +17,7 @@ fn run() -> anyhow::Result<()> {
1717
)
1818
}
1919

20-
fn run_test(instance: Test, store: &mut Store<crate::Wasi<()>>) -> anyhow::Result<()> {
20+
fn run_test(instance: Guest, store: &mut Store<crate::Wasi<()>>) -> anyhow::Result<()> {
2121
let thing = instance.thing().call_constructor(&mut *store, 42)?;
2222
let res = instance.call_foo(&mut *store, thing)?;
2323
assert_eq!(res, 42 + 1 + 2);

tests/runtime/resource_borrow_in_record.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use self::{
55
exports::test::resource_borrow_in_record::test::Foo as ImportFoo,
66
test::resource_borrow_in_record::test::{Foo as HostFoo, Host as TestHost, HostThing, Thing},
77
};
8-
use crate::resource_borrow_in_record::exports::test::resource_borrow_in_record::test::Test;
8+
use crate::resource_borrow_in_record::exports::test::resource_borrow_in_record::test::Guest;
99

1010
wasmtime::component::bindgen!(in "tests/runtime/resource_borrow_in_record");
1111

@@ -70,7 +70,7 @@ fn run() -> anyhow::Result<()> {
7070
)
7171
}
7272

73-
fn run_test(instance: Test, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
73+
fn run_test(instance: Guest, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
7474
let thing1 = instance.thing().call_constructor(&mut *store, "Bonjour")?;
7575
let thing2 = instance.thing().call_constructor(&mut *store, "mon cher")?;
7676
let foo1 = ImportFoo { thing: thing1 };

tests/runtime/resource_import_and_export.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::collections::HashMap;
22
use wasmtime::{component::Resource, Result, Store};
33

44
use self::test::resource_import_and_export::test::{Host, HostThing};
5-
use crate::resource_import_and_export::exports::test::resource_import_and_export::test::Test;
5+
use crate::resource_import_and_export::exports::test::resource_import_and_export::test::Guest;
66

77
wasmtime::component::bindgen!(in "tests/runtime/resource_import_and_export");
88

@@ -65,7 +65,7 @@ fn run() -> anyhow::Result<()> {
6565
)
6666
}
6767

68-
fn run_test(instance: Test, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
68+
fn run_test(instance: Guest, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
6969
let thing1 = instance.thing().call_constructor(&mut *store, 42)?;
7070

7171
// 42 + 1 (constructor) + 1 (constructor) + 2 (foo) + 2 (foo)

tests/runtime/resource_into_inner.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use wasmtime::Store;
22

33
wasmtime::component::bindgen!(in "tests/runtime/resource_into_inner");
44

5-
use exports::test::resource_into_inner::test::Test;
5+
use exports::test::resource_into_inner::test::Guest;
66

77
#[test]
88
fn run() -> anyhow::Result<()> {
@@ -17,6 +17,6 @@ fn run() -> anyhow::Result<()> {
1717
)
1818
}
1919

20-
fn run_test(instance: Test, store: &mut Store<crate::Wasi<()>>) -> anyhow::Result<()> {
20+
fn run_test(instance: Guest, store: &mut Store<crate::Wasi<()>>) -> anyhow::Result<()> {
2121
instance.call_test(&mut *store)
2222
}

tests/runtime/resource_with_lists.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::collections::HashMap;
22
use wasmtime::{component::Resource, Store};
33

44
use self::test::resource_with_lists::test::{Host, HostThing, Thing};
5-
use crate::resource_with_lists::exports::test::resource_with_lists::test::Test;
5+
use crate::resource_with_lists::exports::test::resource_with_lists::test::Guest;
66

77
wasmtime::component::bindgen!(in "tests/runtime/resource_with_lists");
88

@@ -65,7 +65,7 @@ fn run() -> anyhow::Result<()> {
6565
)
6666
}
6767

68-
fn run_test(exports: Test, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
68+
fn run_test(exports: Guest, store: &mut Store<crate::Wasi<MyHostThing>>) -> anyhow::Result<()> {
6969
let thing = exports.thing();
7070

7171
let hi_encoded = "Hi".as_bytes().to_vec();

tests/runtime/resources.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use imports::Y;
99
use wasmtime::component::Resource;
1010
use wasmtime::Store;
1111

12-
use self::exports::exports::Exports;
12+
use self::exports::exports::Guest;
1313
use self::imports::Host;
1414

1515
#[derive(Default)]
@@ -71,7 +71,7 @@ fn run() -> Result<()> {
7171
)
7272
}
7373

74-
fn run_test(exports: Exports, store: &mut Store<crate::Wasi<MyImports>>) -> Result<()> {
74+
fn run_test(exports: Guest, store: &mut Store<crate::Wasi<MyImports>>) -> Result<()> {
7575
let _ = exports.call_test_imports(&mut *store)?;
7676

7777
let x = exports.x();
@@ -94,7 +94,6 @@ fn run_test(exports: Exports, store: &mut Store<crate::Wasi<MyImports>>) -> Resu
9494

9595
let dropped_zs_start = z.call_num_dropped(&mut *store)?;
9696

97-
ResourceAny::resource_drop(x_instance, &mut *store)?;
9897
ResourceAny::resource_drop(z_instance_1, &mut *store)?;
9998
ResourceAny::resource_drop(z_instance_2, &mut *store)?;
10099

0 commit comments

Comments
 (0)