From 22a895d27c79f2f0cc04e02de89bf55f2448994e Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Thu, 26 Aug 2021 01:12:37 -0400 Subject: only check 64-bit compatibility if an assembly fails to load Apparently some 32-bit-only DLLs load successfully with the unofficial 64-bit version of the game. --- docs/release-notes.md | 3 +++ src/SMAPI/Framework/SCore.cs | 14 ++++---------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/docs/release-notes.md b/docs/release-notes.md index 3c9c0895..6a75b895 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,6 +1,9 @@ ← [README](README.md) # Release notes +## Upcoming release +* Fixed some mods in unofficial 64-bit mode no longer loading after SMAPI 3.12.3. + ## 3.12.4 Released 25 August 2021 for Stardew Valley 1.5.4 or later. diff --git a/src/SMAPI/Framework/SCore.cs b/src/SMAPI/Framework/SCore.cs index dff0fc55..c1aa3721 100644 --- a/src/SMAPI/Framework/SCore.cs +++ b/src/SMAPI/Framework/SCore.cs @@ -1708,16 +1708,6 @@ namespace StardewModdingAPI.Framework IManifest manifest = mod.Manifest; string assemblyPath = Path.Combine(mod.DirectoryPath, manifest.EntryDll); - // assert 64-bit -#if SMAPI_FOR_WINDOWS_64BIT_HACK - if (!EnvironmentUtility.Is64BitAssembly(assemblyPath)) - { - errorReasonPhrase = "it needs to be updated for 64-bit mode."; - failReason = ModFailReason.LoadFailed; - return false; - } -#endif - // load mod Assembly modAssembly; try @@ -1741,6 +1731,10 @@ namespace StardewModdingAPI.Framework catch (Exception ex) { errorReasonPhrase = "its DLL couldn't be loaded."; +#if SMAPI_FOR_WINDOWS_64BIT_HACK + if (!EnvironmentUtility.Is64BitAssembly(assemblyPath)) + errorReasonPhrase = "it needs to be updated for 64-bit mode."; +#endif errorDetails = $"Error: {ex.GetLogSummary()}"; failReason = ModFailReason.LoadFailed; return false; -- cgit From c065675604a1d93f55828be6030baa3131dd7553 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Thu, 26 Aug 2021 01:13:24 -0400 Subject: prepare for release --- build/common.targets | 2 +- docs/release-notes.md | 4 +++- src/SMAPI.Mods.ConsoleCommands/manifest.json | 4 ++-- src/SMAPI.Mods.ErrorHandler/manifest.json | 4 ++-- src/SMAPI.Mods.SaveBackup/manifest.json | 4 ++-- src/SMAPI/Constants.cs | 2 +- 6 files changed, 11 insertions(+), 9 deletions(-) diff --git a/build/common.targets b/build/common.targets index ca02ba30..70f0a741 100644 --- a/build/common.targets +++ b/build/common.targets @@ -1,7 +1,7 @@ - 3.12.4 + 3.12.5 SMAPI latest $(AssemblySearchPaths);{GAC} diff --git a/docs/release-notes.md b/docs/release-notes.md index 6a75b895..db0c3a2a 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,7 +1,9 @@ ← [README](README.md) # Release notes -## Upcoming release +## 3.12.5 +Released 26 August 2021 for Stardew Valley 1.5.4 or later. + * Fixed some mods in unofficial 64-bit mode no longer loading after SMAPI 3.12.3. ## 3.12.4 diff --git a/src/SMAPI.Mods.ConsoleCommands/manifest.json b/src/SMAPI.Mods.ConsoleCommands/manifest.json index e89dd582..540d0488 100644 --- a/src/SMAPI.Mods.ConsoleCommands/manifest.json +++ b/src/SMAPI.Mods.ConsoleCommands/manifest.json @@ -1,9 +1,9 @@ { "Name": "Console Commands", "Author": "SMAPI", - "Version": "3.12.4", + "Version": "3.12.5", "Description": "Adds SMAPI console commands that let you manipulate the game.", "UniqueID": "SMAPI.ConsoleCommands", "EntryDll": "ConsoleCommands.dll", - "MinimumApiVersion": "3.12.4" + "MinimumApiVersion": "3.12.5" } diff --git a/src/SMAPI.Mods.ErrorHandler/manifest.json b/src/SMAPI.Mods.ErrorHandler/manifest.json index ba51ed68..645a7514 100644 --- a/src/SMAPI.Mods.ErrorHandler/manifest.json +++ b/src/SMAPI.Mods.ErrorHandler/manifest.json @@ -1,9 +1,9 @@ { "Name": "Error Handler", "Author": "SMAPI", - "Version": "3.12.4", + "Version": "3.12.5", "Description": "Handles some common vanilla errors to log more useful info or avoid breaking the game.", "UniqueID": "SMAPI.ErrorHandler", "EntryDll": "ErrorHandler.dll", - "MinimumApiVersion": "3.12.4" + "MinimumApiVersion": "3.12.5" } diff --git a/src/SMAPI.Mods.SaveBackup/manifest.json b/src/SMAPI.Mods.SaveBackup/manifest.json index a4d7aeac..d8b77339 100644 --- a/src/SMAPI.Mods.SaveBackup/manifest.json +++ b/src/SMAPI.Mods.SaveBackup/manifest.json @@ -1,9 +1,9 @@ { "Name": "Save Backup", "Author": "SMAPI", - "Version": "3.12.4", + "Version": "3.12.5", "Description": "Automatically backs up all your saves once per day into its folder.", "UniqueID": "SMAPI.SaveBackup", "EntryDll": "SaveBackup.dll", - "MinimumApiVersion": "3.12.4" + "MinimumApiVersion": "3.12.5" } diff --git a/src/SMAPI/Constants.cs b/src/SMAPI/Constants.cs index 8086ffa9..04e15998 100644 --- a/src/SMAPI/Constants.cs +++ b/src/SMAPI/Constants.cs @@ -62,7 +62,7 @@ namespace StardewModdingAPI internal static int? LogScreenId { get; set; } /// SMAPI's current raw semantic version. - internal static string RawApiVersion = "3.12.4"; + internal static string RawApiVersion = "3.12.5"; } /// Contains SMAPI's constants and assumptions. -- cgit