aboutsummaryrefslogtreecommitdiff
path: root/devtools
diff options
context:
space:
mode:
authorJulie Qiu <julie@golang.org>2021-07-07 22:26:07 -0700
committerJulie Qiu <julie@golang.org>2021-07-19 14:02:08 +0000
commit7a15cb116a5b6aee7ee6f757e673384804661de7 (patch)
tree777af92c9b3a2b5d171fbb7bca39e100cc440d00 /devtools
parenta04d038629d29b4c10deab2f2674548c1c06f2e0 (diff)
downloadgo-x-pkgsite-7a15cb116a5b6aee7ee6f757e673384804661de7.tar.xz
devtools/cmd/seeddb: filter stdlib versions
It's relatively expensive to fetch a stdlib module version, so when std@all is specified, only fetch the minor versions (ones with a patch version of 0). Change-Id: Iabf31977ca068a61f7fbbcd38f6da25c14b65082 Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/335133 Trust: Julie Qiu <julie@golang.org> Run-TryBot: Julie Qiu <julie@golang.org> Reviewed-by: Jonathan Amsterdam <jba@google.com>
Diffstat (limited to 'devtools')
-rw-r--r--devtools/cmd/seeddb/main.go19
1 files changed, 15 insertions, 4 deletions
diff --git a/devtools/cmd/seeddb/main.go b/devtools/cmd/seeddb/main.go
index 5c3d9555..30733f0b 100644
--- a/devtools/cmd/seeddb/main.go
+++ b/devtools/cmd/seeddb/main.go
@@ -94,12 +94,23 @@ func run(ctx context.Context, db *postgres.DB, proxyURL string) error {
vers := []string{m.version}
if m.version == "all" {
if m.path == stdlib.ModulePath {
- vers, err = stdlib.Versions()
+ stdVersions, err := stdlib.Versions()
+ if err != nil {
+ return err
+ }
+ // As an optimization, only fetch release versions for the
+ // standard library.
+ vers = nil
+ for _, v := range stdVersions {
+ if strings.HasSuffix(v, ".0") {
+ vers = append(vers, v)
+ }
+ }
} else {
vers, err = proxyClient.Versions(ctx, m.path)
- }
- if err != nil {
- return err
+ if err != nil {
+ return err
+ }
}
}
for _, v := range vers {