From 7cad3f72ce003b139bf0a0618c1063ef27716655 Mon Sep 17 00:00:00 2001 From: n1ckyb Date: Sun, 9 Aug 2026 19:15:11 +0100 Subject: [PATCH 1/2] fix: import the SDK by its post-rebrand crate name This crate declares intentumdiff-plugin-sdk in Cargo.toml but imported intentdiff_plugin_sdk in code, so it has not compiled since the rebrand - failing on lib code, not just tests. The WIT module path (intentdiff::plugin::parser) and the WIT package id (intentdiff:plugin@1.0.0) are a wire CONTRACT and are deliberately unchanged. Co-Authored-By: Claude Opus 5 --- src/lib.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 9214a87..9db1c17 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -3,7 +3,7 @@ //! Handles `.lua` files. //! The plugin parses source with Tree-sitter inside Rust/Wasm. -use intentdiff_plugin_sdk::{ +use intentumdiff_plugin_sdk::{ cst::CstNode, hash::structural_hash_with_memo, tree::{SemanticNode, SemanticNodeBuilder}, @@ -22,7 +22,7 @@ use crate::exports::intentdiff::plugin::parser::ParserMode; const PLUGIN_METADATA: &str = include_str!("../plugin_metadata.info"); fn language_info_for(ids: Vec) -> Vec { - let metadata = intentdiff_plugin_sdk::metadata::parse_plugin_metadata(PLUGIN_METADATA); + let metadata = intentumdiff_plugin_sdk::metadata::parse_plugin_metadata(PLUGIN_METADATA); ids.into_iter() .map(|language_id| { let info = metadata.language_or_default(&language_id); @@ -94,7 +94,7 @@ fn label_for(node: &CstNode) -> String { return node.text_or_empty().to_string(); } // Literal containers label with their captured source text (SDK-shared, issue #47). - if let Some(label) = intentdiff_plugin_sdk::ts_convert::literal_label(node) { + if let Some(label) = intentumdiff_plugin_sdk::ts_convert::literal_label(node) { return label; } match node.node_type.as_str() { @@ -189,7 +189,7 @@ fn convert( -use intentdiff_plugin_sdk::ts_convert::{convert_semantic_classed, node_to_cst}; +use intentumdiff_plugin_sdk::ts_convert::{convert_semantic_classed, node_to_cst}; fn parse_source(source: &str) -> Result { let mut parser = tree_sitter::Parser::new(); @@ -268,7 +268,7 @@ export!(LuaParser); mod tests { use super::*; use crate::exports::intentdiff::plugin::parser::Guest; - use intentdiff_plugin_sdk::testing as t; + use intentumdiff_plugin_sdk::testing as t; #[test] fn grammar_id_nonempty() { From eb979ef5c0172f7327088fa04fa4cedfaf8d0aae Mon Sep 17 00:00:00 2001 From: n1ckyb Date: Sun, 9 Aug 2026 19:22:50 +0100 Subject: [PATCH 2/2] fix(deps): pin the SDK tag that carries the renamed crate This crate declares intentumdiff-plugin-sdk but pinned tag v0.1.0, where the SDK still declares name = intentdiff-plugin-sdk. Cargo resolves a git dependency by package name, so it failed with 'no matching package named intentumdiff-plugin-sdk' regardless of the imports. v0.0.2-beta.1 is the first SDK tag carrying the renamed crate. Paired with the import fix on this branch so the crate actually builds. Co-Authored-By: Claude Opus 5 --- Cargo.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 3218786..f9296d7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,14 +10,14 @@ publish = false crate-type = ["cdylib"] [dependencies] -intentumdiff-plugin-sdk = { git = "https://github.com/buchochelliq-labs/intentumdiff-plugin-sdk", tag = "v0.1.0", features = ["ts-convert"] } +intentumdiff-plugin-sdk = { git = "https://github.com/buchochelliq-labs/intentumdiff-plugin-sdk", tag = "v0.0.2-beta.1", features = ["ts-convert"] } serde_json = "1" tree-sitter = "0.25" tree-sitter-lua = "0.5.0" wit-bindgen = { version = "0.57", default-features = false, features = ["std", "macros"] } [dev-dependencies] -intentumdiff-plugin-sdk = { git = "https://github.com/buchochelliq-labs/intentumdiff-plugin-sdk", tag = "v0.1.0", features = ["testing"] } +intentumdiff-plugin-sdk = { git = "https://github.com/buchochelliq-labs/intentumdiff-plugin-sdk", tag = "v0.0.2-beta.1", features = ["testing"] } # Plugins target WASI p2 (Component Model); mirrors the monorepo's certified build profile. [profile.release]