From 2c8cfdf9bd4bb99eacc49a7ae3e17a4c59fb6415 Mon Sep 17 00:00:00 2001 From: Sebastian Jeltsch Date: Fri, 23 Jan 2026 12:16:33 +0100 Subject: [PATCH] Add Wasmtime's `component-model-async` back. --- Cargo.toml | 4 +- .../wasm/wasm_guest_testfixture.wasm | Bin 902228 -> 859709 bytes crates/wasm-runtime-guest/Cargo.toml | 1 + crates/wasm-runtime-guest/src/db.rs | 99 +++--------------- .../wit/trailbase/component/world.wit | 4 +- .../wit/trailbase/database/world.wit | 12 +-- crates/wasm-runtime-host/Cargo.toml | 1 + crates/wasm-runtime-host/src/host.rs | 49 ++++++++- crates/wasm-runtime-host/src/lib.rs | 4 +- 9 files changed, 78 insertions(+), 96 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index e0b5bbdf..9681ddfa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -108,7 +108,7 @@ trailbase-wasm-common = { path = "crates/wasm-runtime-common", version = "0.2.0" trailbase-wasm-runtime-host = { path = "crates/wasm-runtime-host", version = "0.1.0" } ts-rs = { version = "11", features = ["uuid-impl", "serde-json-impl", "indexmap-impl"] } uuid = { version = "1", default-features = false, features = ["std", "v4", "v7", "serde"] } -wasmtime = { version = "41.0.0", features = ["winch"] } +wasmtime = { version = "41.0.0", features = ["winch", "component-model-async"] } wasmtime-wasi = { version = "41.0.0", default-features = false, features = [] } -wasmtime-wasi-http = { version = "41.0.0", features = [] } +wasmtime-wasi-http = { version = "41.0.0", features = ["component-model-async"] } wasmtime-wasi-io = { version = "41.0.0", features = [] } diff --git a/client/testfixture/wasm/wasm_guest_testfixture.wasm b/client/testfixture/wasm/wasm_guest_testfixture.wasm index 819eb8c97bb2762f9194dbfde79d6c51f27380bf..80d9d6c3c9688dbc9e2ed131de007b7a5c6d0e8d 100644 GIT binary patch delta 158943 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 z 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%0AoT1H~s_{)f#S1>iaWgN%AdS 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 diff --git a/crates/wasm-runtime-guest/Cargo.toml b/crates/wasm-runtime-guest/Cargo.toml index aa6712bd..40ee8fcb 100644 --- a/crates/wasm-runtime-guest/Cargo.toml +++ b/crates/wasm-runtime-guest/Cargo.toml @@ -3,6 +3,7 @@ name = "trailbase-wasm" version = "0.5.0" edition = "2024" license = "OSL-3.0" +rust-version = "1.93" description = "WASM runtime for the TrailBase framework" homepage = "https://trailbase.io" repository = "https://github.com/trailbaseio/trailbase" diff --git a/crates/wasm-runtime-guest/src/db.rs b/crates/wasm-runtime-guest/src/db.rs index 2ca881a3..30ad84ef 100644 --- a/crates/wasm-runtime-guest/src/db.rs +++ b/crates/wasm-runtime-guest/src/db.rs @@ -1,9 +1,8 @@ use trailbase_sqlvalue::{Blob, DecodeError, SqlValue}; -use wstd::http::body::IntoBody; -use wstd::http::{Client, Request}; use crate::wit::trailbase::database::sqlite::{ - tx_begin, tx_commit, tx_execute, tx_query, tx_rollback, + execute as call_execute, query as call_query, tx_begin, tx_commit, tx_execute, tx_query, + tx_rollback, }; pub use crate::wit::trailbase::database::sqlite::{TxError, Value}; @@ -62,84 +61,18 @@ pub async fn query( query: impl std::string::ToString, params: impl Into>, ) -> Result>, Error> { - let r = SqliteRequest { - query: query.to_string(), - params: params.into().into_iter().map(to_sql_value).collect(), - }; - let request = Request::builder() - .uri("http://__sqlite/query") - .method("POST") - .body( - serde_json::to_vec(&r) - .map_err(|_| Error::UnexpectedType)? - .into_body(), - ) - .map_err(|err| Error::Other(err.to_string()))?; - - let client = Client::new(); - let (_parts, mut body) = client - .send(request) + return call_query(query.to_string(), params.into()) .await - .map_err(|err| Error::Other(err.to_string()))? - .into_parts(); - - let bytes = body - .bytes() - .await - .map_err(|err| Error::Other(err.to_string()))?; - - return match serde_json::from_slice(&bytes) { - Ok(SqliteResponse::Query { rows }) => Ok( - rows - .into_iter() - .map(|row| { - row - .into_iter() - .map(from_sql_value) - .collect::, _>>() - }) - .collect::, _>>()?, - ), - Ok(_) => Err(Error::UnexpectedType), - Err(err) => Err(Error::Other(err.to_string())), - }; + .map_err(|err| Error::Other(err.to_string())); } pub async fn execute( query: impl std::string::ToString, params: impl Into>, -) -> Result { - let r = SqliteRequest { - query: query.to_string(), - params: params.into().into_iter().map(to_sql_value).collect(), - }; - let request = Request::builder() - .uri("http://__sqlite/execute") - .method("POST") - .body( - serde_json::to_vec(&r) - .map_err(|_| Error::UnexpectedType)? - .into_body(), - ) - .map_err(|err| Error::Other(err.to_string()))?; - - let client = Client::new(); - let (_parts, mut body) = client - .send(request) +) -> Result { + return call_execute(query.to_string(), params.into()) .await - .map_err(|err| Error::Other(err.to_string()))? - .into_parts(); - - let bytes = body - .bytes() - .await - .map_err(|err| Error::Other(err.to_string()))?; - - return match serde_json::from_slice(&bytes) { - Ok(SqliteResponse::Execute { rows_affected }) => Ok(rows_affected), - Ok(_) => Err(Error::UnexpectedType), - Err(err) => Err(Error::Other(err.to_string())), - }; + .map_err(|err| Error::Other(err.to_string())); } // fn from_json_value(value: serde_json::Value) -> Result { @@ -165,15 +98,15 @@ pub async fn execute( // }; // } -fn from_sql_value(value: SqlValue) -> Result { - return match value { - SqlValue::Null => Ok(Value::Null), - SqlValue::Integer(v) => Ok(Value::Integer(v)), - SqlValue::Real(v) => Ok(Value::Real(v)), - SqlValue::Text(v) => Ok(Value::Text(v)), - SqlValue::Blob(v) => Ok(Value::Blob(v.into_bytes()?)), - }; -} +// fn from_sql_value(value: SqlValue) -> Result { +// return match value { +// SqlValue::Null => Ok(Value::Null), +// SqlValue::Integer(v) => Ok(Value::Integer(v)), +// SqlValue::Real(v) => Ok(Value::Real(v)), +// SqlValue::Text(v) => Ok(Value::Text(v)), +// SqlValue::Blob(v) => Ok(Value::Blob(v.into_bytes()?)), +// }; +// } // #[derive(Serialize)] // struct Blob { diff --git a/crates/wasm-runtime-guest/wit/trailbase/component/world.wit b/crates/wasm-runtime-guest/wit/trailbase/component/world.wit index b13aa1a7..a71d00b4 100644 --- a/crates/wasm-runtime-guest/wit/trailbase/component/world.wit +++ b/crates/wasm-runtime-guest/wit/trailbase/component/world.wit @@ -25,7 +25,7 @@ world interfaces { // TrailBase's interfaces: @since(version = 0.1.0) - include trailbase:database/interfaces@0.1.0; + include trailbase:database/interfaces@0.1.1; @since(version = 0.1.0) export init-endpoint; @@ -38,7 +38,7 @@ world interfaces { world init { // TrailBase's interfaces: @since(version = 0.1.0) - include trailbase:database/interfaces@0.1.0; + include trailbase:database/interfaces@0.1.1; @since(version = 0.1.0) export init-endpoint; diff --git a/crates/wasm-runtime-guest/wit/trailbase/database/world.wit b/crates/wasm-runtime-guest/wit/trailbase/database/world.wit index 928f5506..c573fdfd 100644 --- a/crates/wasm-runtime-guest/wit/trailbase/database/world.wit +++ b/crates/wasm-runtime-guest/wit/trailbase/database/world.wit @@ -1,4 +1,4 @@ -package trailbase:database@0.1.0; +package trailbase:database@0.1.1; interface sqlite { // WARNING: Evolving a variant currently breaks the ABI: @@ -15,12 +15,10 @@ interface sqlite { real(f64), } - // NOTE: Ideally, we'd use these but they can currently block guests, w/o a - // better non-blocking event loop. - // @since(version = 0.1.0) - // execute: func(query: string, params: list) -> result; - // @since(version = 0.1.0) - // query: func(query: string, params: list) -> result>, tx-error>; + @since(version = 0.1.1) + execute: async func(query: string, params: list) -> result; + @since(version = 0.1.1) + query: async func(query: string, params: list) -> result>, tx-error>; // However, transactions have to be sync. @since(version = 0.1.0) diff --git a/crates/wasm-runtime-host/Cargo.toml b/crates/wasm-runtime-host/Cargo.toml index b75e2ba3..50f51d01 100644 --- a/crates/wasm-runtime-host/Cargo.toml +++ b/crates/wasm-runtime-host/Cargo.toml @@ -3,6 +3,7 @@ name = "trailbase-wasm-runtime-host" version = "0.1.0" edition = "2024" license = "OSL-3.0" +rust-version = "1.93" description = "WASM runtime for the TrailBase framework" homepage = "https://trailbase.io" exclude = [ diff --git a/crates/wasm-runtime-host/src/host.rs b/crates/wasm-runtime-host/src/host.rs index 121a8268..f621cb44 100644 --- a/crates/wasm-runtime-host/src/host.rs +++ b/crates/wasm-runtime-host/src/host.rs @@ -5,7 +5,7 @@ use std::sync::Arc; use trailbase_sqlite::{Params, Rows}; use trailbase_wasi_keyvalue::WasiKeyValueCtx; use wasmtime::Result; -use wasmtime::component::{HasData, ResourceTable}; +use wasmtime::component::{Accessor, HasData, ResourceTable}; use wasmtime_wasi::{WasiCtx, WasiCtxView, WasiView}; use wasmtime_wasi_http::{WasiHttpCtx, WasiHttpView}; use wasmtime_wasi_io::IoView; @@ -40,6 +40,7 @@ wasmtime::component::bindgen!({ // to return traps from generated functions. imports: { "trailbase:database/sqlite.tx-begin": async, + "trailbase:database/sqlite.execute": async, }, exports: { default: async | store | task_exit, @@ -145,6 +146,52 @@ impl HasData for State { type Data<'a> = &'a mut State; } +impl self::trailbase::database::sqlite::HostWithStore for State { + async fn execute( + accessor: &Accessor, + query: String, + params: Vec, + ) -> Result { + let Some(conn) = accessor.with(|mut a| a.get().shared.conn.clone()) else { + return Err(TxError::Other("missing conn".to_string())); + }; + + let params: Vec<_> = params.into_iter().map(to_sqlite_value).collect(); + + return conn + .execute(query, params) + .await + .map_err(|err| TxError::Other(err.to_string())) + .map(|v| v as u64); + } + + async fn query( + accessor: &Accessor, + query: String, + params: Vec, + ) -> Result>, TxError> { + let Some(conn) = accessor.with(|mut a| a.get().shared.conn.clone()) else { + return Err(TxError::Other("missing conn".to_string())); + }; + + let params: Vec<_> = params.into_iter().map(to_sqlite_value).collect(); + + let rows = conn + .write_query_rows(query, params) + .await + .map_err(|err| TxError::Other(err.to_string()))?; + + let values: Vec<_> = rows + .into_iter() + .map(|trailbase_sqlite::Row(row, _col)| { + return row.into_iter().map(from_sqlite_value).collect::>(); + }) + .collect(); + + return Ok(values); + } +} + impl self::trailbase::database::sqlite::Host for State { fn tx_begin(&mut self) -> impl Future> + Send { async fn begin( diff --git a/crates/wasm-runtime-host/src/lib.rs b/crates/wasm-runtime-host/src/lib.rs index 316fadcc..839db86f 100644 --- a/crates/wasm-runtime-host/src/lib.rs +++ b/crates/wasm-runtime-host/src/lib.rs @@ -426,12 +426,14 @@ fn build_config(cache: Option, use_winch: bool) -> Config { // calling synchronous bindings will panic. config.async_support(true); config.wasm_component_model(true); + config.wasm_component_model_async(true); // config.wasm_backtrace_details(wasmtime::WasmBacktraceDetails::Enable); // Compilation settings. config.cache(cache); - if use_winch { + // FIXME: ASYNC component model doesn't currently support winch; + if false && use_winch { config.strategy(wasmtime::Strategy::Winch); } else { config.strategy(wasmtime::Strategy::Cranelift);