From 7525e6c310413a8cceec298132b45d4292a2b1ac Mon Sep 17 00:00:00 2001 From: Flakebi Date: Tue, 17 Jun 2025 00:29:43 +0200 Subject: [PATCH] fix(tauri-plugin): do not write permissions for dependencies The generated permission schema may be different from the one published on crates.io. If a plugin is built as a dependency, we do not want to (or cannot) modify the source directory. Skip writing the file in that case. --- crates/tauri-plugin/src/build/mod.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/tauri-plugin/src/build/mod.rs b/crates/tauri-plugin/src/build/mod.rs index 921ebca18df7..0fe9a0c79437 100644 --- a/crates/tauri-plugin/src/build/mod.rs +++ b/crates/tauri-plugin/src/build/mod.rs @@ -127,7 +127,11 @@ impl<'a> Builder<'a> { )); let _ = std::fs::remove_file(autogenerated.join(acl::build::PERMISSION_DOCS_FILE_NAME)); } else { - acl::schema::generate_permissions_schema(&permissions, "./permissions")?; + println!("cargo:rerun-if-env-changed=CARGO_PRIMARY_PACKAGE"); + if std::env::var("CARGO_PRIMARY_PACKAGE").is_ok() { + // Write permissions to src directory if this is not built as a dependency + acl::schema::generate_permissions_schema(&permissions, "./permissions")?; + } acl::build::generate_docs( &permissions, &autogenerated,