diff --git a/src/Artemis.Core/Constants.cs b/src/Artemis.Core/Constants.cs
index 252d3b85a..fd0300579 100644
--- a/src/Artemis.Core/Constants.cs
+++ b/src/Artemis.Core/Constants.cs
@@ -81,7 +81,7 @@ public static class Constants
///
public static readonly PluginInfo CorePluginInfo = new()
{
- Guid = Guid.Parse("ffffffff-ffff-ffff-ffff-ffffffffffff"), Name = "Artemis Core", Version = new Version(2, 0)
+ Guid = Guid.Parse("ffffffff-ffff-ffff-ffff-ffffffffffff"), Name = "Artemis Core", Version = CurrentVersion
};
///
diff --git a/src/Artemis.Core/Plugins/PluginInfo.cs b/src/Artemis.Core/Plugins/PluginInfo.cs
index 43b8319c0..6421749f8 100644
--- a/src/Artemis.Core/Plugins/PluginInfo.cs
+++ b/src/Artemis.Core/Plugins/PluginInfo.cs
@@ -25,7 +25,7 @@ public class PluginInfo : CorePropertyChanged, IPrerequisitesSubject
private Plugin _plugin = null!;
private Uri? _repository;
private bool _requiresAdmin;
- private Version _version = null!;
+ private string _version = null!;
private Uri? _website;
internal PluginInfo()
@@ -107,7 +107,7 @@ public class PluginInfo : CorePropertyChanged, IPrerequisitesSubject
/// The version of the plugin
///
[JsonProperty(Required = Required.Always)]
- public Version Version
+ public string Version
{
get => _version;
internal set => SetAndNotify(ref _version, value);
diff --git a/src/Artemis.Core/Services/PluginManagementService.cs b/src/Artemis.Core/Services/PluginManagementService.cs
index 92cb4d23b..06b9b6368 100644
--- a/src/Artemis.Core/Services/PluginManagementService.cs
+++ b/src/Artemis.Core/Services/PluginManagementService.cs
@@ -54,7 +54,7 @@ internal class PluginManagementService : IPluginManagementService
// Remove the old directory if it exists
if (Directory.Exists(pluginDirectory.FullName))
pluginDirectory.DeleteRecursively();
-
+
// Extract everything in the same archive directory to the unique plugin directory
Utilities.CreateAccessibleDirectory(pluginDirectory.FullName);
string metaDataDirectory = metaDataFileEntry.FullName.Replace(metaDataFileEntry.Name, "");
@@ -69,7 +69,7 @@ internal class PluginManagementService : IPluginManagementService
zipArchiveEntry.ExtractToFile(target);
}
}
-
+
if (createLockFile)
File.Create(Path.Combine(pluginDirectory.FullName, "artemis.lock")).Close();
}
@@ -137,26 +137,12 @@ internal class PluginManagementService : IPluginManagementService
_logger.Debug("Copying missing built-in plugin {builtInPluginInfo}", builtInPluginInfo);
CopyBuiltInPlugin(archive, preferred);
}
- else
+ else if (metaDataFileEntry.LastWriteTime > File.GetLastWriteTime(metadataFile))
{
- PluginInfo pluginInfo;
try
{
- // Compare versions, copy if the same when debugging
- pluginInfo = CoreJson.DeserializeObject(File.ReadAllText(metadataFile))!;
- }
- catch (Exception e)
- {
- throw new ArtemisPluginException($"Failed read plugin metadata needed to install built-in plugin: {e.Message}", e);
- }
-
- try
- {
- if (builtInPluginInfo.Version > pluginInfo.Version)
- {
- _logger.Debug("Copying updated built-in plugin from {pluginInfo} to {builtInPluginInfo}", pluginInfo, builtInPluginInfo);
- CopyBuiltInPlugin(archive, preferred);
- }
+ _logger.Debug("Copying updated built-in plugin {builtInPluginInfo}", builtInPluginInfo);
+ CopyBuiltInPlugin(archive, preferred);
}
catch (Exception e)
{
diff --git a/src/Artemis.UI/Services/Updating/UpdateService.cs b/src/Artemis.UI/Services/Updating/UpdateService.cs
index e264d9431..a492ee96d 100644
--- a/src/Artemis.UI/Services/Updating/UpdateService.cs
+++ b/src/Artemis.UI/Services/Updating/UpdateService.cs
@@ -89,7 +89,7 @@ public class UpdateService : IUpdateService
}
}
- // if (updated)
+ if (updated)
_updateNotificationProvider.Value.ShowInstalledNotification(currentVersion);
}