fix(desktop): isolate blocking folder reveal from Tokio - #2399
Draft
richiemcilroy wants to merge 1 commit into
Draft
richiemcilroy wants to merge 1 commit into
richiemcilroy wants to merge 1 commit into
Conversation
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Showing a file in its folder on Linux can panic because the opener plugin runs blocking zbus inside an async Tauri command. Move the reveal operation onto a blocking worker and propagate both backend errors and worker failures.
Vendor the already-locked opener 2.5.0 source because current upstream still has the same direct synchronous call. Keep the IPC name, arguments, permission definitions, path canonicalization, native backends, and all four frontend callers unchanged. Apply the same boundary to diagnostic-report reveal after its existing path validation; this is an adjacent hazard, not an established source of the reported event. No runtime dependency upgrades.
Related: CAP-DESKTOP-2C2.
Validation:
CI completed for exact head
7a32ccae67d3efcbe20c5748c1f85a23655b9294: 19 checks passed, 4 failed, and Rust cache was skipped. CI run completed on its first attempt; no workflows were rerun.assets::tests::every_embedded_icon_is_referencedtest. The same five unreferenced icons are present on the base commit; GPUI is a separate workspace unaffected by the opener patch. The later Tauri app build steps were not reached.MemoryPressure::Normal/Warningdead-code warnings incrates/utils/src/export_resources.rs. macOS Clippy passed. No baseline fixes are included here.Linux and Windows execution were verified in CI, not locally. Graphical file selection and complete Tauri desktop builds remain unverified by this CI run. The Linux test permits missing session-bus/file-manager errors and checks that the blocking worker does not panic. Keep this PR draft pending platform review and resolution of the baseline CI blockers.