aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/internal/modload/query.go
diff options
context:
space:
mode:
authorJay Conrod <jayconrod@google.com>2021-03-23 17:03:46 -0400
committerJay Conrod <jayconrod@google.com>2021-03-24 13:54:14 +0000
commitd8960e65a2386c899d50d7f0c355080865225b94 (patch)
treec2033ecda9b8a9b6e0171586f42c5e49663107c7 /src/cmd/go/internal/modload/query.go
parent2e94401277128f9e08e3319903d1b78c09c4ab98 (diff)
downloadgo-d8960e65a2386c899d50d7f0c355080865225b94.tar.gz
go-d8960e65a2386c899d50d7f0c355080865225b94.zip
cmd/go: move psuedo-version and version sorting to x/mod
Fixes #44969 Change-Id: I01e7b1cf73f0f506aa805bbfe4a9ccaed3d44efe Reviewed-on: https://go-review.googlesource.com/c/go/+/304229 Trust: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
Diffstat (limited to 'src/cmd/go/internal/modload/query.go')
-rw-r--r--src/cmd/go/internal/modload/query.go20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/cmd/go/internal/modload/query.go b/src/cmd/go/internal/modload/query.go
index 1707bd88ed..6f6c6e8c98 100644
--- a/src/cmd/go/internal/modload/query.go
+++ b/src/cmd/go/internal/modload/query.go
@@ -177,7 +177,7 @@ func queryProxy(ctx context.Context, proxy, path, query, current string, allowed
return nil, err
}
- if (query == "upgrade" || query == "patch") && modfetch.IsPseudoVersion(current) && !rev.Time.IsZero() {
+ if (query == "upgrade" || query == "patch") && module.IsPseudoVersion(current) && !rev.Time.IsZero() {
// Don't allow "upgrade" or "patch" to move from a pseudo-version
// to a chronologically older version or pseudo-version.
//
@@ -196,7 +196,7 @@ func queryProxy(ctx context.Context, proxy, path, query, current string, allowed
// newer but v1.1.0 is still an “upgrade”; or v1.0.2 might be a revert of
// an unsuccessful fix in v1.0.1, in which case the v1.0.2 commit may be
// older than the v1.0.1 commit despite the tag itself being newer.)
- currentTime, err := modfetch.PseudoVersionTime(current)
+ currentTime, err := module.PseudoVersionTime(current)
if err == nil && rev.Time.Before(currentTime) {
if err := allowed(ctx, module.Version{Path: path, Version: current}); errors.Is(err, ErrDisallowed) {
return nil, err
@@ -325,7 +325,7 @@ func newQueryMatcher(path string, query, current string, allowed AllowedFunc) (*
if current == "" || current == "none" {
qm.mayUseLatest = true
} else {
- qm.mayUseLatest = modfetch.IsPseudoVersion(current)
+ qm.mayUseLatest = module.IsPseudoVersion(current)
qm.filter = func(mv string) bool { return semver.Compare(mv, current) >= 0 }
}
@@ -336,7 +336,7 @@ func newQueryMatcher(path string, query, current string, allowed AllowedFunc) (*
if current == "" {
qm.mayUseLatest = true
} else {
- qm.mayUseLatest = modfetch.IsPseudoVersion(current)
+ qm.mayUseLatest = module.IsPseudoVersion(current)
qm.prefix = semver.MajorMinor(current) + "."
qm.filter = func(mv string) bool { return semver.Compare(mv, current) >= 0 }
}
@@ -1009,7 +1009,7 @@ func (rr *replacementRepo) Versions(prefix string) ([]string, error) {
if index != nil && len(index.replace) > 0 {
path := rr.ModulePath()
for m, _ := range index.replace {
- if m.Path == path && strings.HasPrefix(m.Version, prefix) && m.Version != "" && !modfetch.IsPseudoVersion(m.Version) {
+ if m.Path == path && strings.HasPrefix(m.Version, prefix) && m.Version != "" && !module.IsPseudoVersion(m.Version) {
versions = append(versions, m.Version)
}
}
@@ -1066,9 +1066,9 @@ func (rr *replacementRepo) Latest() (*modfetch.RevInfo, error) {
// used from within some other module, the user will be able to upgrade
// the requirement to any real version they choose.
if _, pathMajor, ok := module.SplitPathVersion(path); ok && len(pathMajor) > 0 {
- v = modfetch.PseudoVersion(pathMajor[1:], "", time.Time{}, "000000000000")
+ v = module.PseudoVersion(pathMajor[1:], "", time.Time{}, "000000000000")
} else {
- v = modfetch.PseudoVersion("v0", "", time.Time{}, "000000000000")
+ v = module.PseudoVersion("v0", "", time.Time{}, "000000000000")
}
}
@@ -1083,9 +1083,9 @@ func (rr *replacementRepo) Latest() (*modfetch.RevInfo, error) {
func (rr *replacementRepo) replacementStat(v string) (*modfetch.RevInfo, error) {
rev := &modfetch.RevInfo{Version: v}
- if modfetch.IsPseudoVersion(v) {
- rev.Time, _ = modfetch.PseudoVersionTime(v)
- rev.Short, _ = modfetch.PseudoVersionRev(v)
+ if module.IsPseudoVersion(v) {
+ rev.Time, _ = module.PseudoVersionTime(v)
+ rev.Short, _ = module.PseudoVersionRev(v)
}
return rev, nil
}