diff --git a/.changes/tauri-info-no-node.md b/.changes/tauri-info-no-node.md new file mode 100644 index 000000000..67a00a955 --- /dev/null +++ b/.changes/tauri-info-no-node.md @@ -0,0 +1,6 @@ +--- +"tauri-cli": "patch:bug" +"@tauri-apps/cli": "patch:bug" +--- + +Fix `tauri info` crashing when Node.js is not installed. diff --git a/tooling/cli/src/info/env_nodejs.rs b/tooling/cli/src/info/env_nodejs.rs index 8444610b1..1e79964bb 100644 --- a/tooling/cli/src/info/env_nodejs.rs +++ b/tooling/cli/src/info/env_nodejs.rs @@ -42,17 +42,17 @@ pub fn items(metadata: &VersionMetadata) -> Vec { .unwrap_or_default() .trim(); ActionResult::Description(format!("node: {}{}", v, { - let version = semver::Version::parse(v).unwrap(); - let target_version = semver::Version::parse(node_target_ver.as_str()).unwrap(); - if version < target_version { - format!( - " ({}, latest: {})", - "outdated".red(), - target_version.to_string().green() - ) - } else { - "".into() - } + let version = semver::Version::parse(v); + let target_version = semver::Version::parse(node_target_ver.as_str()); + match (version, target_version) { + (Ok(version), Ok(target_version)) if version < target_version => { + format!( + " ({}, latest: {})", + "outdated".red(), + target_version.to_string().green() + ) + } + _ => "".into(), })) } else { ActionResult::None