From bb5e71c6515ec70a1bcd7fc310eaed9a05bb8212 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sun, 23 Jul 2023 20:37:57 -0400 Subject: [PATCH 1/3] Remove second config warning, now redundant --- .../java/org/embeddedt/modernfix/forge/config/ConfigFixer.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/config/ConfigFixer.java b/forge/src/main/java/org/embeddedt/modernfix/forge/config/ConfigFixer.java index ecd00a5d..eaf9621b 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/config/ConfigFixer.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/config/ConfigFixer.java @@ -50,8 +50,6 @@ public class ConfigFixer { this.actualHandler.accept(modConfigEvent); } } else { - if(modConfigEvent.getConfig().getConfigData() != null) - ModernFix.LOGGER.warn("Unable to sync on a {} config object", modConfigEvent.getConfig().getConfigData().getClass().getName()); this.actualHandler.accept(modConfigEvent); } } From 5338cca79b5ad97786c32724816137aed9970dca Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Mon, 24 Jul 2023 14:19:02 -0400 Subject: [PATCH 2/3] Adjust patch for 1.18 FlagManager --- .../mixin/bugfix/cofh_core_crash/FlagManagerMixin.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/cofh_core_crash/FlagManagerMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/cofh_core_crash/FlagManagerMixin.java index f39e12e1..afbfaa0e 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/cofh_core_crash/FlagManagerMixin.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/cofh_core_crash/FlagManagerMixin.java @@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Coerce; import org.spongepowered.asm.mixin.injection.Redirect; -import java.util.function.BooleanSupplier; +import java.util.function.Supplier; /** * Fix getOrCreateFlag accessing the FLAGS map without synchronization by wrapping all calls to it @@ -18,15 +18,15 @@ import java.util.function.BooleanSupplier; @RequiresMod("cofh_core") public class FlagManagerMixin { @Shadow @Final - private static Object2ObjectOpenHashMap FLAGS; + private static Object2ObjectOpenHashMap> FLAGS; @Shadow - private BooleanSupplier getOrCreateFlag(String flag) { + private Supplier getOrCreateFlag(String flag) { throw new AssertionError(); } @Redirect(method = "*", at = @At(value = "INVOKE", target = "getOrCreateFlag"), require = 0) - private BooleanSupplier getFlag(@Coerce Object flagHandler, String flag) { + private Supplier getFlag(@Coerce Object flagHandler, String flag) { if(flagHandler != this) throw new AssertionError("Redirect targeted bad getOrCreateFlag invocation"); synchronized (FLAGS) { From 7f447016708e7fc77f211a7f1b40b9e34feff5ac Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Mon, 24 Jul 2023 16:03:29 -0400 Subject: [PATCH 3/3] Display ModernFix version in early part of log --- .../embeddedt/modernfix/core/ModernFixMixinPlugin.java | 4 ++-- .../platform/forge/ModernFixPlatformHooksImpl.java | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/common/src/main/java/org/embeddedt/modernfix/core/ModernFixMixinPlugin.java b/common/src/main/java/org/embeddedt/modernfix/core/ModernFixMixinPlugin.java index f68fb052..454afa95 100644 --- a/common/src/main/java/org/embeddedt/modernfix/core/ModernFixMixinPlugin.java +++ b/common/src/main/java/org/embeddedt/modernfix/core/ModernFixMixinPlugin.java @@ -32,8 +32,8 @@ public class ModernFixMixinPlugin implements IMixinConfigPlugin { throw new RuntimeException("Could not load configuration file for ModernFix", e); } - this.logger.info("Loaded configuration file for ModernFix: {} options available, {} override(s) found", - config.getOptionCount(), config.getOptionOverrideCount()); + this.logger.info("Loaded configuration file for ModernFix {}: {} options available, {} override(s) found", + ModernFixPlatformHooks.getVersionString(), config.getOptionCount(), config.getOptionOverrideCount()); config.getOptionMap().values().forEach(option -> { if (option.isOverridden()) { diff --git a/forge/src/main/java/org/embeddedt/modernfix/platform/forge/ModernFixPlatformHooksImpl.java b/forge/src/main/java/org/embeddedt/modernfix/platform/forge/ModernFixPlatformHooksImpl.java index e63bfbfa..0339c395 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/platform/forge/ModernFixPlatformHooksImpl.java +++ b/forge/src/main/java/org/embeddedt/modernfix/platform/forge/ModernFixPlatformHooksImpl.java @@ -51,6 +51,7 @@ import java.net.URLClassLoader; import java.nio.file.Path; import java.util.Enumeration; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.function.Consumer; import java.util.function.Function; @@ -68,7 +69,12 @@ public class ModernFixPlatformHooksImpl { public static String getVersionString() { if(verString == null) { - verString = LoadingModList.get().getModFileById("modernfix").getMods().get(0).getVersion().toString(); + try { + verString = ModernFixMixinPlugin.class.getPackage().getImplementationVersion(); + Objects.requireNonNull(verString); + } catch(Throwable e) { + verString = "[unknown]"; + } } return verString; }