From c824244502abb566fe8966655ab5497afd41b4ad Mon Sep 17 00:00:00 2001 From: n1ckyb Date: Sun, 9 Aug 2026 19:15:49 +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 3ae23e7..e2c690d 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -3,7 +3,7 @@ //! Handles `.css` files. //! Parses source with tree-sitter-css directly. -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); @@ -85,7 +85,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() { @@ -234,7 +234,7 @@ fn convert( -use intentdiff_plugin_sdk::ts_convert::{convert_semantic_strict, node_to_cst}; +use intentumdiff_plugin_sdk::ts_convert::{convert_semantic_strict, node_to_cst}; fn parse_source(source: &str) -> Result { let mut parser = tree_sitter::Parser::new(); @@ -313,7 +313,7 @@ export!(CssParser); 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 3cf773c03aa084adcf7e4d4c08e8572151a7ee96 Mon Sep 17 00:00:00 2001 From: n1ckyb Date: Sun, 9 Aug 2026 19:22:54 +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 6ffa4f1..c6a8d34 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-css = "0.25.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]