diff --git a/.changes/updater-signer-files-without-extension.md b/.changes/updater-signer-files-without-extension.md new file mode 100644 index 000000000..1ff41edbd --- /dev/null +++ b/.changes/updater-signer-files-without-extension.md @@ -0,0 +1,6 @@ +--- +tauri-cli: patch:bug +"@tauri-apps/cli": patch:bug +--- + +`tauri signer sign` doesn't work for files without an extension diff --git a/crates/tauri-cli/src/helpers/updater_signature.rs b/crates/tauri-cli/src/helpers/updater_signature.rs index 9367e7bad..ba9012359 100644 --- a/crates/tauri-cli/src/helpers/updater_signature.rs +++ b/crates/tauri-cli/src/helpers/updater_signature.rs @@ -120,9 +120,14 @@ where { let bin_path = bin_path.as_ref(); // We need to append .sig at the end it's where the signature will be stored - let mut extension = bin_path.extension().unwrap().to_os_string(); - extension.push(".sig"); - let signature_path = bin_path.with_extension(extension); + // TODO: use with_added_extension when we bump MSRV to > 1.91' + let signature_path = if let Some(ext) = bin_path.extension() { + let mut extension = ext.to_os_string(); + extension.push(".sig"); + bin_path.with_extension(extension) + } else { + bin_path.with_extension("sig") + }; let trusted_comment = format!( "timestamp:{}\tfile:{}",