go/packages: disable -mod=readonly behavior in overlays

This was preventing mod files from being updated when dependencies were
added to overlays. This prevents gopls from accurately modifying a user's
mod file when a dependency is added, which poses problems for usability.
To handle the issues that this was (supposedly) solving, we can require
that files from multiple modules are never added in an overlay.

For some reason, this doesn't break TestOverlayModFileChanges.

Change-Id: I24d6c30754c2bebc440802f7cf2931d98e450ebf
Reviewed-on: https://go-review.googlesource.com/c/tools/+/211058
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Michael Matloob <matloob@golang.org>
This commit is contained in:
Rebecca Stambler 2019-12-12 11:53:53 -05:00
parent 825cb06263
commit 8facea2ecf
1 changed files with 1 additions and 6 deletions

View File

@ -253,12 +253,7 @@ func addNeededOverlayPackages(cfg *Config, driver driver, response *responseDedu
if len(pkgs) == 0 {
return nil
}
drivercfg := *cfg
if getGoInfo().env.modulesOn {
drivercfg.BuildFlags = append(drivercfg.BuildFlags, "-mod=readonly")
}
dr, err := driver(&drivercfg, pkgs...)
dr, err := driver(cfg, pkgs...)
if err != nil {
return err
}