diff --git a/src/util/codeberg.rs b/src/util/codeberg.rs index f4d133e..f5e8c6c 100644 --- a/src/util/codeberg.rs +++ b/src/util/codeberg.rs @@ -31,18 +31,17 @@ struct Asset { browser_download_url: String, } -pub fn get_latest_release() -> Option { +pub fn get_latest_release() -> Result> { let request_url = format!("{CODEBERG_ENDPOINT_ROOT}/repos/futile/gta-tools/releases/latest"); let client = ClientBuilder::default() .user_agent(APP_USER_AGENT) - .build_blocking() - .unwrap(); - let response = client.request(Request::get(request_url)).unwrap(); - let json = response.json::().ok()?; + .build_blocking()?; + let response = client.request(Request::get(request_url))?; + let json = response.json::()?; let tag_name = json.tag_name; let browser_download_url = &json.assets[0].browser_download_url; - Some(Release { - version: Version::parse(&tag_name).ok()?, + Ok(Release { + version: Version::parse(&tag_name)?, download_url: browser_download_url.to_owned(), }) }