From 9de176e455aeb6344f628ca9935ef43922b83568 Mon Sep 17 00:00:00 2001 From: Sebastian Almberg <83243306+Sebbeben@users.noreply.github.com> Date: Thu, 12 Feb 2026 22:08:58 +0100 Subject: [PATCH] Fix settings crash when upgrading: make datasheetAsPdf nullable The settings bundle stores values in the database. When upgrading from a version without datasheetAsPdf, the stored JSON lacks this key, causing a TypeError when assigning null to a non-nullable bool. Making it nullable with a fallback in KiCadHelper fixes the upgrade path. --- src/Services/EDA/KiCadHelper.php | 2 +- src/Settings/MiscSettings/KiCadEDASettings.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Services/EDA/KiCadHelper.php b/src/Services/EDA/KiCadHelper.php index c526c1c7..29274641 100644 --- a/src/Services/EDA/KiCadHelper.php +++ b/src/Services/EDA/KiCadHelper.php @@ -58,7 +58,7 @@ class KiCadHelper KiCadEDASettings $kiCadEDASettings, ) { $this->category_depth = $kiCadEDASettings->categoryDepth; - $this->datasheetAsPdf = $kiCadEDASettings->datasheetAsPdf; + $this->datasheetAsPdf = $kiCadEDASettings->datasheetAsPdf ?? true; } /** diff --git a/src/Settings/MiscSettings/KiCadEDASettings.php b/src/Settings/MiscSettings/KiCadEDASettings.php index 29b579a2..d9611013 100644 --- a/src/Settings/MiscSettings/KiCadEDASettings.php +++ b/src/Settings/MiscSettings/KiCadEDASettings.php @@ -47,5 +47,5 @@ class KiCadEDASettings #[SettingsParameter(label: new TM("settings.misc.kicad_eda.datasheet_link"), description: new TM("settings.misc.kicad_eda.datasheet_link.help"), envVar: "bool:EDA_KICAD_DATASHEET_AS_PDF", envVarMode: EnvVarMode::OVERWRITE)] - public bool $datasheetAsPdf = true; + public ?bool $datasheetAsPdf = true; } \ No newline at end of file