Skip to content

Commit 606adfd

Browse files
authored
neoforge: handle new version ordering (#650)
1 parent 5da89be commit 606adfd

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/main/java/me/itzg/helpers/forge/NeoForgeInstallerResolver.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import me.itzg.helpers.http.SharedFetch;
1515
import me.itzg.helpers.mvn.MavenMetadata;
1616
import me.itzg.helpers.mvn.MavenRepoApi;
17+
import org.apache.maven.artifact.versioning.ComparableVersion;
1718
import org.jetbrains.annotations.NotNull;
1819
import org.jetbrains.annotations.Nullable;
1920

@@ -126,7 +127,10 @@ else if (requestedNeoForgeVersion == null || requestedNeoForgeVersion.equalsIgno
126127
}
127128
}
128129
})
129-
.reduce((s, s2) -> s2)
130+
// pick the highest version from a or b
131+
.reduce((a, b) ->
132+
new ComparableVersion(a).compareTo(new ComparableVersion(b)) > 0 ? a : b
133+
)
130134
.orElse(null);
131135

132136
return result != null ? new VersionPair(deriveMinecraftVersion(result), result) : null;

src/test/java/me/itzg/helpers/forge/NeoForgeInstallerResolverTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public static Stream<Arguments> resolve_args() {
2929
arguments("1.20.1", "latest", "1.20.1", "47.1.84"),
3030
arguments("1.21", "beta", "1.21", "21.0.142-beta"),
3131
arguments("latest", "beta", "1.21.4", "21.4.48-beta"),
32-
arguments("latest", "latest", "1.21.1", "21.1.93")
32+
arguments("latest", "latest", "1.21.3", "21.3.58")
3333
);
3434
}
3535

0 commit comments

Comments
 (0)