From a9fdf30880493521e47500a5ad4ffb36775c333a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 1 Mar 2026 19:23:14 +0000 Subject: [PATCH 1/3] Initial plan From 6ab3ed9911cfc6e7d4da5b0c9668fe77c6f3148e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 1 Mar 2026 19:27:22 +0000 Subject: [PATCH 2/3] fix(hotfix): skip CrestronOnvif.dll when scanning assemblies at startup Co-authored-by: ngenovese11 <23391587+ngenovese11@users.noreply.github.com> --- src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs b/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs index b02daf4ec..e356b2888 100644 --- a/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs +++ b/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs @@ -36,8 +36,17 @@ public DeviceFactory() { var programAssemblies = Directory.GetFiles(InitialParametersClass.ProgramDirectory.ToString(), "*.dll"); + // Assemblies known to cause load errors that should be skipped + var assembliesToSkip = new[] { "CrestronOnvif.dll" }; + foreach (var assembly in programAssemblies) { + if (assembliesToSkip.Any(a => Path.GetFileName(assembly).Equals(a, StringComparison.OrdinalIgnoreCase))) + { + Debug.LogMessage(LogEventLevel.Verbose, "Skipping assembly: {assemblyName}", null, assembly); + continue; + } + try { Assembly.LoadFrom(assembly); From b21be608f02e3b9dba87958066d1926507b8e5ba Mon Sep 17 00:00:00 2001 From: Nick Genovese <23391587+ngenovese11@users.noreply.github.com> Date: Sun, 1 Mar 2026 14:38:07 -0500 Subject: [PATCH 3/3] Update src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs b/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs index e356b2888..c79be592a 100644 --- a/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs +++ b/src/PepperDash.Essentials.Core/Factory/DeviceFactory.cs @@ -43,7 +43,7 @@ public DeviceFactory() { if (assembliesToSkip.Any(a => Path.GetFileName(assembly).Equals(a, StringComparison.OrdinalIgnoreCase))) { - Debug.LogMessage(LogEventLevel.Verbose, "Skipping assembly: {assemblyName}", null, assembly); + Debug.LogMessage(LogEventLevel.Verbose, "Skipping assembly: {assemblyName}", Path.GetFileName(assembly)); continue; }