From 460f9d6f59900ce705cec64c982405d3c9307a4f Mon Sep 17 00:00:00 2001 From: mleem97 <52848568+mleem97@users.noreply.github.com> Date: Thu, 21 May 2026 13:31:38 +0000 Subject: [PATCH 1/2] =?UTF-8?q?=E2=9A=A1=20Optimize=20file=20and=20directo?= =?UTF-8?q?ry=20traversal=20by=20using=20EnumerateFiles/EnumerateDirectori?= =?UTF-8?q?es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/GregModmanager.Core/Services/ModsFolderSyncService.cs | 4 ++-- src/GregModmanager.Core/Services/ReproBundleService.cs | 2 +- src/GregModmanager.Core/Services/StablePluginSource.cs | 2 +- src/GregModmanager.Core/Services/WorkspaceService.cs | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/GregModmanager.Core/Services/ModsFolderSyncService.cs b/src/GregModmanager.Core/Services/ModsFolderSyncService.cs index 5be0d4b..423e5db 100644 --- a/src/GregModmanager.Core/Services/ModsFolderSyncService.cs +++ b/src/GregModmanager.Core/Services/ModsFolderSyncService.cs @@ -148,13 +148,13 @@ public bool RemoveItem(ulong publishedFileId, string gameRoot) private static void CopyDirectoryRecursive(string sourceDir, string destDir) { - foreach (var dir in Directory.GetDirectories(sourceDir, "*", SearchOption.AllDirectories)) + foreach (var dir in Directory.EnumerateDirectories(sourceDir, "*", SearchOption.AllDirectories)) { var relative = Path.GetRelativePath(sourceDir, dir); Directory.CreateDirectory(Path.Combine(destDir, relative)); } - foreach (var file in Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories)) + foreach (var file in Directory.EnumerateFiles(sourceDir, "*", SearchOption.AllDirectories)) { var relative = Path.GetRelativePath(sourceDir, file); File.Copy(file, Path.Combine(destDir, relative), overwrite: true); diff --git a/src/GregModmanager.Core/Services/ReproBundleService.cs b/src/GregModmanager.Core/Services/ReproBundleService.cs index b481f3a..fbf536b 100644 --- a/src/GregModmanager.Core/Services/ReproBundleService.cs +++ b/src/GregModmanager.Core/Services/ReproBundleService.cs @@ -85,7 +85,7 @@ private static void CopyDirectorySafe(string sourceDir, string targetDir) } Directory.CreateDirectory(targetDir); - foreach (var file in Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories)) + foreach (var file in Directory.EnumerateFiles(sourceDir, "*", SearchOption.AllDirectories)) { try { diff --git a/src/GregModmanager.Core/Services/StablePluginSource.cs b/src/GregModmanager.Core/Services/StablePluginSource.cs index c28a32a..e1e9156 100644 --- a/src/GregModmanager.Core/Services/StablePluginSource.cs +++ b/src/GregModmanager.Core/Services/StablePluginSource.cs @@ -34,7 +34,7 @@ private void ScanDirectory(List list, string dir, string pref return; } - foreach (var dll in Directory.GetFiles(dir, "*.dll")) + foreach (var dll in Directory.EnumerateFiles(dir, "*.dll")) { var name = Path.GetFileNameWithoutExtension(dll); if (!name.StartsWith(prefix, StringComparison.OrdinalIgnoreCase) diff --git a/src/GregModmanager.Core/Services/WorkspaceService.cs b/src/GregModmanager.Core/Services/WorkspaceService.cs index 006a2a0..d7af83f 100644 --- a/src/GregModmanager.Core/Services/WorkspaceService.cs +++ b/src/GregModmanager.Core/Services/WorkspaceService.cs @@ -685,7 +685,7 @@ public static void CopyDirectoryRecursive(string sourceDir, string destDir) } Directory.CreateDirectory(destDir); - foreach (var file in Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories)) + foreach (var file in Directory.EnumerateFiles(sourceDir, "*", SearchOption.AllDirectories)) { var rel = Path.GetRelativePath(sourceDir, file); var target = Path.Combine(destDir, rel); From 7d4cc7f6c93bedfd97ec00a0e31a89a72fc9bdcc Mon Sep 17 00:00:00 2001 From: mleem97 <52848568+mleem97@users.noreply.github.com> Date: Thu, 21 May 2026 13:57:54 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=E2=9A=A1=20Optimize=20file=20and=20directo?= =?UTF-8?q?ry=20traversal=20by=20using=20EnumerateFiles/EnumerateDirectori?= =?UTF-8?q?es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/scripts/linux/build-avalonia-packages.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 build/scripts/linux/build-avalonia-packages.sh diff --git a/build/scripts/linux/build-avalonia-packages.sh b/build/scripts/linux/build-avalonia-packages.sh old mode 100644 new mode 100755 index 6a35814..8a3b868 --- a/build/scripts/linux/build-avalonia-packages.sh +++ b/build/scripts/linux/build-avalonia-packages.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)" PROJECT_PATH="$REPO_ROOT/src/GregModmanager.Avalonia/GregModmanager.Avalonia.csproj" OUTPUT_ROOT="${1:-$REPO_ROOT/artifacts/avalonia-linux}" VERSION="${2:-1.1.0}"