From 19886a7072a6f480b123cb276fcb30be56ae8d5b Mon Sep 17 00:00:00 2001 From: flemming-it Date: Sun, 12 Jul 2026 13:52:41 +0200 Subject: [PATCH] chore: pin chain-module-sdk v0.3.0 and switch to #[chain_module] The pre-rename #[fai_module] attribute is gone in SDK 0.3.0; the dependency is tag-pinned so an SDK push can no longer change what this module builds against. Rebuilt artifact where tracked. Signed-off-by: flemming-it --- Cargo.lock | 8 ++++---- Cargo.toml | 2 +- README.md | 2 +- module.wasm | Bin 302485 -> 303199 bytes src/lib.rs | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 83a490d..e8bfa39 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -40,8 +40,8 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "chain-module-sdk" -version = "0.1.2" -source = "git+https://git.flemming.ai/fai/chain-module-sdk-rust.git?branch=main#98e98e9371f7409560a1ef08bc0923d9a2506449" +version = "0.3.0" +source = "git+https://git.flemming.ai/fai/chain-module-sdk-rust.git?tag=v0.3.0#a4415ada7e76aac5e3aabf3e4c4311ffc348d8d0" dependencies = [ "chain-module-sdk-macros", "serde", @@ -52,8 +52,8 @@ dependencies = [ [[package]] name = "chain-module-sdk-macros" -version = "0.1.2" -source = "git+https://git.flemming.ai/fai/chain-module-sdk-rust.git?branch=main#98e98e9371f7409560a1ef08bc0923d9a2506449" +version = "0.3.0" +source = "git+https://git.flemming.ai/fai/chain-module-sdk-rust.git?tag=v0.3.0#a4415ada7e76aac5e3aabf3e4c4311ffc348d8d0" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 978b01f..fa0c0da 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ description = "F∆I module providing text.summarize" crate-type = ["cdylib", "rlib"] [dependencies] -chain-module-sdk = { git = "https://git.flemming.ai/fai/chain-module-sdk-rust.git", branch = "main" } +chain-module-sdk = { git = "https://git.flemming.ai/fai/chain-module-sdk-rust.git", tag = "v0.3.0" } serde = { version = "1", features = ["derive"] } serde_json = "1" thiserror = "2" diff --git a/README.md b/README.md index 018dc16..4c27734 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ fai test . # load the wasm component in the runtime sandbox The module body is one decorated function: ```rust -#[fai_module] +#[chain_module] pub fn invoke(_ctx: Context, inputs: Inputs) -> Result { let message = inputs.require_text("message")?; Ok(Outputs::new().with_text("reply", format!("got: {message}"))) diff --git a/module.wasm b/module.wasm index 172f6e919983741583b5b71edfbdab75b8bda3c7..ef8732426b6cd24a319b903301746f08489295a4 100644 GIT binary patch delta 57065 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%0Dt{Zt8NI^E>_tJT{rB1T^AeO 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 diff --git a/src/lib.rs b/src/lib.rs index 0c248c9..32bc5c8 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -16,7 +16,7 @@ Produce a faithful, neutral summary of the user's text in the user's language. \ Preserve named entities, numbers, and dates verbatim. Do not editorialise. \ Emit only the summary — no preamble, no metadata."; -#[fai_module] +#[chain_module] pub fn invoke(_ctx: Context, inputs: Inputs) -> Result { let text = inputs.require_text("text")?.to_string(); let endpoint = inputs.require_text("endpoint")?.to_string();