From bff274c9a99821a3da3950b44a4032992be65423 Mon Sep 17 00:00:00 2001 From: pxseu <57842793+pxseu@users.noreply.github.com> Date: Sat, 30 Jul 2022 01:53:18 +0200 Subject: [PATCH] fix: fail silently if error --- src/commands/update/util.rs | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/commands/update/util.rs b/src/commands/update/util.rs index c4fc947..7cb47bf 100644 --- a/src/commands/update/util.rs +++ b/src/commands/update/util.rs @@ -21,14 +21,25 @@ pub async fn check_version(beta: bool) -> (bool, String) { .get(RELEASE_URL) .send() .await - .expect("Failed to get latest release") + .expect("Failed to get latest release"); + + if !response.status().is_success() { + log::debug!( + "Failed to get latest release from Github: {}", + response.status() + ); + // silently fail if we can't get the latest release + return (false, "".to_string()); + } + + let data = response .json::>() .await .expect("Failed to parse latest release"); let latest = if beta { // the latest release that can be prereleased - response + data .iter() // skip drafts .find(|r| !r.draft) @@ -36,7 +47,7 @@ pub async fn check_version(beta: bool) -> (bool, String) { .expect("No release found") } else { // the latest release that is not prereleased - response + data .iter() // skip drafts and prereleases .find(|r| !r.prerelease && !r.draft)