diff --git a/src-tauri/tauri.release.conf.json b/src-tauri/tauri.release.conf.json index 7aa3d5ba..a56a9cb1 100644 --- a/src-tauri/tauri.release.conf.json +++ b/src-tauri/tauri.release.conf.json @@ -30,7 +30,7 @@ } }, "bundle": { - "createUpdaterArtifacts": "v1Compatible", + "createUpdaterArtifacts": true, "windows": { "signCommand": "trusted-signing-cli -e https://eus.codesigning.azure.net/ -a Yaak -c yaakapp %1" } diff --git a/src-tauri/yaak-plugins/src/manager.rs b/src-tauri/yaak-plugins/src/manager.rs index c6ba05f9..34abd2a6 100644 --- a/src-tauri/yaak-plugins/src/manager.rs +++ b/src-tauri/yaak-plugins/src/manager.rs @@ -503,10 +503,22 @@ impl PluginManager { .iter() .find(|r| r.functions.iter().any(|f| f.name == fn_name)) .ok_or_else(|| PluginNotFoundErr(fn_name.into()))?; - let plugin = self - .get_plugin_by_ref_id(&r.plugin_ref_id) - .await - .ok_or_else(|| PluginNotFoundErr(r.plugin_ref_id.clone()))?; + + let plugin = match self.get_plugin_by_ref_id(&r.plugin_ref_id).await { + None => { + // It's probably a native function, so just fallback to the summary + let function = r + .functions + .iter() + .find(|f| f.name == fn_name) + .ok_or_else(|| PluginNotFoundErr(fn_name.into()))?; + return Ok(GetTemplateFunctionConfigResponse { + function: function.clone(), + plugin_ref_id: r.plugin_ref_id.clone(), + }); + } + Some(v) => v, + }; let window_context = &PluginWindowContext::new(&window); let vars = &make_vars_hashmap(environment_chain); diff --git a/src-tauri/yaak-plugins/src/native_template_functions.rs b/src-tauri/yaak-plugins/src/native_template_functions.rs index 1ad93f8e..94cbd41f 100644 --- a/src-tauri/yaak-plugins/src/native_template_functions.rs +++ b/src-tauri/yaak-plugins/src/native_template_functions.rs @@ -78,6 +78,10 @@ pub fn template_function_secure_run( _ => return Ok("".to_string()), }; + if value.is_empty() { + return Ok("".to_string()); + } + let value = match value.strip_prefix("YENC_") { None => { return Err(RenderError("Could not decrypt non-encrypted value".to_string()));