From ad0270079d9404dd37b385a6d9db8b52e0668d99 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Thu, 9 Jan 2025 20:57:43 +0800 Subject: [PATCH 1/2] Use System.Text.Json to replace Newtonsoft.Json for better performance --- .../Utilities.cs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs b/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs index 9800fa0209c..19f911818fc 100644 --- a/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs +++ b/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs @@ -1,10 +1,9 @@ using Flow.Launcher.Core.ExternalPlugins; -using Flow.Launcher.Infrastructure.UserSettings; using ICSharpCode.SharpZipLib.Zip; -using Newtonsoft.Json; using System.IO; using System.IO.Compression; using System.Linq; +using System.Text.Json; namespace Flow.Launcher.Plugin.PluginsManager { @@ -72,12 +71,10 @@ internal static UserPlugin GetPluginInfoFromZip(string filePath) if (pluginJsonEntry != null) { - using (StreamReader reader = new StreamReader(pluginJsonEntry.Open())) - { - string pluginJsonContent = reader.ReadToEnd(); - plugin = JsonConvert.DeserializeObject(pluginJsonContent); - plugin.IcoPath = "Images\\zipfolder.png"; - } + using StreamReader reader = new StreamReader(pluginJsonEntry.Open()); + string pluginJsonContent = reader.ReadToEnd(); + plugin = JsonSerializer.Deserialize(pluginJsonContent); + plugin.IcoPath = "Images\\zipfolder.png"; } } From 95b4c4c766bc07b77285f7e7a0e525d35c6b08d0 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Fri, 10 Jan 2025 13:34:10 +0800 Subject: [PATCH 2/2] Improve code quality --- Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs b/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs index 19f911818fc..743f5b25bff 100644 --- a/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs +++ b/Plugins/Flow.Launcher.Plugin.PluginsManager/Utilities.cs @@ -71,9 +71,8 @@ internal static UserPlugin GetPluginInfoFromZip(string filePath) if (pluginJsonEntry != null) { - using StreamReader reader = new StreamReader(pluginJsonEntry.Open()); - string pluginJsonContent = reader.ReadToEnd(); - plugin = JsonSerializer.Deserialize(pluginJsonContent); + using Stream stream = pluginJsonEntry.Open(); + plugin = JsonSerializer.Deserialize(stream); plugin.IcoPath = "Images\\zipfolder.png"; } }