opener: revealItemInDir receives wrong `path` key
await revealItemInDir(save_to_path)
This fails with:
[Error] Unhandled Promise Rejection: invalid args `path` for command `reveal_item_in_dir`: command reveal_item_in_dir missing required key path
(anonymous function) (MyComponent.svelte:881)
I dived into the releases and suspect it happened here b8056f484c7144af095d4d6ded1e8adbb9b8a865
Specifically here
Quick workaround is manually calling the invoke command.
<<<<<<< HOTFIX
await invoke("plugin:opener|reveal_item_in_dir", { path: save_to_path })
=======
await revealItemInDir(save_to_path)
>>>>>>> BEFORE
can you share the output of the tauri info command please?
Sorry, it slipped my mind to reply 🙏
[✘] Environment
- OS: Mac OS 15.6.1 arm64 (X64)
✔ Xcode Command Line Tools: installed
✘ Xcode: not installed!
✔ rustc: 1.91.0 (f8297e351 2025-10-28)
✔ cargo: 1.91.0 (ea2d97820 2025-10-10)
✔ rustup: 1.28.2 (2025-04-28)
✔ Rust toolchain: stable-aarch64-apple-darwin (default)
- node: 20.19.3
- pnpm: 10.20.0
- yarn: 1.22.22
- npm: 10.8.2
[-] Packages
- tauri 🦀: 2.9.3
- tauri-build 🦀: 2.5.2
- wry 🦀: 0.53.5
- tao 🦀: 0.34.5
- tauri-cli 🦀: 2.4.0 (outdated, latest: 2.9.4)
- @tauri-apps/api ⱼₛ: 2.9.0
- @tauri-apps/cli ⱼₛ: 2.9.4
[-] Plugins
- tauri-plugin-updater 🦀: 2.9.0
- @tauri-apps/plugin-updater ⱼₛ: 2.7.1 (outdated, latest: 2.9.0)
- tauri-plugin-single-instance 🦀: 2.3.6
- @tauri-apps/plugin-single-instance ⱼₛ: not installed!
- tauri-plugin-upload 🦀: 2.3.0, (outdated, latest: 2.3.2)
- @tauri-apps/plugin-upload ⱼₛ: 2.2.2 (outdated, latest: 2.3.2)
- tauri-plugin-fs 🦀: 2.4.0, (outdated, latest: 2.4.4)
- @tauri-apps/plugin-fs ⱼₛ: 2.2.1 (outdated, latest: 2.4.4)
- tauri-plugin-opener 🦀: 2.4.0, (outdated, latest: 2.5.2)
- @tauri-apps/plugin-opener ⱼₛ: 2.5.2
- tauri-plugin-process 🦀: 2.3.0, (outdated, latest: 2.3.1)
- @tauri-apps/plugin-process ⱼₛ: 2.3.1
- tauri-plugin-shell 🦀: 2.3.0, (outdated, latest: 2.3.3)
- @tauri-apps/plugin-shell ⱼₛ: 2.2.2 (outdated, latest: 2.3.3)
- tauri-plugin-dialog 🦀: 2.3.0, (outdated, latest: 2.4.2)
- @tauri-apps/plugin-dialog ⱼₛ: 2.2.2 (outdated, latest: 2.4.2)
- tauri-plugin-http 🦀: 2.5.0, (outdated, latest: 2.5.4)
- @tauri-apps/plugin-http ⱼₛ: 2.4.4 (outdated, latest: 2.5.4)
- tauri-plugin-persisted-scope 🦀: 2.3.0, (outdated, latest: 2.3.4)
- @tauri-apps/plugin-persisted-scope ⱼₛ: not installed!
- tauri-plugin-deep-link 🦀: 2.4.5
- @tauri-apps/plugin-deep-link ⱼₛ: 2.2.1 (outdated, latest: 2.4.5)
[-] App
- build-type: bundle
- CSP: <removed>
- frontendDist: ../build
- devUrl: http://localhost:1420/
- framework: Svelte
- bundler: Vite
This is our current one. We also tried updating tauri and its dependencies but that had the same issue.
updating tauri-plugin-opener on the rust side should fix this 🤔
Okay. So I have:
[-] Packages
- tauri 🦀: 2.9.3
- tauri-build 🦀: 2.5.2
- wry 🦀: 0.53.5
- tao 🦀: 0.34.5
- tauri-cli 🦀: 2.4.0 (outdated, latest: 2.9.4)
- @tauri-apps/api ⱼₛ: 2.9.0
- @tauri-apps/cli ⱼₛ: 2.9.4
[-] Plugins
- tauri-plugin-persisted-scope 🦀: 2.3.4
- @tauri-apps/plugin-persisted-scope ⱼₛ: not installed!
- tauri-plugin-fs 🦀: 2.4.4
- @tauri-apps/plugin-fs ⱼₛ: 2.4.4
- tauri-plugin-deep-link 🦀: 2.4.5
- @tauri-apps/plugin-deep-link ⱼₛ: 2.4.5
- tauri-plugin-dialog 🦀: 2.4.2
- @tauri-apps/plugin-dialog ⱼₛ: 2.4.2
- tauri-plugin-http 🦀: 2.5.4
- @tauri-apps/plugin-http ⱼₛ: 2.5.4
- tauri-plugin-updater 🦀: 2.9.0
- @tauri-apps/plugin-updater ⱼₛ: 2.9.0
- tauri-plugin-opener 🦀: 2.5.2
- @tauri-apps/plugin-opener ⱼₛ: 2.5.2
- tauri-plugin-shell 🦀: 2.3.3
- @tauri-apps/plugin-shell ⱼₛ: 2.3.3
- tauri-plugin-single-instance 🦀: 2.3.6
- @tauri-apps/plugin-single-instance ⱼₛ: not installed!
- tauri-plugin-upload 🦀: 2.3.2
- @tauri-apps/plugin-upload ⱼₛ: 2.3.2
- tauri-plugin-process 🦀: 2.3.1
- @tauri-apps/plugin-process ⱼₛ: 2.3.1
2.5.2 for plugin-opener should be the latest AFAICT and I have no idea how to update tauri-cli (the only one marked as outdated).
My package.json has:
cat package.json | grep plugin-opener
"@tauri-apps/plugin-opener": "^2.5.2",
I also updated all tauri plugin dependencies if that matters, but I guess this can be seen in the tauri info command.
And I still get the error on the frontend side:
well the error is slightly different now, it complains about paths instead of path now but that makes even less sense cause paths is correct.
your code is still await revealItemInDir(save_to_path) with save_to_path being defined, right?
it works for me on Windows btw. I can't check macOS until tomorrow though :/
Yes, await revealItemInDir(save_to_path). Thanks for taking a look!
works for me on macOS too. Does the path contain any non ascii characters perhaps?
No special characters. Thank you for double checking. I will take another look at it as well and see if something comes up.