From b59babb5ada03acd83d69e26f75c8ebe2f4902b2 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Thu, 9 Oct 2025 18:27:52 -0500 Subject: [PATCH 1/2] neoforge: handle new version ordering --- .../me/itzg/helpers/forge/NeoForgeInstallerResolver.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/me/itzg/helpers/forge/NeoForgeInstallerResolver.java b/src/main/java/me/itzg/helpers/forge/NeoForgeInstallerResolver.java index 9d2e43e8..613cc70e 100644 --- a/src/main/java/me/itzg/helpers/forge/NeoForgeInstallerResolver.java +++ b/src/main/java/me/itzg/helpers/forge/NeoForgeInstallerResolver.java @@ -14,6 +14,7 @@ import me.itzg.helpers.http.SharedFetch; import me.itzg.helpers.mvn.MavenMetadata; import me.itzg.helpers.mvn.MavenRepoApi; +import org.apache.maven.artifact.versioning.ComparableVersion; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -126,7 +127,10 @@ else if (requestedNeoForgeVersion == null || requestedNeoForgeVersion.equalsIgno } } }) - .reduce((s, s2) -> s2) + // pick the highest version from a or b + .reduce((a, b) -> + new ComparableVersion(a).compareTo(new ComparableVersion(b)) > 0 ? a : b + ) .orElse(null); return result != null ? new VersionPair(deriveMinecraftVersion(result), result) : null; From 25e0a20f9b379bb4bc981461cd33078b7aa5cfd7 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Thu, 9 Oct 2025 18:34:45 -0500 Subject: [PATCH 2/2] Updated unit test --- .../me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java b/src/test/java/me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java index ad880f3e..58dae500 100644 --- a/src/test/java/me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java +++ b/src/test/java/me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java @@ -29,7 +29,7 @@ public static Stream resolve_args() { arguments("1.20.1", "latest", "1.20.1", "47.1.84"), arguments("1.21", "beta", "1.21", "21.0.142-beta"), arguments("latest", "beta", "1.21.4", "21.4.48-beta"), - arguments("latest", "latest", "1.21.1", "21.1.93") + arguments("latest", "latest", "1.21.3", "21.3.58") ); }