tauri-apps/tauri · error
not implemented
Error message
not implemented
What it means
In Tauri's run-event translation, RuntimeRunEvent variants are converted to RunEvent for plugins and listeners. Known variants are matched explicitly; any unknown runtime event reaches `unimplemented!()`. New runtime events added by tao/wry before tauri maps them trigger this panic.
Solutions
- Upgrade tauri to a version that maps the new RuntimeRunEvent variant
- Lock tao/wry to versions known to work with your tauri release (cargo update -p tao --precise ...)
- Remove custom runtime event injection if you're emitting events the translator doesn't know
Example fix
// before tao = "0.30" // after (align with tauri's supported tao) tao = "=0.28.1"
Defensive patterns
Strategy: fallback
Validate before calling
// check versions: cargo tree -p tao -p wry | grep tao — must match tauri's expected range
Try / catch
std::panic::set_hook(Box::new(|info| log::error!("run-event translation panicked: {info}"))); Prevention
- Pin tao/wry to the versions tauri's Cargo.toml declares
- Read tauri release notes for new RunEvent variants before upgrading deps
- Add a panic hook so event-loop panics are logged, not lost
When it happens
Trigger: A new RuntimeRunEvent variant arrives during app.run() that the translation match (e.g. SceneRequested, ExitRequested, etc.) doesn't cover — typically after a dependency update.
Common situations: iOS/macOS lifecycle events from a newer tao version; mixing mismatched tao and tauri versions in Cargo.lock; custom runtime event types forwarded to the loop.
Related errors
- not implemented
- not implemented
- not implemented
- Cargo manifest must have the `package.version` field
- Cargo project does not have a version
AI-assisted analysis of tauri-apps/tauri@460ec35447 (2026-09-18).
Data as JSON: /api/errors/d2be0e28c5779a84.
Report an issue: GitHub.
Appendix: source
Thrown at crates/tauri/src/app.rs:2696
}
}
#[allow(unreachable_code)]
t.into()
}
#[cfg(any(target_os = "macos", target_os = "ios", target_os = "android"))]
RuntimeRunEvent::Opened { urls } => RunEvent::Opened { urls },
#[cfg(target_os = "macos")]
RuntimeRunEvent::Reopen {
has_visible_windows,
} => RunEvent::Reopen {
has_visible_windows,
},
#[cfg(target_os = "ios")]
RuntimeRunEvent::SceneRequested { scene, options } => {
RunEvent::SceneRequested { scene, options }
}
_ => unimplemented!(),
};
manager
.plugins
.lock()
.expect("poisoned plugin store")
.on_event(app_handle, &event);
event
}
#[cfg(test)]
mod tests {
#[test]
fn is_send_sync() {
crate::test_utils::assert_send::<super::AppHandle>();
crate::test_utils::assert_sync::<super::AppHandle>();
View on GitHub (pinned to 460ec35447)