From cee05b5d18bb0a0d051c52a8ffb7ae84e611ec0d Mon Sep 17 00:00:00 2001 From: pyr0ball Date: Mon, 18 May 2026 15:21:03 -0700 Subject: [PATCH] fix(m1): serde defaults on Tier and NotificationLevel, PartialEq on SourceOs --- src-tauri/src/config.rs | 10 +++++++--- src-tauri/src/lib.rs | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src-tauri/src/config.rs b/src-tauri/src/config.rs index c26d65f..f2c209d 100644 --- a/src-tauri/src/config.rs +++ b/src-tauri/src/config.rs @@ -2,7 +2,7 @@ use anyhow::{Context, Result}; use serde::{Deserialize, Serialize}; use std::path::PathBuf; -#[derive(Debug, Clone, Serialize, Deserialize)] +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] #[serde(rename_all = "snake_case")] pub enum SourceOs { Macos, @@ -11,19 +11,21 @@ pub enum SourceOs { Unknown, } -#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)] #[serde(rename_all = "snake_case")] pub enum Tier { + #[default] Free, Paid, Premium, } -#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)] #[serde(rename_all = "snake_case")] pub enum NotificationLevel { Off, BadgeOnly, + #[default] BadgeAndToast, } @@ -53,6 +55,7 @@ impl Default for OllamaConfig { #[derive(Debug, Clone, Serialize, Deserialize)] pub struct DisplayConfig { + #[serde(default)] pub notification_level: NotificationLevel, pub quiet_mode: bool, } @@ -71,6 +74,7 @@ pub struct RobinConfig { pub migration: Option, pub ollama: OllamaConfig, pub display: DisplayConfig, + #[serde(default)] pub tier: Tier, } diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 6673768..c292b19 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -9,6 +9,7 @@ use std::sync::Mutex; #[cfg_attr(mobile, tauri::mobile_entry_point)] pub fn run() { + // TODO: log a warning when load() fails so users know their config was reset let config = RobinConfig::load().unwrap_or_default(); tauri::Builder::default()