random small fixes

This commit is contained in:
2025-09-05 13:24:16 +01:00
parent 81b4b26f96
commit a9a965462a
5 changed files with 16 additions and 17 deletions
+7 -1
View File
@@ -1,5 +1,6 @@
use semver::Version;
use serde::Deserialize;
use std::time::Duration;
const APP_USER_AGENT: &str = concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"));
const CODEBERG_ENDPOINT_ROOT: &str = "https://codeberg.org/api/v1";
@@ -32,7 +33,12 @@ struct Asset {
pub fn get_latest_release() -> Result<Release, Box<dyn std::error::Error>> {
let request_url = format!("{CODEBERG_ENDPOINT_ROOT}/repos/futile/gta-tools/releases/latest");
let mut response = ureq::get(request_url).header("User-Agent", APP_USER_AGENT).call()?;
let mut response = ureq::get(request_url)
.config()
.timeout_global(Some(Duration::from_secs(10)))
.user_agent(APP_USER_AGENT)
.build()
.call()?;
let body = response.body_mut();
let json = body.read_json::<LatestRelease>()?;
let tag_name = json.tag_name;
+1 -1
View File
@@ -8,7 +8,7 @@ pub enum LogLevel {
Panic,
}
pub fn log(level: LogLevel, message: String) {
pub fn log(level: LogLevel, message: &str) {
let mut file = File::options()
.create(true)
.append(true)
+5 -8
View File
@@ -11,14 +11,11 @@ pub struct Meta {
impl Default for Meta {
fn default() -> Self {
let current_version = Version::parse(env!("CARGO_PKG_VERSION")).unwrap();
let latest_release = match codeberg::get_latest_release() {
Ok(release) => release,
Err(why) => {
let message = format!("failed to get latest codeberg release:\n{why}");
log::log(log::LogLevel::Error, message);
codeberg::Release::default()
}
};
let latest_release = codeberg::get_latest_release().unwrap_or_else(|why| {
let message = format!("failed to get latest codeberg release:\n{why}");
log::log(log::LogLevel::Error, &message);
codeberg::Release::default()
});
let newer_version_available = matches!(
&current_version.cmp_precedence(&latest_release.version),
std::cmp::Ordering::Less