From b658ded614cfc169228cb22ad5bfc64478dfe161 Mon Sep 17 00:00:00 2001 From: i-c-b <133848861+i-c-b@users.noreply.github.com> Date: Wed, 28 Feb 2024 11:42:21 -0500 Subject: [PATCH] fix(cli): Truncate BuildTask.kt before writing (#9015) * truncate BuildTask.kt before write * Create truncate-before-write-buildtask.md * remove unused checks --------- Co-authored-by: Lucas Nogueira --- .changes/truncate-before-write-buildtask.md | 6 ++++++ tooling/cli/src/mobile/android/project.rs | 4 +++- tooling/cli/src/mobile/ios/project.rs | 2 +- tooling/cli/src/plugin/init.rs | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 .changes/truncate-before-write-buildtask.md diff --git a/.changes/truncate-before-write-buildtask.md b/.changes/truncate-before-write-buildtask.md new file mode 100644 index 000000000..0897545c0 --- /dev/null +++ b/.changes/truncate-before-write-buildtask.md @@ -0,0 +1,6 @@ +--- +"tauri-cli": patch:bug +"@tauri-apps/cli": patch:bug +--- + +Fixes truncation of existing BuildTask.kt when running `tauri android init`. diff --git a/tooling/cli/src/mobile/android/project.rs b/tooling/cli/src/mobile/android/project.rs index 9c6029d3c..5110ee158 100644 --- a/tooling/cli/src/mobile/android/project.rs +++ b/tooling/cli/src/mobile/android/project.rs @@ -211,7 +211,9 @@ fn generate_out_file( options.mode(0o755); } - if path.file_name().unwrap() == OsStr::new("BuildTask.kt") || !path.exists() { + if path.file_name().unwrap() == OsStr::new("BuildTask.kt") { + options.truncate(true).create(true).open(path).map(Some) + } else if !path.exists() { options.create(true).open(path).map(Some) } else { Ok(None) diff --git a/tooling/cli/src/mobile/ios/project.rs b/tooling/cli/src/mobile/ios/project.rs index 1c6740a5b..8e702bafb 100644 --- a/tooling/cli/src/mobile/ios/project.rs +++ b/tooling/cli/src/mobile/ios/project.rs @@ -155,7 +155,7 @@ pub fn gen( let mut options = OpenOptions::new(); options.write(true); - if path.file_name().unwrap() == OsStr::new("BuildTask.kt") || !path.exists() { + if !path.exists() { options.create(true).open(path).map(Some) } else { Ok(None) diff --git a/tooling/cli/src/plugin/init.rs b/tooling/cli/src/plugin/init.rs index 7f631c0ab..c4f23e4bf 100644 --- a/tooling/cli/src/plugin/init.rs +++ b/tooling/cli/src/plugin/init.rs @@ -274,7 +274,7 @@ pub fn generate_android_out_file( options.mode(0o755); } - if path.file_name().unwrap() == OsStr::new("BuildTask.kt") || !path.exists() { + if !path.exists() { options.create(true).open(path).map(Some) } else { Ok(None)