handle version parse fail and reorder last manifest fetch date

This commit is contained in:
Jeremy 2025-09-04 21:49:16 +10:00
parent 7208b72561
commit 80b0b6031e

View file

@ -43,8 +43,6 @@ namespace Flow.Launcher.Core.ExternalPlugins
if (results.Count == 0)
return false;
lastFetchedAt = DateTime.Now;
var updatedPluginResults = new List<UserPlugin>();
var appVersion = SemanticVersioning.Version.Parse(Constant.Version);
@ -56,6 +54,8 @@ namespace Flow.Launcher.Core.ExternalPlugins
UserPlugins = updatedPluginResults;
lastFetchedAt = DateTime.Now;
return true;
}
}
@ -73,9 +73,21 @@ namespace Flow.Launcher.Core.ExternalPlugins
private static bool IsMinimumAppVersionSatisfied(UserPlugin plugin, SemanticVersioning.Version appVersion)
{
if (string.IsNullOrEmpty(plugin.MinimumAppVersion) || appVersion >= SemanticVersioning.Version.Parse(plugin.MinimumAppVersion))
if (string.IsNullOrEmpty(plugin.MinimumAppVersion))
return true;
try
{
if (appVersion >= SemanticVersioning.Version.Parse(plugin.MinimumAppVersion))
return true;
}
catch (Exception e)
{
API.LogException(ClassName, $"Failed to parse the minimum app version {plugin.MinimumAppVersion} for plugin {plugin.Name}. "
+ "Plugin excluded from manifest", e);
return false;
}
API.LogDebug(ClassName, $"Plugin {plugin.Name} requires minimum Flow Launcher version {plugin.MinimumAppVersion}, "
+ $"but current version is {Constant.Version}. Plugin excluded from manifest.");