[PR #424] [MERGED] Gracefully handle plugin init failures #346

Closed
opened 2026-03-22 21:18:47 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/mountain-loop/yaak/pull/424
Author: @gschier
Created: 3/11/2026
Status: Merged
Merged: 3/11/2026
Merged by: @gschier

Base: mainHead: fix/plugin-init-no-crash


📝 Commits (1)

  • 99ebd04 Gracefully handle plugin init failures instead of crashing

📊 Changes

5 files changed (+59 additions, -11 deletions)

View changed files

📝 crates-tauri/yaak-app/src/lib.rs (+4 -4)
📝 crates-tauri/yaak-app/src/plugins_ext.rs (+8 -1)
📝 crates/yaak-plugins/src/manager.rs (+13 -6)
📝 src-web/lib/initGlobalListeners.tsx (+33 -0)
📝 src-web/lib/tauri.ts (+1 -0)

📄 Description

Summary

  • Store individual plugin init errors on PluginManager instead of crashing the app when a plugin fails to load (e.g. missing directory)
  • Add cmd_plugin_init_errors command so the frontend can query errors once the window is ready
  • Show persistent warning toasts for each failed plugin with a "View Plugins" button
  • cmd_reload_plugins now returns errors instead of silently discarding them

Test plan

  • Install a plugin from a filesystem directory, then delete that directory and restart the app — should show a warning toast instead of crashing
  • Verify bundled plugins still load normally
  • Click "View Plugins" on the toast and confirm it opens plugin settings

🤖 Generated with Claude Code


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/mountain-loop/yaak/pull/424 **Author:** [@gschier](https://github.com/gschier) **Created:** 3/11/2026 **Status:** ✅ Merged **Merged:** 3/11/2026 **Merged by:** [@gschier](https://github.com/gschier) **Base:** `main` ← **Head:** `fix/plugin-init-no-crash` --- ### 📝 Commits (1) - [`99ebd04`](https://github.com/mountain-loop/yaak/commit/99ebd04eb319d21a128979353aab2f80e089dfe4) Gracefully handle plugin init failures instead of crashing ### 📊 Changes **5 files changed** (+59 additions, -11 deletions) <details> <summary>View changed files</summary> 📝 `crates-tauri/yaak-app/src/lib.rs` (+4 -4) 📝 `crates-tauri/yaak-app/src/plugins_ext.rs` (+8 -1) 📝 `crates/yaak-plugins/src/manager.rs` (+13 -6) 📝 `src-web/lib/initGlobalListeners.tsx` (+33 -0) 📝 `src-web/lib/tauri.ts` (+1 -0) </details> ### 📄 Description ## Summary - Store individual plugin init errors on `PluginManager` instead of crashing the app when a plugin fails to load (e.g. missing directory) - Add `cmd_plugin_init_errors` command so the frontend can query errors once the window is ready - Show persistent warning toasts for each failed plugin with a "View Plugins" button - `cmd_reload_plugins` now returns errors instead of silently discarding them ## Test plan - [x] Install a plugin from a filesystem directory, then delete that directory and restart the app — should show a warning toast instead of crashing - [x] Verify bundled plugins still load normally - [x] Click "View Plugins" on the toast and confirm it opens plugin settings 🤖 Generated with [Claude Code](https://claude.com/claude-code) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-03-22 21:18:47 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/yaak#346