From dd370654cbe9f89730bc8adf9904ae523a89a47b Mon Sep 17 00:00:00 2001 From: l0ng-ai <24760907+l0ng-ai@users.noreply.github.com> Date: Wed, 4 Nov 2026 20:11:46 +0800 Subject: [PATCH] feat(plugins): leave room in plugin API 1.0 for what will grow (#1245) Closes #1237 --- crates/ide-host/src/ops/lsp.rs | 78 +++++++++-- crates/ide-host/src/plugins/providers.rs | 15 ++ crates/ide-host/tests/plugins.rs | 55 +++++++- crates/ide-plugin/src/runtime.rs | 131 +++++++++++++----- crates/ide-plugin/src/types.rs | 21 +++ crates/ide-plugin/src/wit_host.rs | 29 ++-- .../tests/fixtures/hello/dist/plugin.wasm | Bin 132268 -> 133850 bytes .../fixtures/hello/dist/plugin.wasm.sources | 2 +- .../tests/fixtures/jobs/dist/plugin.wasm | Bin 123922 -> 125545 bytes .../fixtures/jobs/dist/plugin.wasm.sources | 2 +- .../tests/fixtures/misbehave/dist/plugin.wasm | Bin 87772 -> 97252 bytes .../misbehave/dist/plugin.wasm.sources | 2 +- .../tests/fixtures/misbehave/plugin.toml | 8 ++ .../tests/fixtures/misbehave/src/lib.rs | 56 +++++++- plugins/README.md | 27 +++- .../official/ai-completion/dist/plugin.wasm | Bin 167301 -> 173521 bytes .../ai-completion/dist/plugin.wasm.sources | 2 +- plugins/official/checkstyle/dist/plugin.wasm | Bin 159390 -> 168316 bytes .../checkstyle/dist/plugin.wasm.sources | 2 +- plugins/official/checkstyle/src/lib.rs | 9 +- plugins/official/csv-editor/dist/plugin.wasm | Bin 131750 -> 133365 bytes .../csv-editor/dist/plugin.wasm.sources | 2 +- plugins/official/git-toolbox/dist/plugin.wasm | Bin 109018 -> 110035 bytes .../git-toolbox/dist/plugin.wasm.sources | 2 +- plugins/official/graphviz/dist/plugin.wasm | Bin 124790 -> 129095 bytes .../graphviz/dist/plugin.wasm.sources | 2 +- plugins/official/graphviz/src/lib.rs | 9 +- .../official/key-promoter/dist/plugin.wasm | Bin 99184 -> 100155 bytes .../key-promoter/dist/plugin.wasm.sources | 2 +- .../official/license-header/dist/plugin.wasm | Bin 143785 -> 152590 bytes .../license-header/dist/plugin.wasm.sources | 2 +- plugins/official/license-header/src/lib.rs | 9 +- plugins/official/mybatis/dist/plugin.wasm | Bin 160539 -> 167173 bytes .../official/mybatis/dist/plugin.wasm.sources | 2 +- .../official/regex-tester/dist/plugin.wasm | Bin 930619 -> 932254 bytes .../regex-tester/dist/plugin.wasm.sources | 2 +- plugins/official/solidity/dist/plugin.wasm | Bin 107043 -> 108000 bytes .../solidity/dist/plugin.wasm.sources | 2 +- .../official/string-tools/dist/plugin.wasm | Bin 164898 -> 165755 bytes .../string-tools/dist/plugin.wasm.sources | 2 +- sdk/rust/openidea-plugin/src/host.rs | 47 +++---- sdk/rust/openidea-plugin/src/lib.rs | 85 +++++++++--- sdk/rust/openidea-plugin/src/mock.rs | 7 +- sdk/rust/openidea-plugin/src/providers.rs | 18 +++ sdk/rust/openidea-plugin/src/types.rs | 88 +++++++++++- sdk/rust/openidea-plugin/src/views.rs | 20 +++ sdk/rust/openidea-plugin/wit/events.wit | 40 ++---- sdk/rust/openidea-plugin/wit/io.wit | 13 +- sdk/rust/openidea-plugin/wit/providers.wit | 14 +- sdk/rust/openidea-plugin/wit/types.wit | 9 ++ sdk/rust/openidea-plugin/wit/views.wit | 8 ++ wit/events.wit | 40 ++---- wit/io.wit | 13 +- wit/providers.wit | 14 +- wit/types.wit | 9 ++ wit/views.wit | 8 ++ 56 files changed, 698 insertions(+), 210 deletions(-) diff --git a/crates/ide-host/src/ops/lsp.rs b/crates/ide-host/src/ops/lsp.rs index 67f31cb4..a0105b87 100644 --- a/crates/ide-host/src/ops/lsp.rs +++ b/crates/ide-host/src/ops/lsp.rs @@ -76,9 +76,17 @@ async fn plugin_call(f: impl FnOnce() -> T + Send + 'static) tokio::task::spawn_blocking(f).await.ok() } -/// Items from plugins carry no server (resolve and commands don't apply). +/// Items from plugins carry no server: commands don't apply, and a code +/// action is resolved by the plugin named in its `data` ([`PluginActionRef`]). const PLUGIN_SERVER: ServerId = ServerId(0); +/// `data` of a plugin's code action whose edits it computes when picked. +#[derive(serde::Serialize, serde::Deserialize)] +struct PluginActionRef { + plugin: String, + data: String, +} + /// A plugin's `completion-item.kind` (wit/providers.wit lists them). fn plugin_completion_kind(kind: &str) -> Option { Some(match kind { @@ -120,14 +128,14 @@ fn plugin_completion(item: ide_plugin::CompletionItem) -> CompletionItem { kind, documentation: item.documentation.map(|value| Markup { kind: "markdown".into(), value }), sort_text: item.sort_text, - filter_text: None, + filter_text: item.filter_text, preselect: false, deprecated: false, insert_text: item.insert_text, - is_snippet: false, + is_snippet: item.snippet, replace_range: item.replace, replace_range_tab: None, - additional_edits: Vec::new(), + additional_edits: item.additional_edits, commit_characters: Vec::new(), command: None, data: None, @@ -314,7 +322,7 @@ pub async fn lsp_code_actions( }; let plugin_actions: Vec = plugin_actions .into_iter() - .map(|(_, a)| plugin_code_action(a)) + .map(|(plugin, a)| plugin_code_action(&plugin, a)) .filter(|a| { only.is_empty() || a.kind.as_ref().is_some_and(|k| only.iter().any(|o| k == o || k.starts_with(&format!("{o}.")))) @@ -330,24 +338,53 @@ pub async fn lsp_code_actions( prepare_actions(project, doc, version, actions).await } -fn plugin_code_action(a: ide_plugin::CodeAction) -> CodeAction { - let files = a +fn plugin_code_action(plugin: &str, a: ide_plugin::CodeAction) -> CodeAction { + // With `data` and no edits, the plugin computes them when the action is picked. + let lazy = a.edits.is_empty() && a.data.is_some(); + let files: Vec<_> = a .edits .into_iter() .map(|(path, edits)| ide_core::FileEdit::Edit { path: path.into(), edits, version: None }) .collect(); + let data = a + .data + .filter(|_| lazy) + .and_then(|data| serde_json::to_value(PluginActionRef { plugin: plugin.to_owned(), data }).ok()); CodeAction { title: a.title, kind: a.kind, is_preferred: a.preferred, disabled_reason: None, - edit: Some(WorkspaceEdit { files, preconditions: Vec::new() }), + edit: (!lazy).then(|| WorkspaceEdit { files, preconditions: Vec::new() }), command: None, - data: None, + data, server: PLUGIN_SERVER, } } +/// A code action resolved by whoever offered it: its language server, or +/// the plugin its `data` names. +async fn resolve_action(host: &Host, window: &str, doc: DocId, action: CodeAction) -> IdeResult { + if action.server != PLUGIN_SERVER { + return host.project(window)?.lsp.resolve_code_action(doc, action).await; + } + let Some(r) = action.data.clone().and_then(|d| serde_json::from_value::(d).ok()) else { + return Ok(action); + }; + let (plugins, d) = plugin_providers(host, window, doc, ProviderKind::CodeActions) + .ok_or_else(|| ide_core::IdeError::unavailable("the plugin that offered this action is gone"))?; + let pending = ide_plugin::CodeAction { + title: action.title.clone(), + kind: action.kind.clone(), + preferred: action.is_preferred, + edits: Vec::new(), + data: Some(r.data), + }; + let plugin = r.plugin.clone(); + let resolved = blocking(move || plugins.resolve_code_action(&plugin, &d, pending)).await?; + Ok(plugin_code_action(&r.plugin, ide_plugin::CodeAction { data: None, ..resolved })) +} + /// Cancellable code actions with the kinds the servers advertise (Refactor This, refactoring availability). pub async fn lsp_code_action_query( host: &Host, @@ -381,7 +418,7 @@ pub async fn lsp_resolve_code_action( let project = host.project(window)?; let documents = project.documents.clone(); let version = blocking(move || documents.version(doc)).await?; - let action = project.lsp.resolve_code_action(doc, action).await?; + let action = resolve_action(host, window, doc, action).await?; Ok(prepare_actions(project, doc, version, vec![action]).await?.remove(0)) } @@ -391,7 +428,7 @@ pub async fn lsp_apply_code_action(host: &Host, window: &str, doc: DocId, action let action = if action.edit.is_none() && action.command.is_none() { let documents = project.documents.clone(); let version = blocking(move || documents.version(doc)).await?; - let action = project.lsp.resolve_code_action(doc, action).await?; + let action = resolve_action(host, window, doc, action).await?; prepare_actions(project.clone(), doc, version, vec![action]).await?.remove(0) } else { action @@ -801,6 +838,25 @@ pub(crate) fn register(d: &mut Dispatcher) { mod tests { use super::*; + #[test] + fn a_plugin_action_with_data_and_no_edits_is_resolved_by_its_plugin() { + let action = |edits: Vec<(std::path::PathBuf, Vec)>, data: Option<&str>| ide_plugin::CodeAction { + title: "Fix".into(), + kind: None, + preferred: false, + edits, + data: data.map(str::to_owned), + }; + let lazy = plugin_code_action("acme.x", action(Vec::new(), Some("ref"))); + assert!(lazy.edit.is_none()); + let r: PluginActionRef = serde_json::from_value(lazy.data.unwrap()).unwrap(); + assert_eq!((r.plugin.as_str(), r.data.as_str()), ("acme.x", "ref")); + // With edits, `data` is the plugin's business: applied as is. + let edit = TextEdit { range: Range::default(), new_text: "x".into() }; + let eager = plugin_code_action("acme.x", action(vec![("/a".into(), vec![edit])], Some("ref"))); + assert!(eager.edit.is_some() && eager.data.is_none()); + } + #[test] fn every_completion_kind_the_plugin_api_documents_is_understood() { let wit = include_str!("../../../../wit/providers.wit"); diff --git a/crates/ide-host/src/plugins/providers.rs b/crates/ide-host/src/plugins/providers.rs index d60b806a..b37c12e1 100644 --- a/crates/ide-host/src/plugins/providers.rs +++ b/crates/ide-host/src/plugins/providers.rs @@ -292,6 +292,21 @@ impl PluginHost { .collect() } + /// The edits of an action `plugin_id` returned with `data`, now that the + /// user picked it: a call with the command budget, not the edit path's. + pub fn resolve_code_action( + &self, + plugin_id: &str, + doc: &ProviderDocument, + action: CodeAction, + ) -> ide_core::IdeResult { + let d = Arc::new(doc.clone()); + let timeout = self.limits.timeout; + self.code_call(plugin_id, ide_plugin::Invocation::default(), "resolving the code action", move |rt, _| { + rt.resolve_code_action(&d, &action, timeout) + }) + } + pub fn provide_definition(&self, doc: &ProviderDocument, at: ide_core::Pos) -> Vec { let d = Arc::new(doc.clone()); self.edit_calls(ProviderKind::Definition, &doc.language, move |rt, timeout| { diff --git a/crates/ide-host/tests/plugins.rs b/crates/ide-host/tests/plugins.rs index 1b8eb466..fb592967 100644 --- a/crates/ide-host/tests/plugins.rs +++ b/crates/ide-host/tests/plugins.rs @@ -635,7 +635,7 @@ fn idle_instances_are_reclaimed_and_schedules_reactivate() { assert_eq!(f.host.instances(), 0); let info = f.host.info_of("misbehave").unwrap(); assert_eq!((info.status, info.stats.reclaims), (PluginStatus::Inactive, 1)); - assert_eq!(f.command_titles("misbehave").len(), 8, "contributions stay"); + assert_eq!(f.command_titles("misbehave").len(), 10, "contributions stay"); assert_eq!(f.run("misbehave", "echo", Some("y")).unwrap().as_deref(), Some("y")); assert_eq!(f.host.info_of("misbehave").unwrap().stats.activations, 2); @@ -2410,3 +2410,56 @@ fn uninstalling_deletes_the_plugins_secrets() { f.host.uninstall("openidea.ai-completion").unwrap(); assert!(keychain.0.lock().is_empty(), "{:?}", keychain.0.lock().keys().collect::>()); } + +/// Plugin API 1.0 leaves room to grow: event kinds are names, and the editor +/// providers carry snippets, imports, lazily computed quick fixes and tagged +/// problems. +#[test] +fn completion_quick_fixes_problems_and_event_kinds_of_api_1() { + let f = fixture(Limits::default()); + let pkg = f._tmp.path().join("misbehave-providers"); + copy_dir(&misbehave_pkg(), &pkg); + let manifest = std::fs::read_to_string(pkg.join("plugin.toml")).unwrap(); + std::fs::write( + pkg.join("plugin.toml"), + format!("{manifest}\n[[contributes.providers]]\nkinds = [\"completion\", \"code-actions\"]\nlanguages = [\"text\"]\n"), + ) + .unwrap(); + f.install(&pkg); + let doc = |text: &str| ide_plugin::ProviderDocument { + path: f.project.join("a.txt"), + language: "text".into(), + version: 1, + text: text.into(), + }; + let at = ide_core::Pos::new(0, 0); + + let items = f.host.provide_completion(&doc("rich"), at, None); + let item = &items[0].1; + assert_eq!( + (item.insert_text.as_str(), item.snippet, item.filter_text.as_deref()), + ("f(${1:x})$0", true, Some("fun")) + ); + assert_eq!(item.additional_edits[0].new_text, "use f;\n"); + + // Offered without edits; computed when picked. + let actions = f.host.provide_code_actions(&doc("lazy"), ide_core::Range::default()); + let (plugin, action) = actions.into_iter().next().expect("offered"); + assert!(action.edits.is_empty() && action.data.as_deref() == Some("fix")); + let resolved = f.host.resolve_code_action(&plugin, &doc("lazy"), action.clone()).unwrap(); + assert_eq!(resolved.edits[0].1[0].new_text, "fixed "); + let foreign = ide_plugin::CodeAction { data: Some("other".into()), ..action }; + assert!(f.host.resolve_code_action(&plugin, &doc("lazy"), foreign).is_err()); + + // A kind this IDE doesn't know is refused, not a trap. + let err = f.host.run_command("misbehave", "subscribe", Some("file-deleted"), f.inv()).unwrap_err(); + assert!(err.message.contains("no event kind"), "{}", err.message); + let err = f.host.run_command("misbehave", "subscribe", Some("file-saved"), f.inv()).unwrap_err(); + assert!(err.message.contains("events"), "known, but not granted: {}", err.message); + + // Tags the IDE knows, the tool that found it. + let path = f.project.join("a.txt"); + f.host.run_command("misbehave", "diagnose", Some(&path.to_string_lossy()), f.inv()).unwrap(); + let d = f.workspace.diagnostics.lock().get(&("misbehave".into(), path)).cloned().unwrap(); + assert_eq!((d[0].unnecessary, d[0].deprecated, d[0].source.as_deref()), (true, false, Some("lint"))); +} diff --git a/crates/ide-plugin/src/runtime.rs b/crates/ide-plugin/src/runtime.rs index fdb48019..bd5a9975 100644 --- a/crates/ide-plugin/src/runtime.rs +++ b/crates/ide-plugin/src/runtime.rs @@ -467,7 +467,6 @@ const MAX_SYNTAX_ITEMS: usize = 200_000; const MAX_BATCH: usize = 1000; fn event_to_wit(e: WorkbenchEvent) -> wit_events::Event { - use crate::types::ActionSource as S; match e { WorkbenchEvent::FileOpened(p) => wit_events::Event::FileOpened(p), WorkbenchEvent::FileSaved(p) => wit_events::Event::FileSaved(p), @@ -477,14 +476,7 @@ fn event_to_wit(e: WorkbenchEvent) -> wit_events::Event { WorkbenchEvent::ActionPerformed(a) => wit_events::Event::ActionPerformed(wit_events::ActionPerformed { action: a.action, title: a.title, - source: match a.source { - S::Keyboard => wit_events::ActionSource::Keyboard, - S::Menu => wit_events::ActionSource::Menu, - S::Toolbar => wit_events::ActionSource::Toolbar, - S::ContextMenu => wit_events::ActionSource::ContextMenu, - S::Search => wit_events::ActionSource::Search, - S::Other => wit_events::ActionSource::Other, - }, + source: a.source.name().to_owned(), shortcut: a.shortcut, }), } @@ -670,9 +662,17 @@ impl Runtime { detail: i.detail.map(|d| clip(d, MAX_TITLE)), kind: i.kind.map(|k| clip(k, 32)), insert_text: clip(i.insert_text, 64 << 10), + snippet: i.snippet, replace: i.replace.map(range_from_wit), sort_text: i.sort_text.map(|t| clip(t, 64)), + filter_text: i.filter_text.map(|t| clip(t, MAX_TITLE)), documentation: i.documentation.map(|d| clip(d, 16 << 10)), + additional_edits: i + .additional_edits + .into_iter() + .take(MAX_ADDITIONAL_EDITS) + .map(edit_from_wit) + .collect(), }) .collect()) } @@ -699,27 +699,20 @@ impl Runtime { ) -> Result, CallError> { let d = doc_to_wit(doc); let actions = self.provider_call(timeout, |p, s| p.call_code_actions(s, &d, range_to_wit(selection)))?; - Ok(actions - .into_iter() - .take(MAX_PROVIDER_ITEMS) - .map(|a| CodeAction { - title: clip(a.title, MAX_TITLE), - kind: a.kind.map(|k| clip(k, 64)), - preferred: a.preferred, - edits: a - .edits - .into_iter() - .map(|f| { - let edits = f - .edits - .into_iter() - .map(|e| ide_core::TextEdit { range: range_from_wit(e.range), new_text: e.text }) - .collect(); - (std::path::PathBuf::from(f.path), edits) - }) - .collect(), - }) - .collect()) + Ok(actions.into_iter().take(MAX_PROVIDER_ITEMS).map(code_action_from_wit).collect()) + } + + /// The edits of an action `provide_code_actions` returned with `data`. + pub fn resolve_code_action( + &mut self, + doc: &ProviderDocument, + action: &CodeAction, + timeout: Duration, + ) -> Result { + let d = doc_to_wit(doc); + let a = code_action_to_wit(action); + let resolved = self.provider_call(timeout, |p, s| p.call_resolve_code_action(s, &d, &a))?; + resolved.map(code_action_from_wit).map_err(|e| CallError::Guest(e.into())) } pub fn provide_definition( @@ -968,6 +961,47 @@ const MAX_VIEW_ITEMS: usize = 20_000; const MAX_CELL: usize = 64 << 10; const MAX_HTML: usize = 4 << 20; +/// Most additional edits of a completion item. +const MAX_ADDITIONAL_EDITS: usize = 100; + +fn edit_from_wit(e: wit_types::TextEdit) -> ide_core::TextEdit { + ide_core::TextEdit { range: range_from_wit(e.range), new_text: e.text } +} + +fn code_action_from_wit(a: wit_prov::CodeAction) -> CodeAction { + CodeAction { + title: clip(a.title, MAX_TITLE), + kind: a.kind.map(|k| clip(k, 64)), + preferred: a.preferred, + edits: a + .edits + .into_iter() + .map(|f| (std::path::PathBuf::from(f.path), f.edits.into_iter().map(edit_from_wit).collect())) + .collect(), + data: a.data.map(|d| clip(d, 64 << 10)), + } +} + +fn code_action_to_wit(a: &CodeAction) -> wit_prov::CodeAction { + wit_prov::CodeAction { + title: a.title.clone(), + kind: a.kind.clone(), + preferred: a.preferred, + edits: a + .edits + .iter() + .map(|(path, edits)| wit_prov::FileEdit { + path: path.to_string_lossy().into_owned(), + edits: edits + .iter() + .map(|e| wit_types::TextEdit { range: range_to_wit(e.range), text: e.new_text.clone() }) + .collect(), + }) + .collect(), + data: a.data.clone(), + } +} + fn opt_clip(s: Option, max: usize) -> Option { s.map(|s| clip(s, max)) } @@ -975,6 +1009,9 @@ fn opt_clip(s: Option, max: usize) -> Option { fn view_from_wit(v: wit_vt::View) -> View { let body = match v.body { wit_vt::Body::Message(m) => ViewBody::Message(clip(m, 16 << 10)), + wit_vt::Body::Other(e) => { + ViewBody::Message(format!("This view needs a newer version of OpenIDEA ({}).", clip(e.kind, 64))) + } wit_vt::Body::Tree(items) => ViewBody::Tree( items .into_iter() @@ -1006,10 +1043,8 @@ fn view_from_wit(v: wit_vt::View) -> View { fields .into_iter() .take(MAX_VIEW_ITEMS) - .map(|f| ViewField { - key: clip(f.key, 128), - label: clip(f.label, MAX_TITLE), - value: match f.value { + .filter_map(|f| { + let value = match f.value { wit_vt::FieldValue::Text(t) => FieldValue::Text(clip(t, MAX_CELL)), wit_vt::FieldValue::Multiline(t) => FieldValue::Multiline(clip(t, 1 << 20)), wit_vt::FieldValue::Checkbox(b) => FieldValue::Checkbox(b), @@ -1017,7 +1052,10 @@ fn view_from_wit(v: wit_vt::View) -> View { options: options.into_iter().take(1000).map(|o| clip(o, MAX_TITLE)).collect(), selected: clip(selected, MAX_TITLE), }, - }, + // A field type of a newer API: left out. + wit_vt::FieldValue::Other(_) => return None, + }; + Some(ViewField { key: clip(f.key, 128), label: clip(f.label, MAX_TITLE), value }) }) .collect(), ), @@ -1067,3 +1105,26 @@ fn event_to_wit_view(e: ViewEvent) -> wit_vt::ViewEvent { ViewEvent::Message { text } => W::Message(text), } } + +#[cfg(test)] +mod tests { + use super::*; + + fn ext(kind: &str) -> wit_types::Extension { + wit_types::Extension { kind: kind.into(), data: "{}".into() } + } + + #[test] + fn bodies_and_fields_of_a_newer_api_degrade() { + let view = |body| wit_vt::View { toolbar: Vec::new(), body, status: None }; + let shown = view_from_wit(view(wit_vt::Body::Other(ext("markdown")))); + assert_eq!(shown.body, ViewBody::Message("This view needs a newer version of OpenIDEA (markdown).".into())); + let field = |key: &str, value| wit_vt::Field { key: key.into(), label: key.into(), value }; + let form = view_from_wit(view(wit_vt::Body::Form(vec![ + field("color", wit_vt::FieldValue::Other(ext("color"))), + field("name", wit_vt::FieldValue::Text("n".into())), + ]))); + let ViewBody::Form(fields) = form.body else { panic!("a form") }; + assert_eq!(fields.iter().map(|f| f.key.as_str()).collect::>(), ["name"], "unknown fields are left out"); + } +} diff --git a/crates/ide-plugin/src/types.rs b/crates/ide-plugin/src/types.rs index dbd80edb..b1d7b215 100644 --- a/crates/ide-plugin/src/types.rs +++ b/crates/ide-plugin/src/types.rs @@ -126,6 +126,20 @@ pub enum ActionSource { Other, } +impl ActionSource { + /// As plugins see it. + pub fn name(self) -> &'static str { + match self { + Self::Keyboard => "keyboard", + Self::Menu => "menu", + Self::Toolbar => "toolbar", + Self::ContextMenu => "context-menu", + Self::Search => "search", + Self::Other => "other", + } + } +} + #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize, Type)] #[serde(rename_all = "camelCase")] pub struct ActionPerformed { @@ -348,9 +362,14 @@ pub struct CompletionItem { /// WIT `completion-kind` name (`method`, `keyword`, …). pub kind: Option, pub insert_text: String, + /// `insert_text` has tab stops and placeholders. + pub snippet: bool, pub replace: Option, pub sort_text: Option, + pub filter_text: Option, pub documentation: Option, + /// Applied with the item elsewhere in the document (an import). + pub additional_edits: Vec, } #[derive(Clone, Debug, PartialEq, Eq)] @@ -365,6 +384,8 @@ pub struct CodeAction { pub kind: Option, pub preferred: bool, pub edits: Vec<(PathBuf, Vec)>, + /// The plugin's reference: the edits come from `resolve_code_action`. + pub data: Option, } #[derive(Clone, Debug, PartialEq, Eq)] diff --git a/crates/ide-plugin/src/wit_host.rs b/crates/ide-plugin/src/wit_host.rs index 265f992a..0a2bbe36 100644 --- a/crates/ide-plugin/src/wit_host.rs +++ b/crates/ide-plugin/src/wit_host.rs @@ -440,20 +440,11 @@ impl vcs::Host for StoreData { } } -fn kind_from_wit(k: events::EventKind) -> EventKind { - match k { - events::EventKind::FileOpened => EventKind::FileOpened, - events::EventKind::FileSaved => EventKind::FileSaved, - events::EventKind::EditorFocused => EventKind::EditorFocused, - events::EventKind::ActionPerformed => EventKind::ActionPerformed, - events::EventKind::VcsChanged => EventKind::VcsChanged, - events::EventKind::Scheduled => EventKind::Scheduled, - } -} - impl events::Host for StoreData { - fn subscribe(&mut self, kind: events::EventKind) -> Fallible<()> { - let kind = kind_from_wit(kind); + fn subscribe(&mut self, kind: String) -> Fallible<()> { + let Some(kind) = EventKind::parse(&kind) else { + return Ok(Err(wit::Error::Invalid(format!("no event kind {kind:?} in this OpenIDEA")))); + }; if let Some(cap) = kind.capability() && let Err(e) = self.require(cap) { @@ -463,8 +454,10 @@ impl events::Host for StoreData { Ok(Ok(())) } - fn unsubscribe(&mut self, kind: events::EventKind) -> wasmtime::Result<()> { - self.host.subscribe(kind_from_wit(kind), false); + fn unsubscribe(&mut self, kind: String) -> wasmtime::Result<()> { + if let Some(kind) = EventKind::parse(&kind) { + self.host.subscribe(kind, false); + } Ok(()) } } @@ -542,10 +535,10 @@ impl diagnostics::Host for StoreData { diagnostics::Severity::Hint => ide_core::Severity::Hint, }, message: clip(d.message, 4096), - source: Some(source.clone()), + source: Some(d.source.map_or_else(|| source.clone(), |s| clip(s, 128))), code: d.code.map(|c| clip(c, 128)), - unnecessary: false, - deprecated: false, + unnecessary: d.tags.iter().any(|t| t == "unnecessary"), + deprecated: d.tags.iter().any(|t| t == "deprecated"), server: Some(source.clone()), }) .collect(); diff --git a/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm b/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm index b0c8caeecc4070cc047258c9eb6b267b6a9daf8d..b55671ab0fdb81a6aed5fa674d708743f89677f6 100644 GIT binary patch delta 30008 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 E2e%`(SpWb4 delta 28161 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 diff --git a/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm.sources b/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm.sources index 2edfa822..707df000 100644 --- a/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm.sources +++ b/crates/ide-plugin/tests/fixtures/hello/dist/plugin.wasm.sources @@ -1 +1 @@ -86dfe70a30ab1f7955a16e96c1b32c8be663456b871cc4d3bed7dc6052c062da +c9acbc021f3840649823cb7680e13907d429c6fda8271fdb0ae6e5ea89ed15ee diff --git a/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm b/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm index aaa324d9aaf21cffc2cb688491c99fbc83aba501..d15e5082e11a6e348eb0d91f916e8a287e5a4004 100644 GIT binary patch delta 19686 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 delta 18187 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 QAiQx9SJ1AC{G|5(02s_}MF0Q* diff --git a/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm.sources b/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm.sources index 61e1857b..695b65da 100644 --- a/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm.sources +++ b/crates/ide-plugin/tests/fixtures/jobs/dist/plugin.wasm.sources @@ -1 +1 @@ -0dacb82ac35c1f132dc66e85dbf0663b729f818279d3b32cd06403e502fbf880 +2fb6aa879562733bf5b7f11dabe8fc6a415c9ef695868fe7845417a4245d2dc8 diff --git a/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm b/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm index d6018357a9baf8dc67ee202600c21e69cd5da317..37db117ec6eac235202eabcd61cd96608680be46 100644 GIT binary patch delta 31232 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 R&7O1ofARJM;!W(I{vTbHTD<@O delta 22188 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 TqgSz$uK#Z^60GhYu!{c$U2D4x diff --git a/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm.sources b/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm.sources index 1c5ed64f..59546337 100644 --- a/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm.sources +++ b/crates/ide-plugin/tests/fixtures/misbehave/dist/plugin.wasm.sources @@ -1 +1 @@ -0ad2e4c6977a576b7eb27fc1e535fd056dd9da64bdfe6cfda9ca9f57537d0384 +25b0f419a68a3b1651d3c2774d834b05e40ede52bc5ed8c0eba6d27a204efe82 diff --git a/crates/ide-plugin/tests/fixtures/misbehave/plugin.toml b/crates/ide-plugin/tests/fixtures/misbehave/plugin.toml index 29dba7d6..1eae84d2 100644 --- a/crates/ide-plugin/tests/fixtures/misbehave/plugin.toml +++ b/crates/ide-plugin/tests/fixtures/misbehave/plugin.toml @@ -40,3 +40,11 @@ title = "insert" [[contributes.commands]] id = "cancel" title = "cancel" + +[[contributes.commands]] +id = "subscribe" +title = "subscribe" + +[[contributes.commands]] +id = "diagnose" +title = "diagnose" diff --git a/crates/ide-plugin/tests/fixtures/misbehave/src/lib.rs b/crates/ide-plugin/tests/fixtures/misbehave/src/lib.rs index cd6d6511..890bf845 100644 --- a/crates/ide-plugin/tests/fixtures/misbehave/src/lib.rs +++ b/crates/ide-plugin/tests/fixtures/misbehave/src/lib.rs @@ -14,7 +14,9 @@ wit_bindgen::generate!({ generate_all, }); -use exports::openidea::plugin::providers::{self, CodeAction, CompletionItem, Document, InlineSuggestion, LineMarker}; +use exports::openidea::plugin::providers::{ + self, CodeAction, CompletionItem, Document, FileEdit, InlineSuggestion, LineMarker, +}; use exports::openidea::plugin::syntax_provider::{self, Fold, Symbol, Token}; use exports::openidea::plugin::{commands, event_handler, lifecycle}; use openidea::plugin::{invocation::Invocation, types}; @@ -67,6 +69,23 @@ impl commands::Guest for Misbehave { } // The user gave up: not the plugin failing. "cancel" => Err(types::Error::Cancelled), + // Event kinds are names: one this IDE doesn't know is refused. + "subscribe" => openidea::plugin::events::subscribe(&arg.unwrap_or_default()).map(|()| None), + // Tagged problems from another tool on the line 0 of `arg`. + "diagnose" => { + use openidea::plugin::diagnostics::{self, Diagnostic, Severity}; + let start = types::Position { line: 0, character: 0 }; + let d = Diagnostic { + range: types::Range { start, end: start }, + severity: Severity::Warning, + message: "unused".into(), + code: None, + source: Some("lint".into()), + tags: vec!["unnecessary".into(), "glowing".into()], + related: Vec::new(), + }; + diagnostics::publish(&arg.unwrap_or_default(), &[d]).map(|()| None) + } other => Err(types::Error::NotFound(format!("command {other}"))), } } @@ -113,14 +132,24 @@ impl syntax_provider::Guest for Misbehave { impl providers::Guest for Misbehave { fn completion(doc: Document, _at: types::Position, _trigger: Option) -> Vec { behave(&doc.text); + // `rich`: a snippet that also adds an import. + let rich = doc.text == "rich"; + let start = types::Position { line: 0, character: 0 }; vec![CompletionItem { label: doc.path.clone(), detail: None, kind: Some("keyword".into()), - insert_text: doc.path, + insert_text: if rich { "f(${1:x})$0".into() } else { doc.path }, + snippet: rich, replace: None, sort_text: None, + filter_text: rich.then(|| "fun".into()), documentation: None, + additional_edits: if rich { + vec![types::TextEdit { range: types::Range { start, end: start }, text: "use f;\n".into() }] + } else { + Vec::new() + }, }] } @@ -128,8 +157,27 @@ impl providers::Guest for Misbehave { None } - fn code_actions(_doc: Document, _selection: types::Range) -> Vec { - Vec::new() + /// `lazy`: one action whose edits come from `resolve-code-action`. + fn code_actions(doc: Document, _selection: types::Range) -> Vec { + if doc.text != "lazy" { + return Vec::new(); + } + vec![CodeAction { + title: "Fix later".into(), + kind: Some("quickfix".into()), + preferred: false, + edits: Vec::new(), + data: Some("fix".into()), + }] + } + + fn resolve_code_action(doc: Document, action: CodeAction) -> Result { + if action.data.as_deref() != Some("fix") { + return Err(types::Error::Invalid("not one of mine".into())); + } + let start = types::Position { line: 0, character: 0 }; + let edit = types::TextEdit { range: types::Range { start, end: start }, text: "fixed ".into() }; + Ok(CodeAction { edits: vec![FileEdit { path: doc.path, edits: vec![edit] }], ..action }) } fn definition(_doc: Document, _at: types::Position) -> Vec { diff --git a/plugins/README.md b/plugins/README.md index ae53436b..a579afb6 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -321,6 +321,11 @@ Events are batched: a running plugin gets them within a fraction of a second, an idle one collects them for 2 s before it is woken, so frequent events (Key Promoter's actions) don't keep it alive. +Kinds are names (`subscribe` takes a string), so later IDEs add kinds without +a new API: an IDE refuses a kind it doesn't know with `invalid`, and a kind +newer than the plugin's SDK arrives as `Event::Other { kind, data }` (JSON). +The SDK's event enums are `#[non_exhaustive]`; match them with a `_` arm. + ### Providers Declare what the plugin provides in the editor; only plugins whose @@ -338,7 +343,14 @@ Then `register_plugin!(MyPlugin, providers)` and implement the document (path, language, version, text). Results join the language servers' (completion lists, ⌥⏎ quick fixes, ⌘B, gutter icons; a code action carries edits for any files, applied as one change). A completion item's -`kind` (`CompletionKind` in the SDK, a string in the WIT) picks its icon. +`kind` (`CompletionKind` in the SDK, a string in the WIT) picks its icon; it +can be a `snippet` (`$1`, `${1:name}`, `$0`), match on `filter_text` instead +of its label, and bring `additional_edits` elsewhere in the document (an +import). A code action can leave `edits` empty and set `data`: its edits are +then computed by `resolve_code_action` when the user picks it, under the +command budget instead of the 50 ms. Problems (`publish_diagnostics`) can name +the tool that found them (`source`) and be `unnecessary` (faded) or +`deprecated` (struck through). Editor providers run under the edit-path budget: 50 ms, after which the result is dropped, and an interruption at 500 ms. Every plugin providing a kind is asked at the same time, so each has the whole budget. @@ -393,6 +405,9 @@ collapse of items, form fields, table cells, inserted and deleted rows, and `html` messages. A tree is a flat list whose items name their `parent`; an `expandable` item gets its children when it is expanded. A table gets only the rows it shows (`viewport`): report `total_rows` and return those. +Bodies, field types and view events added by later APIs travel as `Other { +kind, data }`: an IDE that doesn't know a body says it needs updating, and +leaves out a field type it doesn't know. Showing a view activates the plugin (`on-view:`). `views` become tool windows; a `customEditors` file (`priority = "default"`) opens in the @@ -890,7 +905,10 @@ only grows: Extend with new types and new functions (or interfaces). `types.error` is used everywhere and is no exception; new situations use `failed(string)` or `invalid(string)`. Sets that keep growing (completion, token, symbol and - fold kinds, icons) are strings for this reason. + fold kinds, icons, event kinds, action sources, diagnostic tags) are + strings for this reason, and variants that grow (`event`, view `body`, + `view-event`, `field-value`) have an `other(extension)` case, a kind and + JSON data, that carries later cases to older plugins and IDEs. 2. **Host interfaces (imports) may gain functions and interfaces**: older components don't import them. 3. **Plugin interfaces (exports) never gain functions** once released: the @@ -902,6 +920,11 @@ only grows: minor with a message that says to update the IDE or rebuild with the SDK. 5. **One version number**: the `wit/` package version, `ENGINE_VERSION` and `API_VERSION` agree, and the SDK's `wit/` copy is identical to `wit/`. +6. **1.x calls are synchronous and pass documents whole.** Host calls block + the plugin's instance, and providers get the document's text with each + call. WASI 0.3 async components come with 2.0, behind an adapter in the + host that keeps 1.x plugins running; incremental document sync, if + needed, is a new interface. Checked automatically: diff --git a/plugins/official/ai-completion/dist/plugin.wasm b/plugins/official/ai-completion/dist/plugin.wasm index c51a0c6730695403d05b5dacbd0999a7691a8355..b163d5821f287447572e263df6cd90e45a73b41f 100644 GIT binary patch delta 29079 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 D4V@Dn delta 23388 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 delta 30287 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 Diagnostic { let line_len = text.split('\n').nth(p.line as usize).map_or(0, |l| l.encode_utf16().count() as u32); let start = p.column.unwrap_or(0).min(line_len); let end = if p.column.is_some() && start < line_len { start + 1 } else { line_len }; - Diagnostic { - range: Range::new(Position::new(p.line, start), Position::new(p.line, end.max(start))), - severity: p.severity, - message: p.message.clone(), - code: Some(p.check.clone()), - } + let range = Range::new(Position::new(p.line, start), Position::new(p.line, end.max(start))); + Diagnostic::new(range, p.severity, p.message.clone()).code(p.check.clone()) } /// The project containing `path`. @@ -188,6 +184,7 @@ impl Providers for Checkstyle { kind: Some("quickfix".into()), preferred: true, edits: vec![(doc.path.clone(), vec![edit])], + data: None, }); } } diff --git a/plugins/official/csv-editor/dist/plugin.wasm b/plugins/official/csv-editor/dist/plugin.wasm index f352916631b118a6571fce4f1b6f5a2f0f019a88..5e29e5820860479061664647435120b56f361991 100644 GIT binary patch delta 21821 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

`PO=tw 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 rv-@*q3r&)N%g%h+;dMq=iZ&qKh}SI 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 J%X5&y{~z@~-N*m{ delta 10165 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 PWz9r=nBffjn0o#{Fv2ap delta 25952 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 Vec { .map(|r| { let line = r.line.map_or(0, |l| l.saturating_sub(1)).min(lines.len().saturating_sub(1) as u32); let len = lines.get(line as usize).map_or(0, |l| l.encode_utf16().count() as u32); - Diagnostic { - range: Range::new(Position::new(line, 0), Position::new(line, len)), - severity: if r.error { Severity::Error } else { Severity::Warning }, - message: r.message.clone(), - code: Some("graphviz".into()), - } + let range = Range::new(Position::new(line, 0), Position::new(line, len)); + let severity = if r.error { Severity::Error } else { Severity::Warning }; + Diagnostic::new(range, severity, r.message.clone()).code("graphviz") }) .collect() } diff --git a/plugins/official/key-promoter/dist/plugin.wasm b/plugins/official/key-promoter/dist/plugin.wasm index 9ef9e3d0cc4d334ffbed45e398b927a9fd5774df..4a092d3640afd2ad390622087ecb822d0f07bb92 100644 GIT binary patch delta 10271 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 delta 9210 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 AmjD0& diff --git a/plugins/official/key-promoter/dist/plugin.wasm.sources b/plugins/official/key-promoter/dist/plugin.wasm.sources index 069068aa..23ac06dc 100644 --- a/plugins/official/key-promoter/dist/plugin.wasm.sources +++ b/plugins/official/key-promoter/dist/plugin.wasm.sources @@ -1 +1 @@ -7f5aacde2b8a8bcee5365c8cbda91045195688899c6537dc2159037cca74a672 +3c83bc9559df54457e19e650cdd21bab9d609e22daaa1fc4f596910b70834a34 diff --git a/plugins/official/license-header/dist/plugin.wasm b/plugins/official/license-header/dist/plugin.wasm index 1c82e278884db357ba9fbf6c07094a539d054bd0..6672d2bdf8412aad75f8fbc6f5029665da1daeaa 100644 GIT binary patch delta 36597 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 delta 28260 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

_#3vt<&2Zxifxa;#xxE#h0%C E2QRxV!vFvP diff --git a/plugins/official/license-header/dist/plugin.wasm.sources b/plugins/official/license-header/dist/plugin.wasm.sources index 7dc3c5ab..a70c551b 100644 --- a/plugins/official/license-header/dist/plugin.wasm.sources +++ b/plugins/official/license-header/dist/plugin.wasm.sources @@ -1 +1 @@ -45a7ee993b5c234b0d25e5b05ef60e714fa3edf63d6bd0d6a29b13587c8d09ce +63f1bbdf6eca5a4642cd3453ae384ff3f876de0373c12008b757a63852164b71 diff --git a/plugins/official/license-header/src/lib.rs b/plugins/official/license-header/src/lib.rs index 7fd5d789..1da3c9e1 100644 --- a/plugins/official/license-header/src/lib.rs +++ b/plugins/official/license-header/src/lib.rs @@ -129,12 +129,8 @@ pub fn header_edit(path: &str, text: &str, year: i64, owner: &str, license: &str fn missing(text: &str) -> Diagnostic { let line = insert_line(text); let len = text.lines().nth(line as usize).map_or(0, |l| l.encode_utf16().count() as u32); - Diagnostic { - range: Range::new(Position::new(line, 0), Position::new(line, len)), - severity: Severity::Info, - message: "No license header".into(), - code: Some(CODE.into()), - } + Diagnostic::new(Range::new(Position::new(line, 0), Position::new(line, len)), Severity::Info, "No license header") + .code(CODE) } /// Reports `path` when it takes a header and has none, clears it otherwise. @@ -274,6 +270,7 @@ impl Providers for LicenseHeader { kind: Some("quickfix".into()), preferred: true, edits: vec![(doc.path.clone(), vec![edit])], + data: None, }] } } diff --git a/plugins/official/mybatis/dist/plugin.wasm b/plugins/official/mybatis/dist/plugin.wasm index ca729516bc530945523cc7cfae70d006fcf0d434..1fe1055fc3aacec72cc24b16f5656ff35ed48f3f 100644 GIT binary patch delta 36948 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 CXvJ6n delta 31552 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 delta 82833 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 KgX)Hx{r?w4X#RHq diff --git a/plugins/official/regex-tester/dist/plugin.wasm.sources b/plugins/official/regex-tester/dist/plugin.wasm.sources index 013089c4..845c9957 100644 --- a/plugins/official/regex-tester/dist/plugin.wasm.sources +++ b/plugins/official/regex-tester/dist/plugin.wasm.sources @@ -1 +1 @@ -227c8150c6ad7a5a20236764f149c876cbbc3b082763bf2e7fc05de99726b740 +257478b050ea360c55e904f2a89c6069293139ff0d97ba860de3f29dac927787 diff --git a/plugins/official/solidity/dist/plugin.wasm b/plugins/official/solidity/dist/plugin.wasm index 4fd185f6a667245d3da51a89a8c77d06f265dc63..e1a8d32dfce84e19bec8f0840d8318285751d4aa 100644 GIT binary patch delta 10506 zcmbVS2Y3`!*Pe4{wq#2(fg~)+lFV)bY#7NOkd=CK#=b}-Uwi!NrpyXrM(P|sofxfO|9Fp-X%KN7>Z^XZNo>88C#fG zP?(>aGs=_#9Suyy5W3CK5kz{;&=o>y8)G`uqxr_RP@ir!wudl!#TX6Y)M|PfB51BD z1{%=GrvBhi%MG#IlD0O-3z2a9f^U%dh`@hE&d_9gU(rU0)y@%OGgv~vWC7m-`*?tL zJ~3nuDLw~56#$$J)_;8m&pbU&fd#M--hg+=XJk372Ope+_h1IR1E=6~*acs}m#`a7 z!x`8QGvQ-60bj%WPzCS8UYG@Y;8QpWXW=V&8{UG$Z~zX%A=n0$@G2aI58w!V1jpb* z_zaH2PWS}&rGp>7g_&d)nN8-9ax#}}B5x8Od7JDY=gB#;i+n-8BxlKC@;&*5TqQq~ zpNQr1W#NpktX^M2548!09lmQ}tpSU6IyE*t;;Yh<5{|RR;;V#{%a2x-a9(i-9T<@d zH|T+grSOe!P=jEAi}ZO%BwX~(bQnSWhY?Fg+2NH1*(UzuTix(sfK&8pq!XXdxId*| zNA>(qB66G^;EHdR^E?2hrO|zX`p!geW0e`wCg&baFDXPaNhV#pvQw&dd+4LCpWq*w z<&K0czGvJq|H&HPj@VN{$bNd_CU73o83#!g$*ePe^D~`sc5-B7K(e`7?(bUnAv!6! z1XUJN>Or#rn-Iz9Ay+`$Qq4BN^rAk>m(^k+i44%!ujV>G(Em%z!GLU^X#F0*7V1cA z6Cc2LCg=d`c>e<4I4qWMAyyUmt#o|a=?6`rH(iD|=$7 zNbq+?5)w3Tds4c;uS`UJIIF}-9Q~A7wWS!0PH=`3ycutebwuedE> z+uf?r^zL8PnTY;9E(Pko=N@hckJi;%(5(=3k-T2#^*V?@F;O^+x79b1PjG?Bx()!v zB#U0_8C!f8IH0q^$*%#2(;Id3LUauNU(K53Y-k;3#W-^^f_1N4$Nd`PbOaxug4Mbh zKq!tyi!lE?v;YXzf~}KwJLkmF}&>Yx_FGS=5BV*iUw-qI7uIOz8d%W0DM3>afBOC zHzg|*_ju@?>`c+O1ayp4Vq>n#q!WoBA*aw@y&K}n8``^rkTTjO(Cpq3Sgq>ajK@** zYVRCe&)M0n@i{sBH~5RT=$jFGQ`J;Jb0k4V+-}nM`y{{}`fHygQZmu!dNdRo)^({` zb3l7OHaH^0(3EIf4mh+>-cyAO3QmZqh3H-J0=Z14aM!o&O7wS z$5nBTCuAZ$P#kkL>t;>PvL~bC>JswkAe#H&>esrM3g@0=Dug}N8E(<1pOWx7{;4#4 z?szIL@)k3mxoMc!!-4}YJ$%a`-lD&#q@jId9*EO~zIAX4g5oVImUjn^T6n1jtgr~C zVt56Y)+@RPZif+WUh_clFU@o0mEe^?#_5$)#4B2xhpYvcK(f$Fc@J3$GBE$-WiFM3 zNxZ}dd&mYzB_fuYZ_vDcE$PaBX0x_-gE_jbUqi73wC)M`!oXNW=RD&WI8$$&#@^Uk zhHtqXHQ?nNY?5l}#LHz+-NFRAf+RkkUkNS?(`pg8tgK!RE}J|B#}&CuHoCQ6WUCFj zjJ3Lql{GTZ)_@FcWPlUB)i3tH8<_n}i;zB=rM)zpx-(0Q`)h4|wYDcDgEsXp+%d4M zPQM!g7^aa8(a4^~E~ht<;~1HIg=4rJu7wL?ge{-eYC(*!1(&pLmk>;hCfqFOpU*US z;=e&cF4M6zBfJ<%#Gl!m*a)i?rxFi+wtrOdeHnY0Ce;XAW!x6oq%eq6w7K%QY;40) zXZ$X{<-j&r18(5BE_9IMSeb!zx47c_O)2u#W;2yYtQb$qA&qyi!ZdK%SznpvLu7*H zLPe@pWQ@zkI!C%pR?XqV+-BBb!|;i^;#xn#AVB^eba^x862)G(AlcK16ElLKRN}yw zB@O!o$;v{dAlcF|R0>)mfHN7-JJLuTHXsKnl_apqmch$blYs?m1BP$pX|yw(S(<@# z8*1`T+y*d5!9+xjA~-l3`@?it&^%ijt_o}>;x(pdDjKfMgpTxf)~cCS4sJm%W~*5c zu~oH7-cA#Xk}-1sLbHcq`b~=luqe82Kohu0KN{eHpXnb19)g=b&p?@AJoDy6WB2r& z$1oi@o0E@3*@K*Lo{k*!a4StiGjm9WRKP3E@_h7Dv)rzxL1J~)w|$oeRkAF3{gCcf zElyg4Iq@&wtsyZi6^tC(2b07RLqi}YkZ=dF1l?JkpIh`QeeJm^cvg{yB|*Rx@37Ty z$Y&qElQ=K3n23g(C7XUkIIdKca9){+7wLr&>){(ZePk|<|9RvIJQ`JvipHbSxlsr&Ok>{RA4xvbIk4^3AAb@h$g9I($f zzGw@>sOk7Q2%vxbj&3WMl_Ay;mVlxZag|mN)$6!nt=3u)38WC$YBe6mG*?HUA2A`@ zUy^9kmwoiaOO2hs=>B8y5OcNrNLaIpTWIKnq*@ty_X+3d>6fGNz<2ZI^njN1kykPT zW#5`t+CcGcmhj027h!u$;D=s5!5bU|27zz}gMnu$Z#>6!ynN(4dc9)NI~Tdf?1GGn zN}Pw|gwe|O}_k3$Czzvr7GNLQ*Po}1V{3s;hWrN1=+ppWd zv*z=e%XcMCMmn>%HOf$#O)l%h2n`54r%%n6C2VRCC(33n%7tN&_|6p9C%Du9JW&pt z$l$YX;DH44sPi0^hBv@$mSuLFo0r)#D=LsNBFS9$s9+Pjj0t4_YM*vmV0oaLXGsuG z1dJaxBg+?%e@W4UDAYrN8fNdNC=M{ea7)le#8yiv2~!J0Y8HAR(r{^fx>mxF)tQyl z$kIz99t>Fc@QBw@0}k^^wJ#x+^wsF&()d2;K?KuKIZn+xS+KkV&u4HruvnJvNtbOr zGf3TD?p8OTEyBymlXa8XhQMiC`vd5i2gehUg;nX2e-oVc8E!#yS4D^B-KnHCJTKnsTA>2&4vf7fjYdbJZQrH{PYvv|h} zmB*R7JQzE5+HeId(=^rLG01b5t0SB!?&4`y6zkk2xDE1Gt5k}kOrw=wsU$jpq7KJ# z6CuS0%uZ>88U0`f&7aW$pF3te1aJGkn=uq%H|;emDQt(j3grsGxh?-vV?<}qib9k( z%^Fw#62ppRC`8^M;O$Djc!{=}T@azRtNtM9?hs-Xr_epKqZ;TJLSYCmu2S|8(8MeB z=h<^n=EOO(+!}BM59s1_X1TbSJzWrpRv7wH%H!)TVXY`w)X8jwW|lW>2jV>)=*^4_ zA2D7%y6jzA#XM{o=o6>0p;hH_r@O_o!PS===(ZKwY*gZ{shZ;J3BFX5-!G<}=VnIF zXLM{Ou_Iy;rW{UOr8btSIlbb1x^iywBu!H_(NQhcay_I$xG@UgA*D72y*alv?4`-` zqG3AiJ@5Ij-I^clV<`NtIl^Rma^8M)(S@`zuDD7%7ha>i=SPNbWXfPj6c`HU&oJY~ z*XYah2f-$Ketsg9(clFc^#Z1w1IRC;{TB4VX_>Plv6d?cHLh@CM+0<)+Y54FJsr5v z(PRa42$v4HcHEJGEq2}QEI8xhYPxLUBRJsl!sL3Z*#L>S3~J25O>!MgP`U+`YaqW0 z^wGy0biR^==FwxXHNus5<+UfV+-Y&!fUj0Bb{WA(7n{F$KrMi|8i0*U4&lCkY)KEy zEF4SSaZ{P9YHWA&>?Po}(iPT*sRX8!m=I#%7_f9muzrY^K`s$cz=@?3EEU=e28$c$ zlgqw@%QR)V53Renycm9sP3Qr0Ezr8icMPrkUaiYf*jbFsV1E@r(5PSU1SC=&IF{{cAR!vm$7iHPd6O6Ue01^zYS;;4sZv;|Oky zVZC}w--%6~$<&F;BL+yNm20-5>x@|28n)3@Ya3(v(AtmSdpds|GyCj1W;VQjFzk$m z(Qy{b$~4cdq-S2w!U4|pF=3@z_&mhA=Lfp8*GIx0>Q$eU*Qdit`tJHz({84#HHtpE zA&T-FGH`)pZW!6>m{1sn=-zZhrxZ`puQ$ZtZ2hz0p``B^ z9m|XmfFEj=e^iBGn1h-?hXV&}j6xg7Z)7$O+>}ahY>dXKR_nfjn?!)Abj;?CFxBVV z+?-X;ZNUn4R}|wjcxwVZR?$H%J!h-Xw85jf{5GAqHQcc;(4ZQE>5mrpKc-u^j>0j{ zZC9(Ym$x@*_*pGw|EE^@0xj7-1lRm`+qdI$;TvNSC)YqN%Y1)+O0!)eR6kK>f{em3Rt{&ZwK$e$4YrnZb&;4|Yw!j}!VuWdEWa?d<%68~BfVAG92DAQPc(*?E_-5NAh_?)-DC9L)x-2W4Sjr6SpO%S28 z2RhZestUz`0wfFLS(vz%wm8`Je$CSlcEi6MK0cVz;~E=-sg$aX8!$TJimBZw1RDRS zMQIK+{;4*qyT`+aQbHy%k9Fg{DoeA)>vZ~|Ct)%@f2d(t8S7!k1q^nn1VJI<4QfAJ zmOX`abg`@1v`xIJngF=MF*ybX)>N$@BN@7&c&oY}SurmVr)m9atj8Mxdj4>7=>Mox zYI1_1qdo5H(g(d^8O{6PeOT&ib)%ie!J#$Bx4odNhfI=Da(aS3RyUfrJ;HVOAL3W?`+gPBIz#8Sc4a#un zOLoY{*N56GDj2$8EhiZNn|@D84gp`p`wSF29xXvUpcYwXd{DU&0`aiV?-n5%pvo_Y zLLv|Q{dr+yP#|3Kvjw`KV;c0x$ zj>SLMkNZ>O;Cn;J2W$vJW5z!}EaC@B^JZx1F~7Sx6!UOMS)BwM@zpCC#sXFLCqo+S z@!v{@=XltoRI~&~%fQ_b{_Cc1lxxpdu`Tq$9qK?h8R$+re|#7~LN7ur^zJ{nH-e4LccE z8nP-<>6*!$O&OU9k)}^rtFRf z*BRcm8w+xC@&^y|FMAA~*uU;^*ktxU-X8{rxTXTf#c~{HH;G&}zQ#?s(?0I7gYd$YA^T2!j&0mBjV2mfRfZrp;SYnhH#zT~;8HvMsG?gq4|Mu~)Ua&Z` zfFE2~6vZ`Ha*AQBF~MYjEKWII29e74Vh|N$383@)9VPG$ghz!AA2kL)y-6&5aZGMv zZhn4VKJQdQN+BXDs@^?aDZJC#7`PY(mP3p(uoO&=MqUi{&Mck`A5y^NCh&q-Xe z@=7TThZO&hr7#E_&WPH)hL3(BZ*UI#$VaJ~3QVGl90vf8yYCi6T;?(^YLtlfW5nHieO4)@np73=x}hWC}#~vRfnZ5>iEqH*uV$265i3LK!?P zq4F=9QENAo(yhi2#>KP6IaKx;nOoebIXDY-LKfwOh53)Y>KDI>HA+Dv^ zU0%QpPvN5*)Ph_ongn)eq@10KD<(#9&4l_G38ZN-S;?FZ-Ic4;;8A0SsR0=it97v#_7=B^G7ZifU5IPOsX@`GmbXT0J{(u8sj)`Yq#CfMb6s)j0TL3fK)BK%m&zf!9EuA80?Ck&kc4YRC!B!* zLMWh-GaSl&jyiH0Z(_--d(R=b6SDV$h5Du?Gd z7*_(tf>8sP7)tX>^K(j!+BBF;atn(~M@=jx0w?M#i*jtmV+xB4az^tU4-<^E0#d?A zy=i?G1bPNy>1{{>LgUFe;OTtgLg?${SuoIG-UUY5p6>xB`V!v<%-;8SBR~K>Cp3mY z`jjDwh8iTWsADURd&Jp{A;5D+Yu@;xiKQterNuef1*SB#5a9^~(bo;#Aei1Y^aPQ1 zF}8;gI@#C}LaEo-85+^s#yGH3(KHmosM{0|;k3du3?kHiB=%d=Omngj1-C!-jy0bW z_^ad!ZDSh}M2N*|;|Q?^27@WkyV~|Qfc4&p;KRgI0|7e$I2kN|`3jyJI%yeDSPHwr zM?NI0;Z@iRHEfe$XhNAMPW43}X)d;(XX8Y%?$K>kSrzxZ0X;+-ElguoU0RJa}Xcz?CG1stTu zI_OvSFxW%Kgy+CrdM11|T=(Wh1VQYV)62>@8z-41Tf&So?8{{?XHY!bip(nuqS z4;WN3%8_nakgeha@7ActA?^|)bDTvIB!kS=t^LwmF5`kND4o$oI*Hq8NX#YLF5!v# zI(hded>nw}7N=|jI6*tMjE+6135SA()`@ofBUQA6bVAEWM5}07hVod_LLuaYu1YXt z@=ri6sp*K~?UlZqAm+8!Y;d>rD8L2JwLJ!~jmBqmNcPLQ0CdCXcB+LsxmAPhpwlxx z)y+Sly$rjlw|y^E;C}lLb?Da}+Tu7m(?8}rrUqQmgj!B$`WQRy*U_ir#&k+W+{ZhO zfPd2MohD-&+%=6p-FXev(%YT4zyrFnO9D!Gq{{$xt_I;hbk*RoW}8G@#EKdo>5@)w zWX0>tJIcSJZf(2u23-GAcU{k*ak7g}?-zx8WmUhf*j`opv4flOxP&_UXXDW0)dtd{2OM3`vbd#XgK~@ z7(wo%31W)_SMH^5>T=j651N4%%{fS1d_ErE>wlwD%2 z26K^F;1F2YOT3Gefeg4yFkCQDtr&j@n+s~p@@o2{o1SfLlMEQ%L0ST^QFuP8(_BDY zjFMUGiJ@19Pq~(JV~adR%^!R+UxfP(NltMDYP-r|vRWB|R{uEx+G1FGaBq$6V;a{i zDn1w4{TU55K!ZJrhkK;D9oaE&S9`dz3wtgS zi6+9HC6h~JzLUYt))+8pI1E_4dE8E;jaidbY=}M=%N)Jz!82V>%$Eg`?JJapOR)MB}a*8`7!`c&cOGy69m^^P2fXR>irF|M9EDi*HM z<)a>NqseNPuVdVqF+J*mXqK1aE;Y-Y9s)2r%<_9IFunHChgk7;A*Z)RXB)(c_q>T? zuvV?5kBuFGMbNUb!4U7S2m{z*5L;)dKz&G$<<2pv1u#wbxcD}8nl8=TfTd!F`z-=r z(%SrJY%K+w;X3seh-rB|pJMZ{JckR-@jxCUs|3?t{r)5Vzx$cx<1WA|ckaDY4kTG9>{ahgEpZ zleDT7*UTaw93$_Gf9UuWZcbzs4(Z`sWt279PC#(84Xd@oi zG*?$(NC@JW^wVh)45Ve{_7)gyX17L7ox7z6h5-ZGDaam{8ZnJ%_2GRhQu{=N4OY{xjAW56~&)Ezvw% z%4L{Czb}u$zH#my_>SJ2+fi+s(&y*7U?H6|FVnW18HBS~kbt;|o}HJESDDO;PS{Sa zNB}QgRgoOCm~AnqftiryFjj=BhlN30Nk6aHg7oLk?*Y5$2lHEpUs|IIbcYjHGsWXdm zMXm4xI%&}ufc>;)ajJdCDwWVqj5c}k6^#&$uZ%&9w3`F0Np$ z1DF@sAKrwH(&W%r7!+BEI+~Txb2O?Gh<}>E!-An<6YtjV%llVXvq)M4y5lr5^r@w? z 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 delta 14169 zcmb_@33wDm)BjY@CcDXQ!h{48l90@90wzF0@tl{|u+0PdwNudAe?95SFL;Qvp49Om4Q-U(H3Wg5PPZ~XZ%&4qv zRZ)0nH9CkKqlXM1Rgg8NfY}sb*j)sBniZne05xHjEtnEn5Nw@V&NP6v!X(OCTrj>erfF z{0+bM6jXZ3&z~rmcd%EtR|0Rt#}x1b_Hgd8Cy-`BLn=Tg16rAv*rO?w@3ps}FkZ>g zhN|%Hjz(0K&vG=OaK6XUlp=UQKnzvm2?0GRlHUu6r6?X7Sf76zkVw&HyE@u^D2Bfn z*v1x1-!3fO8Q9BT{a!uF<3j3_%Dab*tIn9Jsub);E`_KHt3pHybGgWABjzl<67n|D z7Ctw04{hL?VGY?v6037qyt;{MiRF`66`@aJ!GUp*&%oSlWiyF6gIO(g3wob;iN%WK zA>ak9?O-3V8}tQR$9A(->;txfz0Ypadu$`y zz;?1-Y#Ce1K4v9sHCw~xv3J?;PJc&d)hmwh)=Aw3T3_8 z@1iWM)1B9?)5WY!r?0tTgweuMJ*g?7(Kp%62b~D!oejHV;e?_hMRA@eU6g#;PCu2- zNVO5Y#pk5;r$hW&+AuoG`!>p<1EpU!(i#20FQzBbaURxW63s51-{esW{ca)<1d+~+ zkEwl-qBHGBe*Cev`swk2>-Gc|@3zT@?he=OMnsNYRS(9X)4WyF+O(UGXc~>OxM^4V zk)LSVBC5zlhl$1&B}em&7!NiHZFc&*ptf?@dxMebZUAn$y zxJuhf54Rb?q7TSj()|*c%k7j8hg;eN-A}h^2YCPXZ##FI%VoN%ZRM37uSN%X;^R+3 znO}T-1HH!6J4DiJrQJGwOaYce{k4l+>om;QvS}AfCv^&CR8%^z%OIk~{9e~4Q28cL z40dia<>s7BWD}G{Vd9>Hg2*L;0w@}fS^?C6-*{pyE#kRPwi4$ZRO6w}zn&aROJrxM z_od$p$oKCoBo zFl%F(q36V7%dw}U!P)6su+9g1r35OvEtT1HMOXRA-to5ML`=*KgrP3!?cy7HhZp)O z#8jJ~Q&$XIj)(d5gIW6Fvi&!3D2N=dZIKjR3@zV8@McP0F8~YBj3u)7FiK%oYYsJaGcIv%;r}}FEjk316_tT%-RzNMgb^ z8aOa!)jZnqIZ2A*4gy}y#2c*pqppKmp_0lRW-CJWq^XMT0s_@(O!6Thr}2tabvkub z4@hNDF5uCF)6AMHM-Q}MwjAAQ!C>Y56II1(=xE@?T4UmK^q_P_Vo1nwtGZps(__~i zZKWL{-45l2+;!DbVwTEyLBDotf_9#7>K74}kndJlhK^(2CP+~;aN2i)H4_`Z)~~tj zxBYkh9sAb`10HkF2>km_&l*0h|F|H_?x~jLQ#i}2Pe1Y0tR$3|1}$^`B$;sP{>FYL+6Gem{c|f;2O>OLKDZt2=lusJ1|9IR zYcm{Jl0Kvw=&T;t@E_F1(s@w&f-dmQgOX7C=PW}xYj7_gohM59cYuorxF9p4w;ykvY;lz1-%0O(x)J$+0 zJ59J9+yVaxZgd#G#x$LrQP^j2visapNxIoGsdMv}6`?zF zc@H`J^`*6V%z~Qckb3;)o3hqySp&Y;gw0>pk9SEaIvMb1MuK+0f+es?ByA6@kD9=W$RJoKSUH$imsFetHie|6#gTz&l z-=+J(C3;*|v^LZe<%ONS~Ioe(+02zF!Mqw(`%>dAFm@d;|+H{|i>3iXv`bkg!0D=qs&4vDjFPeUgXBh7Aw%5IkOVf+WP$auHn)e{4(Bi7E*wNWZ19l4hZyXJWzhk1=nf+xH^*bsU1?0y zZPF3D@CZm_Hay@=5e~|AX=#O^g=zwefaFkfrYrGsOAX4AbNr0>9Je1lSYeLGKS&DM zX$_x3+I-8J!j_T|pKI8(e_M)ZGUt;umSIa%rNY9T9+ds5Y=pIZOB5b$t7O|+(g=@D z-aEjY2B37Esxg~*$n9jrxEZ&j;dawMr~^|m_=B2GOQHNFUOw-GCtwUOez1;i@pnG# zi1M0QHvgy@>MwsJA$vaRL(6!=%4Wbacx49to3B_I16;dS%KJd%s!_mDyegW$;vcMf zyn(eAhj9w(>M&Bu^w(j$jx+ASWyz<|4(T@>#%@!e6H306q)Q~Z=BrK8t4-3YtAXgb z)$N=nTBkEu(a!QlYet4Hk}{MU#IS>qq^jNJ>(@L2pKx|fSC=mY#-T%`pYidp^gT~1 z9ZpmD;?k+%ccp}+tQ~F$!4$ej(N6NFpS1T)G_~R)f9(@*_*-RkWQ1l&8wE=wuSlQv z1g&+SwkV%s(sF$E2+c1|`7D^w+uZvZoh-fS^{0@N5={`;m8h{x-}9igQ9(Q9zOoD> z3_7rtH(VR1E%T{{Z`d(8%({yC2F+YMmL_n&b)9j&d3v3WjTy79mF*-DiK|<2W!b-O z5h&+n9*=UwkAhG=j58D+86OP+vE8+8!{g5c-8D^v2i~zg>I^Y zHDql1T`s7>mbo;i^s6n;%0|MrmcX04tz*PCiB}#jM{B5{12HJ#fE;Z+-@mOXh6Hc# z2xfb4Z}Tvn>7X+Lm^?cmCw^?l_=>w4h9Fn>!>;D-Y)60b&vp)@yWF#@F8$4)+;t2I zg*v+%K>adzccy!M_3mWo$;sXQfT#JFrqsV|eLs_+`Z5VBG6|jcOoC7j?P-Cs>fV^> zi6-+pOJLCkNt3{&Vlt_ylS;ep?WEG{e96Aa8puW*s2_U5 z++`S2V>2=rFe1>Zz6aVOfO+>ocZ|Gypbf3#tqwN8_;Cl$VN&6iY7C?deCl#{GjGa08EF-4)I1IsW&NNJzcfchL#E zeQFEcG8ElE4vgVS_Uo)IMOclm^A5wc`qW;eHOG8+7(4g)(N{2g|IrlG>6pA3xQ{(o zp`O4`A8UYkt?KuQNET&$A3>GP%us9V7~#IeaEx+(kh!&GKe$6?nbI(inAvxXAN-*) z`dmL&r&+w#kNZI3&mWV4EAe)d}pxB&o_sHA3Fab zdJ8YeF^zv7SFY?8Q*b+eevGDZcJUQNqEjw@g0kr^b1;72FNk@+p@dK`g%dk_Y9XOG&t|(d8&`Tm3R*!8=}F zh)mCg%Lb6vy0RbjJ6GO8jJf=(8|AjEGGab&)&s6dNbPH}C_7xMow^SfcLnDf7j)ld z-(Ij8dI_PGb*V;NDvOsRAkKK0d2L_mN7tem@`ztv?+{+5-EbMY8$KTa8-|?ZF}JGo zb~hSh)Px&xDBneSl7Dq$3(6Tc^8oqtri8@YYK{89TS>8Hm>5nI<#_zMK$m3_KxQ%J z9+U9}-#=;b_fHxo{X^-^BaXBOD>qo4zx$R4 zResW;*U{$l*?;HLXZ+sZb&$HOb1w$|u*1DHXw}4f;{d;VuMzE=n@TZsbZ$2Sd~PxQ zi#`*$ioQbU#Vj&gPDY#1+QVo(c?EnyZM4RzRK4M3Q`RAtU?Bb+?Ue_l--5Iy4+09c zC1MZWM$rM$)P|QI^Tjb64MVH7pV>O?M=zn(&!0x2@1Q>!&Wlp|P+dj)Ma0;t+T#@f zvdfLoojH-BRJ1?Lu+OaiX;#C0dxiiKHw*2i2`t~p>tei}BHG?Ip^}15+7x+EDmg3p zCTi2Hwr`CH8no#a#5ca!YN<*k!5xT-=6k<&Pz2H2;!*&;R3T+k5J>eaG?BsC3Nem$ zQe8aWa?;Cm!s~I-G!m!n^n}M36)~ixKndqf+bSjLW-{E9%^l)t2W5zlf~W=^_8ttP z!xVW$4l%D;W`H9z+GciJ`%Y}GguOg39@8k@)K|;ZB#2EKwWAAOM+hYo{UXvT<9W~XKH3Kb&bEGAXOo2%Wz9Zqw=L1{SNU7?v>4T`i| zEUt$2Z5RC`sY=Bxx+sdI$Hkf`sM2mxKbi`FXGJs(p>IVaZNQ=OiPG>^Q~=}@$v zP5qHuh8V!5ofrFJ2_8n=jwQUW5dC!sZksr%Q;o7f5|JHgTSbVQ>d-RL%uTJa?n!P+ z4YIHzpBtcPQ^hVfbxQa^YLMcriTti*7d?vc+VaiPGG3N6XA9FMmWanZSo?gD>%ksh z6{|c1t1Q0q&?GFfOB{v!7AbRATgAvY>PWwejd7$)=He*wek&@TJU&jGPLR<45Rb=G zdeC^ONQwpeQ_P8{T>4A=9Z!$p(WC~&(F)P81|_E6ljA&oQvKw8Rfhj818U-@O_gi$ zKwS)S`va_*I%FEftzu&hY5`uTCe^EE$pHqpEL~a2Y2fr~^F_y+kk)+hT1~27_4;B{ z48JSdtCA$ts!@)1&HF=53MN+>2v?hH;>IKN?1PZL3DlBa5pO0?hr(}`ns|PA5Rcqe z`GQEExyjbjeH-9stXyKwhz7~G=bG~0XKhpYh}+f{eJ!~<<=Y}_h~|^yK09NDe#nc9 z+(ha{d&RCqYL17!7S*Hu-t<~fA6g}r*QVr@y$elxE2RTD%&iT#ut7%mXr!UGHQ&VT zw;>Q6rTr@I)u!h{f0aXI-hde^$~vajq0#Nk4hcSG%dt{Cm7LmTxnRYKz>th0o3#+* z^Vdyct1V*ESmEj~3mc?zNwiAB$yz0jBvG-)61cqQY1bqwZK4#Ko8;chKW(mfC7BXk zlgzzh^3r!rtVgC*+ zLqaA=`;33+poK@gl|m!KzO%Gsi@dCSVyVd`k?<(Y&Rp@!qp*rXgw&%sDHEhba2%|q zx?vq;prOe4^)=b$F|V1-SoVgw856|8dNhEzXjq?;=r@6+e0t?F8DNej{qdrtKDEc@ zT<%IqVfPitR<1xIx z4_GVP!`7-#BVfBD=HXG*cbv+tozGPL+=%*C&;jMX4)ksewzrA7jltM9v86Fpr=8+t zW9-IOaZ3V^iMVuZ-WidXPM%g*q}X(Vuk@($VZ-aoV^SQr$0IC7^2x`mzf5W24Mith zYW;)Y2V@uwX_B^097?AeN!!fhg*QzmRQK1mOMu5F$D-xScp-OEWP`1((S%+M{L)h5 zU~P{0unElqzfB$kYe&T^kKr?rt)g*L_}ar_ZBuFseyJJ7(-D!`ib6%>W|UXOXE}6R zlH!n73ic4@>5FD`!BJuvl@8X9ZfZ`!buTU7EKj*p+a&wIIn;TBsTDYk_mzUIVCoz3 zS941DOpycdLJ+u_F~cFv22QUmEU{=Giyj$N%jf^FQux2(3~F7s$f8yQV~ZXz(U2ia zWV0P<>O6;aDB)D!6H-V)`z1A)NrHyV7s&>+eyQkfAVNJWmKhWgTmzn3SA1scu!Oau zDerHSYk_=e_Jfuu%5nkV3ZYM}Kp>uJ5rU1<7E(2byQ=sr4HLga3@%cE8@jY^cx=7#AmDRs=)Wp73zn?sm?SI2Dfz= zd?mF?-0VWV%SGyXNTe=^G`A~F_#fD3FYI$QxvBwAQa4)V{rpLqLfCWTX=)f~ZQ@Fq zvyq=d2>vwfgKA}UGgWJ9H*EJRv9%l3sk=lP49FLjU78VT;I*BSeYe6gWYgv$nHPkG zG3`b5?v&WdLf-}>ESo6%TL&>;+$MA0mYy(Vd!*kq3BVj#W`*I}4CgzoJ0-C_6S)2X zvc%$0cj|*EC*>J@OtxK|dggv$Dn%q%51JiqzK3h=hMlrWrFbyrSk;5VLodF$SsIGQ zVD_(hRy-t*_Q01Z%fyWyIBJ0X$<`=I`_iq{Z0(; z1>bW)Ea*ikG)L^|MeS&Y2Q{ftDMIBY*9bSlExMMctEYUoZJa`Pqq&Pe#XF{5@yz4UQ5~DZ7`vVcJ&k_3vQp?KUo77;1 ziDkfngu!3b$fh>`36AmM;`MAu{d=(kkJ=~YT)17iZp~6dByK7IeY#278KDoNu)wos zpNt9wJ_<{zbVas3_-XnL-^2^pIi=@6|^h*0;c)g$#4b08h2 zof9;eCUyB;_CUj>n{{bF$(BJdZ3s$8I-~1WKhy`uNIPHN58apAqTR6iaSm{xa2Gs0 znCgZcF^8FWkAp|q04Opu2$QdgWQ#0sS>Ebk=~P=o;N z_hFQP3rln^HKoa-S1vsgIa$td=E2{XrxVu~3Gg5q@GivNjDn6z!iwcAi@k5>6K?#| z1%Dpjbxs$_JoHXiXQNk3$eLT^t!lJ)P4{vtTzAZMrx81)AtjGrb#&=&pli zd)H5;PIf95fpc()E*353(AUJh+G{jKt;FR#9rhjElU6KVoeSqQ+q-)%ZS=?3R~NzK z%@unV(Q9b+T}%fM!=^03{hfv^T}r zr3jw3i`7djSPtpZ4=zQT<|ol?88!5|dS<%%mzN=-Fi)&qM$h08vK)7!q&)cJK8!>4uFKi;M5!V9yhQE9hB7X+u^} zHqG;Xvw}PX=+*Zjb@LJCWgn71VBUa_sIq)Uufz$$Gh-DoqWRvIB~*!EnVwor9jjY! zB#`{ntT#}o89UVWL3lH%9rvzZEm8a+_N}2V|Lsti1?{+K@-a@;Zjt*jOyO=Z^yR5VL9q_yRF@6Lr0xFGUv6z**9^i=&$; zC8#|9G-InOo55L$x5;L#rF<23nUckB58471StS;1p-0O?G97&g$&PNJb`K~(?X3v6 z=8Md&h=g{E7q?O`HgBSMsT1uGi??A@=7}xaXka-7`GQ|kXs{iQ@UR%Woz`LYqdTA} z%f*x(rbpefgKkoZ_0aRenDA$?R)AX5m`)ew#>Xkwb!uN`#eQs9ejeD)g`v%FS zPrTwAxEU(-ezuR2RQl9=_8|S?2VosQO50TWLM;CgDZVef>wcv6DsA!FPT})z1ncjg zrk?h#CORha&%g}pXOPg_>izHx{p43^z3hP)9eMyhms&5DUBEK8c*W23g^HCt^&7eA zOEKm*x=QQB;7jzRzqNQ#bctfciAyjcCE~A3@Ojv_%g8W=`h+7z1FXoWYrDmQEBL;A zoww0d>PMck0XA)~B#u|&)=-(IveNJmAisGH@>(O>{7&m>mr$?M^Wf{n>&Vh=7FVys zgzpkPZ_seGzO){VZ&IS;Lko3F(X0nm6-76xW*OaTpymr%cNEJw!idmz$kEOo;#3O^ zK5-L*KwdCt{d|2veX z;+E9xZ+hK&H1}4%N1xgtx!o$eCm%MJ3Y_@1L+^<#HvvlqBNm$IH8$hZ%+Fr4hg zvid&@PiTr`p~rnd}e0Kz9bISq0DQN*yt6FdIWjZwz4>l2(fDi}8+J1KkAsNthjcUVQ3@AoJvs$RJw*c_Uox}7yh5nW$my4x>Qu}9m6c!rJ6 zf!TCtsBGxK(UNpsHFMP96y;IzehwQ-^}M0O*Z^Ygs$zC7tIAZ5n3c<_RrUNw^kQQ! zt5rE}h$n;jXOGR!FBn~4qHG}k%w-vc4gG5}RZ$=QU5xsV-@Mo^spY@PssDfY?M+}T zDb*@2-~3Tc;QgQCh_QJr##!N~IAUoYi}P3QnPor4dHjF-Qye9*ovJ*zJyHOw;wR?h zvy?!8yGkP*fz=^@Q-F%y9>#_QmJ2FC3d$+|%x94uUCv0R_?ZG!{S_r}X#UvYS()<3 zM5OQ2(Q3M@wa{iLkdxd-)g8Lvy1-2S(WI2N~2sDsbb7<7F*>% zupVdac@_1c&6ev*5yiPIiaf$Sg4Lm)y`4v}4=dT`+0|rmw~!UvVhhG4$zSJ0*K|}t z^|{Q^L(_*2uRCIRZf-_Oa=qln0S;Nu9FUtG7%#^z{TFkSQ`{|L;Z$TP!+Lu zJd3GTwQ9v#+0PFxu;zq|E904)MYzS)@yOj>%3{vSjjIJ0WRJ=lnxC1QWMYhzgR1hr zT3}e?s7mF1*13=NO`SP`xk9Ty+#6%{^87#-T* wit::events::EventKind { - use wit::events::EventKind as K; - match k { - EventKind::FileOpened => K::FileOpened, - EventKind::FileSaved => K::FileSaved, - EventKind::EditorFocused => K::EditorFocused, - EventKind::ActionPerformed => K::ActionPerformed, - EventKind::VcsChanged => K::VcsChanged, - EventKind::Scheduled => K::Scheduled, - } - } - pub fn subscribe(k: EventKind) -> Result<(), Error> { - wit::events::subscribe(kind(k)).map_err(error) + wit::events::subscribe(k.name()).map_err(error) } pub fn unsubscribe(k: EventKind) { - wit::events::unsubscribe(kind(k)) + wit::events::unsubscribe(k.name()) } pub fn begin_task(title: &str, cancellable: bool) -> TaskRes { @@ -189,7 +177,7 @@ mod imp { } pub fn publish_diagnostics(path: &str, items: &[Diagnostic]) -> Result<(), Error> { - use wit::diagnostics::{Diagnostic as D, Severity as S}; + use wit::diagnostics::{Diagnostic as D, RelatedInformation as R, Severity as S}; let items: Vec = items .iter() .map(|d| D { @@ -202,6 +190,23 @@ mod imp { }, message: d.message.clone(), code: d.code.clone(), + source: d.source.clone(), + tags: [(d.unnecessary, "unnecessary"), (d.deprecated, "deprecated")] + .into_iter() + .filter(|(on, _)| *on) + .map(|(_, tag)| tag.to_owned()) + .collect(), + related: d + .related + .iter() + .map(|r| R { + location: wit::types::Location { + path: r.location.path.clone(), + range: range_out(r.location.range), + }, + message: r.message.clone(), + }) + .collect(), }) .collect(); wit::diagnostics::publish(path, &items).map_err(error) @@ -264,7 +269,7 @@ mod imp { } pub fn event(e: wit::events::Event) -> Event { - use wit::events::{ActionSource as S, Event as E}; + use wit::events::Event as E; match e { E::FileOpened(p) => Event::FileOpened(p), E::FileSaved(p) => Event::FileSaved(p), @@ -274,16 +279,10 @@ mod imp { E::ActionPerformed(a) => Event::ActionPerformed(ActionPerformed { action: a.action, title: a.title, - source: match a.source { - S::Keyboard => ActionSource::Keyboard, - S::Menu => ActionSource::Menu, - S::Toolbar => ActionSource::Toolbar, - S::ContextMenu => ActionSource::ContextMenu, - S::Search => ActionSource::Search, - S::Other => ActionSource::Other, - }, + source: ActionSource::parse(&a.source), shortcut: a.shortcut, }), + E::Other(x) => Event::Other { kind: x.kind, data: x.data }, } } } diff --git a/sdk/rust/openidea-plugin/src/lib.rs b/sdk/rust/openidea-plugin/src/lib.rs index f59d728c..57aebe86 100644 --- a/sdk/rust/openidea-plugin/src/lib.rs +++ b/sdk/rust/openidea-plugin/src/lib.rs @@ -255,6 +255,16 @@ macro_rules! __providers_exports { $crate::__rt::code_actions::<$plugin>(doc, selection) } + fn resolve_code_action( + doc: $crate::providers_bindings::exports::openidea::plugin::providers::Document, + action: $crate::providers_bindings::exports::openidea::plugin::providers::CodeAction, + ) -> ::core::result::Result< + $crate::providers_bindings::exports::openidea::plugin::providers::CodeAction, + $crate::bindings::openidea::plugin::types::Error, + > { + $crate::__rt::resolve_code_action::<$plugin>(doc, action) + } + fn definition( doc: $crate::providers_bindings::exports::openidea::plugin::providers::Document, at: $crate::bindings::openidea::plugin::types::Position, @@ -420,9 +430,12 @@ pub mod __rt { detail: i.detail, kind: i.kind.map(|k| k.as_str().to_owned()), insert_text: i.insert_text, + snippet: i.snippet, replace: i.replace.map(crate::host::__range_to), sort_text: i.sort_text, + filter_text: i.filter_text, documentation: i.documentation, + additional_edits: i.additional_edits.into_iter().map(edit_out).collect(), }) .collect() } @@ -443,25 +456,54 @@ pub mod __rt { sel: b::types::Range, ) -> Vec { let d = doc(d); - with::(|x| x.code_actions(&d, crate::host::__range_from(sel))) - .into_iter() - .map(|a| w::CodeAction { - title: a.title, - kind: a.kind, - preferred: a.preferred, - edits: a - .edits - .into_iter() - .map(|(path, edits)| w::FileEdit { - path, - edits: edits - .into_iter() - .map(|e| b::types::TextEdit { range: crate::host::__range_to(e.range), text: e.text }) - .collect(), - }) - .collect(), - }) - .collect() + with::(|x| x.code_actions(&d, crate::host::__range_from(sel))).into_iter().map(action_out).collect() + } + + pub fn resolve_code_action( + d: w::Document, + action: w::CodeAction, + ) -> Result { + let d = doc(d); + with::(|x| x.resolve_code_action(&d, action_in(action))).map(action_out).map_err(error_out) + } + + fn edit_out(e: crate::TextEdit) -> b::types::TextEdit { + b::types::TextEdit { range: crate::host::__range_to(e.range), text: e.text } + } + + fn action_out(a: p::CodeAction) -> w::CodeAction { + w::CodeAction { + title: a.title, + kind: a.kind, + preferred: a.preferred, + edits: a + .edits + .into_iter() + .map(|(path, edits)| w::FileEdit { path, edits: edits.into_iter().map(edit_out).collect() }) + .collect(), + data: a.data, + } + } + + fn action_in(a: w::CodeAction) -> p::CodeAction { + p::CodeAction { + title: a.title, + kind: a.kind, + preferred: a.preferred, + edits: a + .edits + .into_iter() + .map(|f| { + let edits = f + .edits + .into_iter() + .map(|e| crate::TextEdit { range: crate::host::__range_from(e.range), text: e.text }) + .collect(); + (f.path, edits) + }) + .collect(), + data: a.data, + } } pub fn definition( @@ -531,6 +573,9 @@ pub mod __rt { v::FieldValue::Multiline(t) => vt::FieldValue::Multiline(t), v::FieldValue::Checkbox(c) => vt::FieldValue::Checkbox(c), v::FieldValue::Choice(o, s) => vt::FieldValue::Choice((o, s)), + v::FieldValue::Other { kind, data } => { + vt::FieldValue::Other(b::types::Extension { kind, data }) + } }, }) .collect(), @@ -543,6 +588,7 @@ pub mod __rt { editable: t.editable, }), v::Body::Html(h) => vt::Body::Html(h), + v::Body::Other { kind, data } => vt::Body::Other(b::types::Extension { kind, data }), }; vt::View { toolbar: view @@ -582,6 +628,7 @@ pub mod __rt { vt::ViewEvent::InsertRow(r) => v::ViewEvent::InsertRow(r), vt::ViewEvent::DeleteRows(r) => v::ViewEvent::DeleteRows(r), vt::ViewEvent::Message(m) => v::ViewEvent::Message(m), + vt::ViewEvent::Other(x) => v::ViewEvent::Other { kind: x.kind, data: x.data }, }; with::(|p| p.handle(&view, event, &ctx)).map_err(error_out) } diff --git a/sdk/rust/openidea-plugin/src/mock.rs b/sdk/rust/openidea-plugin/src/mock.rs index 33ce121d..66f38eb7 100644 --- a/sdk/rust/openidea-plugin/src/mock.rs +++ b/sdk/rust/openidea-plugin/src/mock.rs @@ -722,11 +722,8 @@ mod tests { let out = mock.invocation().project().unwrap().run_process("java", &["-version".into()], None).unwrap(); assert_eq!(out.stdout, "-version"); assert_eq!(mock.process_runs()[0].cwd.as_deref(), Some("/project")); - host::publish_diagnostics( - "/project/a.java", - &[Diagnostic { range: Range::default(), severity: Severity::Warning, message: "m".into(), code: None }], - ) - .unwrap(); + host::publish_diagnostics("/project/a.java", &[Diagnostic::new(Range::default(), Severity::Warning, "m")]) + .unwrap(); assert_eq!(mock.diagnostics()["/project/a.java"].len(), 1); } } diff --git a/sdk/rust/openidea-plugin/src/providers.rs b/sdk/rust/openidea-plugin/src/providers.rs index c10f75cf..2cf80850 100644 --- a/sdk/rust/openidea-plugin/src/providers.rs +++ b/sdk/rust/openidea-plugin/src/providers.rs @@ -92,12 +92,18 @@ pub struct CompletionItem { pub label: String, pub detail: Option, pub kind: Option, + /// With `snippet`, tab stops and placeholders (`$1`, `${1:name}`, `$0`). pub insert_text: String, + pub snippet: bool, /// Replaced on accept; `None`: the word at the caret. pub replace: Option, pub sort_text: Option, + /// Matched against what was typed instead of `label`. + pub filter_text: Option, /// Markdown. pub documentation: Option, + /// Applied with the item elsewhere in the document (an import). + pub additional_edits: Vec, } impl CompletionItem { @@ -107,9 +113,12 @@ impl CompletionItem { detail: None, kind: Some(kind), insert_text: label.into(), + snippet: false, replace: None, sort_text: None, + filter_text: None, documentation: None, + additional_edits: Vec::new(), } } } @@ -129,6 +138,9 @@ pub struct CodeAction { pub preferred: bool, /// (absolute path, edits) per file. pub edits: Vec<(String, Vec)>, + /// The plugin's own reference: with it and no `edits`, the edits come + /// from [`Providers::resolve_code_action`] once the user picks the action. + pub data: Option, } #[derive(Clone, Debug, PartialEq, Eq)] @@ -157,6 +169,12 @@ pub trait Providers { Vec::new() } + /// The edits of an action [`Providers::code_actions`] returned with + /// `data`, when the user picks it (the command budget applies, not 50 ms). + fn resolve_code_action(&mut self, _doc: &Document, action: CodeAction) -> Result { + Ok(action) + } + fn definition(&mut self, _doc: &Document, _at: Position) -> Vec { Vec::new() } diff --git a/sdk/rust/openidea-plugin/src/types.rs b/sdk/rust/openidea-plugin/src/types.rs index 5a74f67d..6a6fbd7a 100644 --- a/sdk/rust/openidea-plugin/src/types.rs +++ b/sdk/rust/openidea-plugin/src/types.rs @@ -143,7 +143,9 @@ pub struct StatusItem { pub command: Option, } +/// Kinds of workbench events; later SDKs add more. #[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] +#[non_exhaustive] pub enum EventKind { FileOpened, FileSaved, @@ -154,17 +156,46 @@ pub enum EventKind { Scheduled, } -/// How the user started an action. +impl EventKind { + /// The name the IDE knows it by. + pub fn name(self) -> &'static str { + match self { + Self::FileOpened => "file-opened", + Self::FileSaved => "file-saved", + Self::EditorFocused => "editor-focused", + Self::ActionPerformed => "action-performed", + Self::VcsChanged => "vcs-changed", + Self::Scheduled => "scheduled", + } + } +} + +/// How the user started an action; later IDEs may report more. #[derive(Clone, Copy, Debug, PartialEq, Eq)] +#[non_exhaustive] pub enum ActionSource { Keyboard, Menu, Toolbar, ContextMenu, Search, + /// Anything else, including sources this SDK doesn't know. Other, } +impl ActionSource { + pub fn parse(name: &str) -> Self { + match name { + "keyboard" => Self::Keyboard, + "menu" => Self::Menu, + "toolbar" => Self::Toolbar, + "context-menu" => Self::ContextMenu, + "search" => Self::Search, + _ => Self::Other, + } + } +} + #[derive(Clone, Debug, PartialEq, Eq)] pub struct ActionPerformed { /// Action id (`editor.duplicate-line`). @@ -177,6 +208,7 @@ pub struct ActionPerformed { /// A workbench event (see [`crate::host::subscribe`]). #[derive(Clone, Debug, PartialEq, Eq)] +#[non_exhaustive] pub enum Event { FileOpened(String), FileSaved(String), @@ -186,6 +218,11 @@ pub enum Event { VcsChanged(String), /// The `on-schedule` period elapsed. Scheduled, + /// A kind this SDK doesn't know: its name and JSON data. + Other { + kind: String, + data: String, + }, } /// The repository containing a project. @@ -227,6 +264,41 @@ pub struct Diagnostic { pub message: String, /// Rule or check id. pub code: Option, + /// The tool that found it, when not the plugin itself. + pub source: Option, + /// Code that does nothing (shown faded). + pub unnecessary: bool, + /// Use of something deprecated (struck through). + pub deprecated: bool, + /// Other places that explain it. + pub related: Vec, +} + +impl Diagnostic { + pub fn new(range: Range, severity: Severity, message: impl Into) -> Self { + Self { + range, + severity, + message: message.into(), + code: None, + source: None, + unnecessary: false, + deprecated: false, + related: Vec::new(), + } + } + + pub fn code(mut self, code: impl Into) -> Self { + self.code = Some(code.into()); + self + } +} + +/// Another place that explains a diagnostic. +#[derive(Clone, Debug, PartialEq, Eq)] +pub struct RelatedInformation { + pub location: Location, + pub message: String, } /// An HTTP request (see [`crate::host::fetch`]). @@ -276,3 +348,17 @@ pub struct ProcessOutput { pub stdout: String, pub stderr: String, } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn names_the_ide_uses() { + assert_eq!(EventKind::ActionPerformed.name(), "action-performed"); + assert_eq!(ActionSource::parse("context-menu"), ActionSource::ContextMenu); + assert_eq!(ActionSource::parse("pen"), ActionSource::Other, "a source of a newer IDE"); + let d = Diagnostic::new(Range::default(), Severity::Hint, "m").code("c"); + assert_eq!((d.code.as_deref(), d.unnecessary, d.related.len()), (Some("c"), false, 0)); + } +} diff --git a/sdk/rust/openidea-plugin/src/views.rs b/sdk/rust/openidea-plugin/src/views.rs index 3da8e506..b8a693d5 100644 --- a/sdk/rust/openidea-plugin/src/views.rs +++ b/sdk/rust/openidea-plugin/src/views.rs @@ -110,12 +110,19 @@ impl ListItem { } #[derive(Clone, Debug, PartialEq, Eq)] +#[non_exhaustive] pub enum FieldValue { Text(String), Multiline(String), Checkbox(bool), /// Options and the chosen one. Choice(Vec, String), + /// A field type of a newer plugin API: its kind and JSON data (IDEs that + /// don't know it leave the field out). + Other { + kind: String, + data: String, + }, } #[derive(Clone, Debug, PartialEq, Eq)] @@ -142,6 +149,7 @@ pub struct Table { } #[derive(Clone, Debug, PartialEq, Eq)] +#[non_exhaustive] pub enum Body { Message(String), Tree(Vec), @@ -151,6 +159,12 @@ pub enum Body { /// Shown in a sandboxed frame; its script talks to the plugin with /// `openidea.postMessage(text)` and `openidea.onMessage(fn)`. Html(String), + /// A body of a newer plugin API: its kind and JSON data (IDEs that don't + /// know it say they need updating). + Other { + kind: String, + data: String, + }, } #[derive(Clone, Debug, PartialEq, Eq)] @@ -197,6 +211,7 @@ impl Viewport { } #[derive(Clone, Debug, PartialEq, Eq)] +#[non_exhaustive] pub enum ViewEvent { Button(String), Activate(String), @@ -213,6 +228,11 @@ pub enum ViewEvent { InsertRow(u32), DeleteRows(Vec), Message(String), + /// An event this SDK doesn't know: its kind and JSON data. + Other { + kind: String, + data: String, + }, } /// Content of the plugin's declared views and custom editors. diff --git a/sdk/rust/openidea-plugin/wit/events.wit b/sdk/rust/openidea-plugin/wit/events.wit index 8470c298..2d118d81 100644 --- a/sdk/rust/openidea-plugin/wit/events.wit +++ b/sdk/rust/openidea-plugin/wit/events.wit @@ -2,36 +2,15 @@ package openidea:plugin@1.0.0; /// Workbench events, delivered in batches to `event-handler.handle`. interface events { - use types.{error}; - - enum event-kind { - file-opened, - file-saved, - /// The focused editor changed. - editor-focused, - /// An IDE action ran. Requires `events.input`. - action-performed, - /// A repository's state changed (commit, checkout, fetch, …). - vcs-changed, - /// The plugin's `on-schedule` period elapsed. - scheduled, - } - - /// How the user started an action. - enum action-source { - keyboard, - menu, - toolbar, - context-menu, - search, - other, - } + use types.{error, extension}; record action-performed { /// Action id (`editor.duplicate-line`). action: string, title: string, - source: action-source, + /// How the user started it: `keyboard`, `menu`, `toolbar`, + /// `context-menu`, `search` or `other` (more may be added). + source: string, /// Its keyboard shortcut, when it has one (`Ctrl+D`). shortcut: option, } @@ -43,14 +22,21 @@ interface events { action-performed(action-performed), vcs-changed(string), scheduled, + /// A kind added after 1.0 (subscribed to by its name). + other(extension), } /// Delivers `kind` events from now on, for the rest of the session (also /// across idle reclaim: an event activates the plugin again). Declare /// `activation = ["on-event:"]` to get them before first use. + /// Kinds: `file-opened`, `file-saved`, `editor-focused` (the focused editor + /// changed), `vcs-changed` (a repository's state changed: commit, + /// checkout, fetch…), `action-performed` (an IDE action ran) and + /// `scheduled` (the `on-schedule` period elapsed); later IDEs add more, + /// and an IDE that doesn't know one fails with `invalid`. /// Requires `events` (`events.input` for `action-performed`). - subscribe: func(kind: event-kind) -> result<_, error>; - unsubscribe: func(kind: event-kind); + subscribe: func(kind: string) -> result<_, error>; + unsubscribe: func(kind: string); } /// Long-running work with a progress indicator. While a task is open, the diff --git a/sdk/rust/openidea-plugin/wit/io.wit b/sdk/rust/openidea-plugin/wit/io.wit index a1aeb849..f1fe634a 100644 --- a/sdk/rust/openidea-plugin/wit/io.wit +++ b/sdk/rust/openidea-plugin/wit/io.wit @@ -2,7 +2,7 @@ package openidea:plugin@1.0.0; /// Problems in files, shown in the editor and the Problems view. interface diagnostics { - use types.{error, range}; + use types.{error, range, location}; enum severity { error, @@ -11,12 +11,23 @@ interface diagnostics { hint, } + /// Another place that explains a diagnostic (the earlier declaration, say). + record related-information { + location: location, + message: string, + } + record diagnostic { range: range, severity: severity, message: string, /// Rule or check id (`LineLength`). code: option, + /// The tool that found it, when not the plugin itself (`checkstyle`). + source: option, + /// `unnecessary` (shown faded) and `deprecated` (struck through); unknown ones are ignored. + tags: list, + related: list, } /// Replaces the plugin's diagnostics for the file at `path` (absolute, in diff --git a/sdk/rust/openidea-plugin/wit/providers.wit b/sdk/rust/openidea-plugin/wit/providers.wit index cfca6560..97dd4c7a 100644 --- a/sdk/rust/openidea-plugin/wit/providers.wit +++ b/sdk/rust/openidea-plugin/wit/providers.wit @@ -5,7 +5,7 @@ package openidea:plugin@1.0.0; /// on the editing path: a result later than ~50 ms is dropped, a call still /// running at 500 ms is interrupted. interface providers { - use types.{position, range, text-edit, location}; + use types.{error, position, range, text-edit, location}; /// The document a request is about. record document { @@ -24,11 +24,17 @@ interface providers { /// constant, struct, event, operator or type-parameter. Unknown kinds /// show no icon. kind: option, + /// With `snippet`, tab stops and placeholders (`$1`, `${1:name}`, `$0`). insert-text: string, + snippet: bool, /// Replaced on accept; `none`: the word at the caret. replace: option, sort-text: option, + /// Matched against what was typed instead of `label`. + filter-text: option, documentation: option, + /// Applied with the item elsewhere in the document (an import). + additional-edits: list, } record inline-suggestion { @@ -48,6 +54,9 @@ interface providers { kind: option, preferred: bool, edits: list, + /// The plugin's own reference: with it and no `edits`, the edits are + /// computed by `resolve-code-action` once the user picks the action. + data: option, } record line-marker { @@ -64,6 +73,9 @@ interface providers { inline-completion: func(doc: document, at: position) -> option; /// Actions for `selection` (quick fixes for the plugin's own diagnostics). code-actions: func(doc: document, selection: range) -> list; + /// The edits of an action `code-actions` returned with `data`, when the + /// user picks it (the command budget applies, not the editor's 50 ms). + resolve-code-action: func(doc: document, action: code-action) -> result; definition: func(doc: document, at: position) -> list; line-markers: func(doc: document) -> list; } diff --git a/sdk/rust/openidea-plugin/wit/types.wit b/sdk/rust/openidea-plugin/wit/types.wit index 5c4f237e..2e2b48f7 100644 --- a/sdk/rust/openidea-plugin/wit/types.wit +++ b/sdk/rust/openidea-plugin/wit/types.wit @@ -52,6 +52,15 @@ interface types { range: range, } + /// A case added after 1.0, carried by the `other` case of a variant that + /// grows (events, view bodies, view events, form fields): its kind and its + /// data as JSON. Whoever doesn't know the kind ignores it or shows a + /// fallback; the SDKs decode the kinds they know. + record extension { + kind: string, + data: string, + } + /// Passed to `lifecycle.activate`. record context { plugin-id: string, diff --git a/sdk/rust/openidea-plugin/wit/views.wit b/sdk/rust/openidea-plugin/wit/views.wit index de1ae780..dcc806dc 100644 --- a/sdk/rust/openidea-plugin/wit/views.wit +++ b/sdk/rust/openidea-plugin/wit/views.wit @@ -8,6 +8,8 @@ package openidea:plugin@1.0.0; /// runs in the WebView, except a `html` body, which is shown in a sandboxed /// frame that can only exchange messages with the plugin. interface view-types { + use types.{extension}; + record button { id: string, label: string, @@ -43,6 +45,8 @@ interface view-types { checkbox(bool), /// The options and the chosen one. choice(tuple, string>), + /// A field type added after 1.0 (an IDE that doesn't know it leaves it out). + other(extension), } record field { @@ -72,6 +76,8 @@ interface view-types { /// network, no IDE API. Its script talks to the plugin with /// `openidea.postMessage(text)` / `openidea.onMessage(fn)`. html(string), + /// A body added after 1.0; an IDE that doesn't know it says it needs updating. + other(extension), } record view { @@ -109,6 +115,8 @@ interface view-types { delete-rows(list), /// From the `html` body's script. message(string), + /// An event added after 1.0, from a body or field added after 1.0. + other(extension), } } diff --git a/wit/events.wit b/wit/events.wit index 8470c298..2d118d81 100644 --- a/wit/events.wit +++ b/wit/events.wit @@ -2,36 +2,15 @@ package openidea:plugin@1.0.0; /// Workbench events, delivered in batches to `event-handler.handle`. interface events { - use types.{error}; - - enum event-kind { - file-opened, - file-saved, - /// The focused editor changed. - editor-focused, - /// An IDE action ran. Requires `events.input`. - action-performed, - /// A repository's state changed (commit, checkout, fetch, …). - vcs-changed, - /// The plugin's `on-schedule` period elapsed. - scheduled, - } - - /// How the user started an action. - enum action-source { - keyboard, - menu, - toolbar, - context-menu, - search, - other, - } + use types.{error, extension}; record action-performed { /// Action id (`editor.duplicate-line`). action: string, title: string, - source: action-source, + /// How the user started it: `keyboard`, `menu`, `toolbar`, + /// `context-menu`, `search` or `other` (more may be added). + source: string, /// Its keyboard shortcut, when it has one (`Ctrl+D`). shortcut: option, } @@ -43,14 +22,21 @@ interface events { action-performed(action-performed), vcs-changed(string), scheduled, + /// A kind added after 1.0 (subscribed to by its name). + other(extension), } /// Delivers `kind` events from now on, for the rest of the session (also /// across idle reclaim: an event activates the plugin again). Declare /// `activation = ["on-event:"]` to get them before first use. + /// Kinds: `file-opened`, `file-saved`, `editor-focused` (the focused editor + /// changed), `vcs-changed` (a repository's state changed: commit, + /// checkout, fetch…), `action-performed` (an IDE action ran) and + /// `scheduled` (the `on-schedule` period elapsed); later IDEs add more, + /// and an IDE that doesn't know one fails with `invalid`. /// Requires `events` (`events.input` for `action-performed`). - subscribe: func(kind: event-kind) -> result<_, error>; - unsubscribe: func(kind: event-kind); + subscribe: func(kind: string) -> result<_, error>; + unsubscribe: func(kind: string); } /// Long-running work with a progress indicator. While a task is open, the diff --git a/wit/io.wit b/wit/io.wit index a1aeb849..f1fe634a 100644 --- a/wit/io.wit +++ b/wit/io.wit @@ -2,7 +2,7 @@ package openidea:plugin@1.0.0; /// Problems in files, shown in the editor and the Problems view. interface diagnostics { - use types.{error, range}; + use types.{error, range, location}; enum severity { error, @@ -11,12 +11,23 @@ interface diagnostics { hint, } + /// Another place that explains a diagnostic (the earlier declaration, say). + record related-information { + location: location, + message: string, + } + record diagnostic { range: range, severity: severity, message: string, /// Rule or check id (`LineLength`). code: option, + /// The tool that found it, when not the plugin itself (`checkstyle`). + source: option, + /// `unnecessary` (shown faded) and `deprecated` (struck through); unknown ones are ignored. + tags: list, + related: list, } /// Replaces the plugin's diagnostics for the file at `path` (absolute, in diff --git a/wit/providers.wit b/wit/providers.wit index cfca6560..97dd4c7a 100644 --- a/wit/providers.wit +++ b/wit/providers.wit @@ -5,7 +5,7 @@ package openidea:plugin@1.0.0; /// on the editing path: a result later than ~50 ms is dropped, a call still /// running at 500 ms is interrupted. interface providers { - use types.{position, range, text-edit, location}; + use types.{error, position, range, text-edit, location}; /// The document a request is about. record document { @@ -24,11 +24,17 @@ interface providers { /// constant, struct, event, operator or type-parameter. Unknown kinds /// show no icon. kind: option, + /// With `snippet`, tab stops and placeholders (`$1`, `${1:name}`, `$0`). insert-text: string, + snippet: bool, /// Replaced on accept; `none`: the word at the caret. replace: option, sort-text: option, + /// Matched against what was typed instead of `label`. + filter-text: option, documentation: option, + /// Applied with the item elsewhere in the document (an import). + additional-edits: list, } record inline-suggestion { @@ -48,6 +54,9 @@ interface providers { kind: option, preferred: bool, edits: list, + /// The plugin's own reference: with it and no `edits`, the edits are + /// computed by `resolve-code-action` once the user picks the action. + data: option, } record line-marker { @@ -64,6 +73,9 @@ interface providers { inline-completion: func(doc: document, at: position) -> option; /// Actions for `selection` (quick fixes for the plugin's own diagnostics). code-actions: func(doc: document, selection: range) -> list; + /// The edits of an action `code-actions` returned with `data`, when the + /// user picks it (the command budget applies, not the editor's 50 ms). + resolve-code-action: func(doc: document, action: code-action) -> result; definition: func(doc: document, at: position) -> list; line-markers: func(doc: document) -> list; } diff --git a/wit/types.wit b/wit/types.wit index 5c4f237e..2e2b48f7 100644 --- a/wit/types.wit +++ b/wit/types.wit @@ -52,6 +52,15 @@ interface types { range: range, } + /// A case added after 1.0, carried by the `other` case of a variant that + /// grows (events, view bodies, view events, form fields): its kind and its + /// data as JSON. Whoever doesn't know the kind ignores it or shows a + /// fallback; the SDKs decode the kinds they know. + record extension { + kind: string, + data: string, + } + /// Passed to `lifecycle.activate`. record context { plugin-id: string, diff --git a/wit/views.wit b/wit/views.wit index de1ae780..dcc806dc 100644 --- a/wit/views.wit +++ b/wit/views.wit @@ -8,6 +8,8 @@ package openidea:plugin@1.0.0; /// runs in the WebView, except a `html` body, which is shown in a sandboxed /// frame that can only exchange messages with the plugin. interface view-types { + use types.{extension}; + record button { id: string, label: string, @@ -43,6 +45,8 @@ interface view-types { checkbox(bool), /// The options and the chosen one. choice(tuple, string>), + /// A field type added after 1.0 (an IDE that doesn't know it leaves it out). + other(extension), } record field { @@ -72,6 +76,8 @@ interface view-types { /// network, no IDE API. Its script talks to the plugin with /// `openidea.postMessage(text)` / `openidea.onMessage(fn)`. html(string), + /// A body added after 1.0; an IDE that doesn't know it says it needs updating. + other(extension), } record view { @@ -109,6 +115,8 @@ interface view-types { delete-rows(list), /// From the `html` body's script. message(string), + /// An event added after 1.0, from a body or field added after 1.0. + other(extension), } }