mirror of https://github.com/golang/go.git
This change moves as much view initialization code into the initialization function, instead of having it happen on view create. Also, the `go env` variables that are collected at inconsistent times are all collected on view creation. That is sufficient, since the view is recreated if the environment changes. I had originally hoped that the initial call to `go env` and the -modfile detection could become part of this parallel initialization as well, but you can't create a *packages.Config until the temporary modfile has been set up, so it still makes sense to do that on view create. This is, however, the reasoning behind the refactorings in the -modfile detection in this CL. The main changes are a few renamings and a split between snapshot.ModFiles and view.modFiles to maximize the amount of work done in the view. I changed view.modfiles to moduleInformation because I thought we might want to store additional information there at some point. Rohan, please let me know if you disagree with any of the changes I made, and I can revert them. Fixes golang/go#36487 Change-Id: I504db5a4f41b79bee99ebd391e32e7b520a19569 Reviewed-on: https://go-review.googlesource.com/c/tools/+/214417 Run-TryBot: Rebecca Stambler <rstambler@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rohan Challa <rohan@golang.org> |
||
|---|---|---|
| .. | ||
| analysis.go | ||
| builtin.go | ||
| cache.go | ||
| check.go | ||
| debug.go | ||
| error_test.go | ||
| errors.go | ||
| external.go | ||
| load.go | ||
| modfiles.go | ||
| overlay.go | ||
| parse.go | ||
| parse_mod.go | ||
| pkg.go | ||
| session.go | ||
| snapshot.go | ||
| view.go | ||