aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/internal/modload/modfile.go
diff options
context:
space:
mode:
authorJay Conrod <jayconrod@google.com>2020-11-10 15:48:37 -0500
committerJay Conrod <jayconrod@google.com>2020-11-16 21:06:29 +0000
commit97700baf8bd5c0fdbfe38eedc80d3c612805cbda (patch)
tree3fc43a05446ba8f542fdf31a8270ab93b348bf92 /src/cmd/go/internal/modload/modfile.go
parent38367d098ed4d97539de5e43e03bce985fc56d8e (diff)
downloadgo-97700baf8bd5c0fdbfe38eedc80d3c612805cbda.tar.gz
go-97700baf8bd5c0fdbfe38eedc80d3c612805cbda.zip
cmd/go: in 'go get', only load retractions for resolved versions
Previously, 'go get' loaded retractions for every module in the build list, which took a long time and usually wasn't helpful. Fixes #42185 Change-Id: I64294585db141106b63ec74aafa0d266b7536ef2 Reviewed-on: https://go-review.googlesource.com/c/go/+/269019 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com> Trust: Jay Conrod <jayconrod@google.com>
Diffstat (limited to 'src/cmd/go/internal/modload/modfile.go')
-rw-r--r--src/cmd/go/internal/modload/modfile.go20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/cmd/go/internal/modload/modfile.go b/src/cmd/go/internal/modload/modfile.go
index 7a8963246b..e9601c3e7c 100644
--- a/src/cmd/go/internal/modload/modfile.go
+++ b/src/cmd/go/internal/modload/modfile.go
@@ -59,7 +59,7 @@ func CheckAllowed(ctx context.Context, m module.Version) error {
if err := CheckExclusions(ctx, m); err != nil {
return err
}
- if err := checkRetractions(ctx, m); err != nil {
+ if err := CheckRetractions(ctx, m); err != nil {
return err
}
return nil
@@ -85,9 +85,9 @@ type excludedError struct{}
func (e *excludedError) Error() string { return "excluded by go.mod" }
func (e *excludedError) Is(err error) bool { return err == ErrDisallowed }
-// checkRetractions returns an error if module m has been retracted by
+// CheckRetractions returns an error if module m has been retracted by
// its author.
-func checkRetractions(ctx context.Context, m module.Version) error {
+func CheckRetractions(ctx context.Context, m module.Version) error {
if m.Version == "" {
// Main module, standard library, or file replacement module.
// Cannot be retracted.
@@ -165,28 +165,28 @@ func checkRetractions(ctx context.Context, m module.Version) error {
}
}
if isRetracted {
- return module.VersionError(m, &retractedError{rationale: rationale})
+ return module.VersionError(m, &ModuleRetractedError{Rationale: rationale})
}
return nil
}
var retractCache par.Cache
-type retractedError struct {
- rationale []string
+type ModuleRetractedError struct {
+ Rationale []string
}
-func (e *retractedError) Error() string {
+func (e *ModuleRetractedError) Error() string {
msg := "retracted by module author"
- if len(e.rationale) > 0 {
+ if len(e.Rationale) > 0 {
// This is meant to be a short error printed on a terminal, so just
// print the first rationale.
- msg += ": " + ShortRetractionRationale(e.rationale[0])
+ msg += ": " + ShortRetractionRationale(e.Rationale[0])
}
return msg
}
-func (e *retractedError) Is(err error) bool {
+func (e *ModuleRetractedError) Is(err error) bool {
return err == ErrDisallowed
}