Repository: alexpasmantier/television (language: rust)

Issue:
custom color theme not being used in version 0.10.1
**Description**
today my television package was updated (arch linux, from 0.9.4 -> 0.10.1), and my custom color theme is not working

for reference -

my theme (~/.config/television/themes/black.toml)

```
# general
background = '#000000'
border_fg = '#000000'
text_fg = '#ffffff'
dimmed_text_fg = '#eeeeee'
# input
input_text_fg = '#1690df'
result_count_fg = '#1690df'
# results
result_name_fg = '#ffffff'
result_line_number_fg = '#1690df'
result_value_fg = '#1690df'
selection_bg = '#222222'
match_fg = '#1690df'
# preview
preview_title_fg = '#1690df'
# modes
channel_mode_fg = '#1690df'
remote_control_mode_fg = '#1690df'
send_to_channel_mode_fg = '#1690df'
```
my config 
```
theme = "black"
```

I tried to see if there was a update regarding theming in changelog, but could not find it. I also tried to copy the default theme present in repo, and just changing the background to see if the format got changed, but did not work for me

**Expected behavior**
my theme should be used

**Actual behavior**
default color theme is used

**Environment**
 - OS: Arch linux
 - Rust version: rustc 1.84.0 (9fc6b4312 2025-01-07) (Arch Linux rust 1:1.84.0-1)
 - Project version: television 0.10.1
 - [Any other dependency version if needed]

**Additional context**
Any other context about the bug here.



Discussion / hints:
Thanks for the feedback, will look into it 🙏

Fix patch:
diff --git a/television/config/mod.rs b/television/config/mod.rs
index 1dd71d1..39d553f 100644
--- a/television/config/mod.rs
+++ b/television/config/mod.rs
@@ -99,9 +99,9 @@ impl Config {
             let path = config_dir.join(CONFIG_FILE_NAME);
             let contents = std::fs::read_to_string(&path)?;
 
-            let cfg: Config = toml::from_str(&contents).unwrap_or_else(|_| {
+            let cfg: Config = toml::from_str(&contents).unwrap_or_else(|e| {
                 warn!(
-                    "Error parsing config file, using default configuration"
+                    "Error parsing config file, using default configuration: {}" , e
                 );
                 default_config.clone()
             });
diff --git a/television/config/shell_integration.rs b/television/config/shell_integration.rs
index b68c24e..e5d4ad6 100644
--- a/television/config/shell_integration.rs
+++ b/television/config/shell_integration.rs
@@ -4,6 +4,7 @@ use rustc_hash::FxHashMap;
 use serde::Deserialize;
 
 #[derive(Clone, Debug, Deserialize, Default)]
+#[serde(default)]
 pub struct ShellIntegrationConfig {
     pub commands: FxHashMap<String, String>,
     pub keybindings: FxHashMap<String, String>,


Test patch: