1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:54:43 -07:00
go/internal
Muir Manders d73e1c7e25 internal/lsp: fix errors when adding new file to existing package
Previously when you added a new file to an existing package, the new
file would get stuck with the "no package for file" error until you
saved the file and then made changed a different file in the
package. There were two changes required to fix the errors:

First, we need to invalidate the package cache when a new file is
added to a package so that the package will actually re-parse and
re-type check. We now notice if file names changed when updating a
package's metadata and invalidate the package cache accordingly.

Second, when dealing with overlay (unsaved) files, we need to map
the *goFile to the package even if we fail to parse the
file (e.g. the new file fails to parse when it is empty). If we don't
map it to the package, the package won't get refreshed as the file is
changed.

Fixes golang/go#32341

Change-Id: I1a728fbedc79da7d5fe69554a5893efcd1e1d902
GitHub-Last-Rev: e7c3d4c1f8f73b12c87ee76d868cc04893e55808
GitHub-Pull-Request: golang/tools#111
Reviewed-on: https://go-review.googlesource.com/c/tools/+/181417
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-06-11 22:22:05 +00:00
..
apidiff apidiff: represent a Report as a list of Changes 2019-04-22 23:39:26 +00:00
fastwalk internal/fastwalk: avoid slice bounds out of range for long file names 2018-11-12 23:16:31 +00:00
gopathwalk imports: stop using go/packages for modules 2019-01-22 20:29:12 +00:00
imports internal/imports: suggest x for x_tests 2019-06-10 21:48:47 +00:00
jsonrpc2 internal/jsonrpc2: adding rpc trace tasks 2019-06-03 17:43:23 +00:00
lsp internal/lsp: fix errors when adding new file to existing package 2019-06-11 22:22:05 +00:00
memoize internal/memoize: a new library to memoize functions 2019-06-10 23:17:49 +00:00
module imports: stop using go/packages for modules 2019-01-22 20:29:12 +00:00
semver go/packages: add name= query 2018-10-16 20:20:09 +00:00
span internal/span: handle empty paths correctly 2019-06-11 15:43:01 +00:00
tool internal/tool: add a small package to unify the flag handling across all our tools 2018-12-17 23:08:00 +00:00
txtar imports: stop using go/packages for modules 2019-01-22 20:29:12 +00:00