# Tauri runtime v3.0.0-alpha.5 removes duplicate event listeners in breaking API cleanup

> **Key takeaway:** The tauri-runtime v3.0.0-alpha.5 release eliminates redundant per-window and per-webview event listener registries, consolidating all event delivery through RunEvent streams.

**Published:** 2026-11-06T11:54:02+00:00 
**Source:** Tauri Rust Desktop &amp; Mobile App Framework 
**Category:** software-engineering 
**Canonical URL:** https://fosswire.org/news/tauri-runtime-v300-alpha5-removes-duplicate-event-listeners-.html 

## Summary
The Tauri project has published tauri-runtime v3.0.0-alpha.5, a core crate in its upcoming v3 major release that underpins the Rust-based cross-platform desktop and mobile app framework. This alpha introduces a breaking change that removes the WindowDispatch::on_window_event and WebviewDispatch::on_webview_event methods, along with their associated WindowEventId and WebviewEventId types. The change eliminates duplicate event handling infrastructure because runtimes already propagate all window and webview events through the RunEvent::WindowEvent and RunEvent::WebviewEvent channels.

Developers maintaining custom Tauri runtimes will need to migrate away from the removed listener registries and rely solely on emitting the corresponding RunEvent variants. The release also reflects ongoing maintenance practices including automated cargo-audit scanning, which flagged ten allowed warnings across the dependency tree including unmaintained crates and one unsoundness advisory in tokio 1.53.2.

## Runtime API consolidation in tauri-runtime v3.0.0-alpha.5
- **Event dispatch removal:** WindowDispatch::on_window_event and WebviewDispatch::on_webview_event are deleted, along with WindowEventId and WebviewEventId types, collapsing duplicate event delivery paths into the existing RunEvent stream.
- **Custom runtime migration:** Runtime implementers must remove their on_window_event and on_webview_event implementations and listener storage, switching to emitting RunEvent::WindowEvent and RunEvent::WebviewEvent as the sole event delivery mechanism.
- **Dependency audit surface:** The Cargo.lock scan across 1,154 crate dependencies surfaced ten allowed warnings, including unmaintained status for fxhash, paste, rustybuzz, ttf-parser, zbus_names, zvariant, and zvariant_derive, plus a yanked async-executor and num-modular, and an unsoundness warning for tokio 1.53.2's AsyncFd::new constructors.
- **Release packaging:** The crate published 17 files totaling 260.1 KiB (59.9 KiB compressed) to crates.io after successful compilation and verification.

## Why it matters
This alpha release signals Tauri's continued maturation toward a v3.0 stable release, with API simplifications that reduce internal complexity for runtime maintainers and downstream Linux distribution packagers who track the framework's evolution. The consolidation of event handling into a single stream aligns with broader Rust ecosystem patterns for async runtime design and should make custom runtime implementations more maintainable, though it requires attention from anyone maintaining forks or alternative backends for the framework.