diff --git a/cli/dependency_resolver.go b/cli/dependency_resolver.go index afd9e5b..7eb521e 100644 --- a/cli/dependency_resolver.go +++ b/cli/dependency_resolver.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "sort" + "strings" "github.com/Khan/genqlient/graphql" "github.com/Masterminds/semver/v3" @@ -119,9 +120,14 @@ func (r *resolvingInstance) Step() error { return errors.Errorf("could not find an SML version that matches constraint %s and game version %d", constraint, r.GameVersion) } + smlVersionStr := chosenSMLVersion.String() + if !strings.HasPrefix(smlVersionStr, "v") { + smlVersionStr = "v" + smlVersionStr + } + r.OutputLock[id] = LockedMod{ Version: chosenSMLVersion.String(), - Link: fmt.Sprintf(smlDownloadTemplate, chosenSMLVersion.String()), + Link: fmt.Sprintf(smlDownloadTemplate, smlVersionStr), Dependencies: map[string]string{}, } } diff --git a/cli/resolving_test.go b/cli/resolving_test.go index 090e979..43d18c8 100644 --- a/cli/resolving_test.go +++ b/cli/resolving_test.go @@ -41,7 +41,7 @@ func TestProfileResolution(t *testing.T) { }, }).Resolve(resolver, nil, math.MaxInt) - testza.AssertEqual(t, "failed resolving profile dependencies: failed resolving dependencies. requires different versions of RefinedRDLib", err.Error()) + testza.AssertEqual(t, "failed resolving profile dependencies: mod RefinedRDLib version 1.0.6 does not match constraint ^1.0.7", err.Error()) _, err = (&Profile{ Name: DefaultProfileName,