From d25817273b71472713e9e7a8996f01da02b29d4b Mon Sep 17 00:00:00 2001 From: comp500 Date: Sun, 21 May 2023 16:35:26 +0100 Subject: [PATCH] Fix Modrinth URL version number precedence (oldest-first) --- modrinth/modrinth.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/modrinth/modrinth.go b/modrinth/modrinth.go index 3b238c9..502bf9c 100644 --- a/modrinth/modrinth.go +++ b/modrinth/modrinth.go @@ -419,9 +419,10 @@ func resolveVersion(project *modrinthApi.Project, version string) (*modrinthApi. if err != nil { return nil, fmt.Errorf("failed to fetch version list for %s: %v", *project.ID, err) } - for _, v := range versionsList { - if *v.VersionNumber == version { - return v, nil + // Traverse in reverse order: Modrinth knossos always gives the oldest file precedence over having the version number path + for i := len(versionsList) - 1; i >= 0; i-- { + if *versionsList[i].VersionNumber == version { + return versionsList[i], nil } } return nil, fmt.Errorf("unable to find version %s", version)