Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
|
2023-05-19
| ||
| 21:49 | gopls/internal/lsp/cache: only delete the most relevant mod tidy handle For workspaces with a lot of modules, deleting every mod tidy handle on every save is too expensive. Approximate the correct behavior by deleting only the most relevant mod file. See the comments in the code for an explanation of why this is an approximation, and why is is probably acceptable. This decreases the DiagnoseSave benchmark for google-cloud-go to 550ms (from 1.8s). For golang/go#60089 Change-Id: I94bea0b00b13468f73f921db789292cfa2b8d3e9 Reviewed-on: https://go-review.googlesource.com/c/tools/+/496595 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> Leaf check-in: 86945f34a7 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 21:47 | internal/lsp/filecache: eliminate 'kind' directories This CL causes the kind component of each cache file to be represented as a suffix, and no longer a complete path segment. This avoids the creation of 7 directory trees (6 application kinds + cas) each containing 256 subdirectories. The proliferation of kinds was causing the storage requirements to increase well beyond (2.2x) the nominal budget, because the accounting for the latter ignores directories. This also reduces the number of directory lookups required for each file operation. Also, report the GOPLSCACHE environment variable and the computed executable-specific cache directory in the output of 'gopls stats'. Change-Id: Ibbebbf2bc10afd08b84444b8f71d0d110d5ae655 Reviewed-on: https://go-review.googlesource.com/c/tools/+/496437 Reviewed-by: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Alan Donovan <adonovan@google.com> check-in: ffe8f4c596 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:56 | gopls/internal/lsp: keep track of overlays on the files map The overlays method showed up as a hot spot in the google-cloud-go repo (via reloadOrphanedFiles), because it walks all files to find the small number of overlays. We already have a filesMap abstraction; use it to keep track of overlays in a separate map. For golang/go#60089 Change-Id: I62c6c688d012beaa4b0f255225993da961cb9dad Reviewed-on: https://go-review.googlesource.com/c/tools/+/496442 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: c5151cb57f user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:55 | gopls/internal/lsp/mod: optimizations for mod tidy diagnostics Run mod tidy diagnostics in parallel, and don't parse files to determine missing imports if there are no missing requires. BenchmarkDiagnoseSave: 8s->1.8s For golang/go#60089 Change-Id: I5d41827914e4eb9264b16ed14af323c017eb327c Reviewed-on: https://go-review.googlesource.com/c/tools/+/496439 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: c1e1631870 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:33 | gopls/internal/lsp/filecache: touch only files older than 1h This change implements an optimization similar to one in the go command's cache: we skip the chtimes(2) call to update the file access times unless it would change by at least one hour. This avoids turning every read into a write. It makes quite a difference to the Get benchmark: 330MB/s before, 430MB/s after. Change-Id: I5b5b6e99a1968c73bf1032b410bec989961c4a90 Reviewed-on: https://go-review.googlesource.com/c/tools/+/496438 Reviewed-by: Robert Findley <rfindley@google.com> Run-TryBot: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: a407d6bf94 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:22 | gopls/internal/regtest/bench: add a benchmark for diagnosing saves As we discovered while investigating golang/go#60089, mod tidy operations can significantly affect the amount of time it takes gopls to diagnose a saved file. Add a benchmark for this operation. For reference, this new benchmark takes 8s+ on google-cloud-go, vs 300ms for DiagnoseChange (without the save). Updates golang/go#60089 Change-Id: Ie88bd63dd7d205b8629173e7f84aa1aa9858016b Reviewed-on: https://go-review.googlesource.com/c/tools/+/496435 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: b95ec22055 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 19:02 | gopls/internal/lsp/cache: tweak error message Change-Id: I0dacb32e76b0e657d1e0893f71da8f1ce38b7d50 Reviewed-on: https://go-review.googlesource.com/c/tools/+/496441 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Auto-Submit: Alan Donovan <adonovan@google.com> check-in: f840b7dfe2 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:24 | gopls/internal/lsp/filecache: delayed tweaks from code review These were supposed to be part of CL 495800 but I failed to notice that 'git codereview mail' failed due to my failure to refresh my SSO certs. Sorry for the fumble. Change-Id: I8e08d2624cc365defc6f5848e9178267f313917d Reviewed-on: https://go-review.googlesource.com/c/tools/+/496436 Run-TryBot: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: b34174c5f4 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 15:17 | gopls/internal/lsp/debug: remove memory monitoring I noticed in passing that the withNames parameter no longer had any effect since the relevant logic was deleted in CL 466975. (https://go-review.googlesource.com/c/tools/+/466975/48/gopls/internal/lsp/debug/serve.go#b548). The whole memory monitoring feature is redundant wrt the pprof endpoints, and was never used. This change deletes it. Change-Id: Id8a084b70b6f49d6c95e563b167f99afc68cff9b Reviewed-on: https://go-review.googlesource.com/c/tools/+/496191 Run-TryBot: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Auto-Submit: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Robert Findley <rfindley@google.com> check-in: aca50c2c32 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 14:45 | gopls/internal/lsp/filecache: avoid flock This CL changes the implementation of the filecache to use a scheme similar to that used by the go command's cache. Instead of atomic rename(2), or flock(2), it instead relies on the atomicity in practice of writes to small files (in our case 32 bytes, the size of a SHA256 hash). A cache entry now consists of two files, a kind="cas" file that holds the cache value, keyed by its SHA256 hash, and an index file, whose name is formed from the user-provided kind and key, and whose content is the SHA256 hash that is a key into the CAS. Writes to the CAS may race, so we check the integrity of everything we read back from it using SHA256. Writes to the index files may also race, but we assume that small writes are in practice atomic. The memory-based LRU cache has beeen temporarily disabled so that we can soak test the new implementation for a while. We expect this to be significantly more reliable, and also faster. Change-Id: I25cf341b90c985dcab015df770be579ea786bd06 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495800 Run-TryBot: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Auto-Submit: Alan Donovan <adonovan@google.com> check-in: d6bee579bc user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-18
| ||
| 17:04 | gopls/internal/lsp/cache: fix race in adhoc reloading To avoid inconsistent state where we load command-line-arguments packages for files that would be contained in an ad-hoc package, ensure that the view is loaded before doing file loads, when in ad-hoc mode. Along the way, introduce the concept of 'ViewType' discussed in our zero-config-gopls design (golang/go#57979). Furthermore, move certain data onto the immutable workspaceInformation type: - moduleMode depends only on ViewType - inGOPATH can be precomputed Updates golang/go#57979 Fixes golang/go#57209 Change-Id: If54cea65fbc72e6e704eccc6fe59d30ae5d01069 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495256 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 770d5fcf20 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-17
| ||
| 20:54 | go/analysis/passes/slog: fix Group kv offset The first argument to Group is a key, so its value in the kvFuncs map should be 1, not zero. The test was also calling Group wrong. Change-Id: Iafb176b361d5fdc50c28cffe46f49dea29553c63 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495976 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Jonathan Amsterdam <jba@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 69b2c0a33c user: jba@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 15:38 | cover: eliminate an unnecessary fsync in TestParseProfiles CL 179377 added TestParseProfiles, and used a call to (*os.File).Sync instead of closing the file to flush its pending writes. Unfortunately, on some filesystems Sync is fabulously expensive — it may flush all pending writes everywhere on the filesystem, instead of just flushing the writes to the one file, and flushes all the way to disk even though this test really only needs tho writes to be observable in the same process. Instead, we can simplify the test significantly by using os.WriteFile to write and flush the file's contents. Fixes golang/go#57481. Change-Id: I7cda28fb6e9c8183dedadf79dbafe7e870ec0c42 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495798 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> check-in: ffcf4d465c user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 01:52 | go/ssa: fix typo in package docs In go.dev/cl/457436, a new MultiConvert instruction was added, but it was documented in the package docs as GenericConvert (the name originally used in the CL). Change-Id: I576184b599431163818b5cb6acc55b2773ac9997 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495263 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Auto-Submit: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 295c2fb733 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-16
| ||
| 21:21 | gopls: update go.mod for v0.12.0-pre.2 Remove the replace directive and update x/tools. For golang/go#59818 Change-Id: I949598f4ccf9f708f5314f3d8f1faf05c0f55b9f Reviewed-on: https://go-review.googlesource.com/c/tools/+/495262 Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Jamal Carvalho <jamal@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Leaf check-in: 3289ce8fb5 user: rfindley@google.com tags: origin/gopls-release-branch.0.12, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:41 | all: merge master (743372f) into gopls-release-branch.0.12 For golang/go#59818 Conflicts: - gopls/go.sum Merge List: + 2023-05-16 743372f58 gopls/internal/lsp/debug: limit to 100 recent trace entries + 2023-05-16 522243a71 go/ssa/interp: avoid hard-coding GOOS and GOARCH + 2023-05-16 a0593829f gopls/internal/lsp/cache: fail workspace load on context cancellation + 2023-05-16 e5c8d4db7 gopls/internal/lsp/cache: unexport ValidBuildConfiguration + 2023-05-16 f4e8a711a go/ssa: use core type for composite literal addresses + 2023-05-16 3b25dbddd go/ssa: use core types for array length + 2023-05-16 e7048d518 gopls/internal/lsp/filecache: front with a 100MB in-memory LRU cache + 2023-05-16 8c0fcd2c6 gopls/internal/lsp/lru: extract LRU logic to a standalone package + 2023-05-16 19d700c67 go/ssa/interp: use the actual GOOS and GOARCH to interpret tests + 2023-05-16 9dcd3d5dc gopls/internal/lsp/filecache: limit Get parallelism too + 2023-05-16 7f203f0c3 go/ssa: consolidate use of underlying pointer + 2023-05-15 a13793e31 gopls/internal/lsp: add quick-fixes to manage the go.work file + 2023-05-15 12a0517ad internal/gcimporter: improve error handling + 2023-05-15 5eb1eb932 gopls/internal/lsp/cache: call filecache.Set asynchronously + 2023-05-15 35fe77a6b gopls/internal/lsp/filecache: limit parallelism in Set + 2023-05-12 1c9fe3f82 gopls: improve diagnostics for orphaned files + 2023-05-12 ad74ff634 go/gcexportdata: drop support for the ancient binary format + 2023-05-11 01128f9fb gopls/internal/lsp/source: fix bug renaming field to unexported + 2023-05-11 cd39d2be4 internal/lsp/cache: support loading multiple orphaned files + 2023-05-11 abeba28e7 gopls/internal/regtest/marker: support proxy files in marker tests + 2023-05-11 18186f0c6 go/analysis/passes/slog: simplify function matching + 2023-05-11 9aa9d134d cmd/bisect, internal/bisect: use more precise skip suffixes, written in hex + 2023-05-11 3034d9c3a gopls/internal/lsp/cmd: append, don't overwrite, in PublishDiagnostics + 2023-05-10 4318d630d gopls: change the default value of "symbolScope" to "all" + 2023-05-10 f44f50e39 gopls/internal/lsp/source: implementation: report builtin 'error' + 2023-05-10 787e7207e gopls/internal/lsp: optimize checks for ignored files + 2023-05-10 4ed7de18d gopls: add google-cloud-go as a benchmark repo + 2023-05-10 d799eba7d gopls: additional instrumentation during goimports + 2023-05-10 a7e7dc44c go/ssa: rename test cases in TestGenericBodies + 2023-05-10 d668f586c gopls/internal/regtest/marker: require cgo for issue59944.txt + 2023-05-10 005fa64ff go/analysis/passes/slog: add check for slog.Group + 2023-05-09 033e628ac go/ssa: more reindentation of TestGenericBodies + 2023-05-09 231084894 go/ssa: reindent test cases in TestGenericBodies + 2023-05-09 90e9c6599 gopls/internal/lsp/cache: skip type errors after parse errors + 2023-05-09 08b24db43 gopls/internal/lsp/regtest: check for "// @marker" rogue space + 2023-05-09 b9c20f65e gopls/internal/regtest/marker: migrate @diag to new marker tests + 2023-05-09 4609d79b0 cmd/bisect: add -compile and -godebug shorthands + 2023-05-09 ddfa2200a internal/fuzzy: improvements to the symbol scoring algorithm + 2023-05-09 344924276 go/types/objectpath: don't panic when receiver is missing a method + 2023-05-08 0809ec2e4 gopls/internal/lsp/source: document {All,Workspace}Metadata + 2023-05-08 8f7fb01dd go/analysis/unitchecker: add test of go vet on std + 2023-05-08 23e52a3e1 bisect: diagnose bad targets better + 2023-05-08 d5af8894f gopls: set GOWORK=off for loads from debug and safetoken tests + 2023-05-08 c93329a94 go/analysis/passes/printf: reshorten diagnostic about %s in Println call + 2023-05-08 62197261c go.mod: update golang.org/x dependencies + 2023-05-08 f4d143ebc go/ssa: cleanup TestGenericBodies to pickup package name + 2023-05-08 3d99ebe9f gopls/diff/unified: remove redundant information + 2023-05-05 479f5c690 go/ssa: Origin is only available after building + 2023-05-05 6d1dd1267 go/analysis: simplify unusedresult + 2023-05-05 4a2dd0d22 go/callgraph/vta: allow pointer to type parameter in sliceArrayElem + 2023-05-05 7c6c2b7f7 go/ssa: keep syntax for instantiations + 2023-05-05 ce1b96b59 all: fix some comments + 2023-05-05 0500fd459 go/ssa: use core type in address + 2023-05-05 8e9b1853d gopls/internal/lsp/source: add the "symbolScope" option + 2023-05-05 4ac71c005 internal/imports: sort fixes for deterministic results + 2023-05-05 573915d85 gopls/internal/lsp/cache: always init the resolver in runProcessEnvFunc + 2023-05-05 dd0938175 bisect: move to internal/bisect until API is reviewed + 2023-05-05 516063ad6 bisect, cmd/bisect: add new library and tool + 2023-05-05 58fedf60c internal/diffp: add patience diff from main repo + 2023-05-04 7b684a9a8 gopls: port import tests to the new marker framework + 2023-05-04 87974e327 gopls/internal/lsp/filecache: skip TestConcurrency on plan9 builder + 2023-05-04 c64bb76ef gopls/internal/lsp/source: make infertypeargs a convenience analyzer + 2023-05-04 91b7a8edf go/ssa: use origin method in source lookup + 2023-05-03 ba892bba5 go/types/internal/play: show formatted AST + 2023-05-03 7df6af86e gopls/internal/lsp/filecache: silently discard CRC errors on macOS + 2023-05-02 2563079e1 go/analysis/passes/printf: update directive diagnostic message + 2023-05-02 3f6c3b33c gopls: upgrade to latest version of LSP protocol + 2023-05-02 216928d1c gopls: port function extraction marker tests to the new framework + 2023-05-02 2415ce159 gopls: skip tests that load gopls packages if x/tools replacement is missing + 2023-05-02 17e5ef3c9 gopls/internal/lsp/cache: remove cycle check from buildMetadata + 2023-05-02 affb5fc1a gopls/internal/lsp/source: fix crash in definitions of builtins + 2023-05-02 558d7011f gopls/internal/lsp/source: fix another bug in reference expansion + 2023-05-01 51dfad7f4 gopls: port workspace/symbol marker tests to the new framework + 2023-05-01 c6b5780e5 gopls: fix build at older Go versions + 2023-05-01 7590fe4de gopls/internal/lsp: hover over linkname directives. + 2023-05-01 ec61ad324 gopls/internal/lsp/source: add invert-if-condition refactoring + 2023-04-28 5283a0178 go/packages: delete TestCgoOption as it doesn't test the cgo option + 2023-04-28 e2f3b2509 gopls/internal/bug: record bug reports in file cache + 2023-04-28 ab24b7b9e gopls/internal/regtest/marker: add a test case for issue #59554 + 2023-04-28 8235df3e0 gopls/internal/regtest/marker: port format tests to the new framework + 2023-04-28 80dc03199 internal/diff: unified: match diff delete for empty file + 2023-04-27 165099bd7 all: remove repeated definite articles + 2023-04-27 ac40903ee internal/gocommand: simplify GoVersion invocation + 2023-04-27 9e0a7b105 copyright: don't require checkout to be named tools + 2023-04-26 94ed378f9 internal/lsp/testdata: update for new diagnostic from go list + 2023-04-26 a5c37ba21 gopls/internal/regtest/marker: skip on small machines + 2023-04-25 76e1037d7 internal/testenv: assume that mobile platforms are small machines + 2023-04-25 17e2d7055 gopls/internal/bug: remove unused Data parameter + 2023-04-25 dd89a2eb9 gopls/internal/lsp: remove now redundant debouncing logic + 2023-04-25 2a9398d92 go/analysis/passes/slog: do not report multiple incorrect keys + 2023-04-25 4baa3dc48 gopls/internal/bug: move bug package into gopls Change-Id: I4cb08fe593bbc00102dbd266ad4ef1b6a1150e08 check-in: 4b75c1113b user: rfindley@google.com tags: origin/gopls-release-branch.0.12, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:18 | gopls/internal/lsp/debug: limit to 100 recent trace entries Before this CL, we would keep traces for up to a minute, even if we exceeded the maximum number of recent traces. This could lead to an unusable trace debug page, as traces can be very chatty during large operations. Change the condition to enforce a strict limit on the number of traces to keep, and remove age-based eviction. Change-Id: Ie9b44e2c5ef236c3e23e3eb21b7eb55da74295da Reviewed-on: https://go-review.googlesource.com/c/tools/+/495259 Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Robert Findley <rfindley@google.com> Auto-Submit: Robert Findley <rfindley@google.com> check-in: 1450b79654 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 19:01 | go/ssa/interp: avoid hard-coding GOOS and GOARCH GOOS and GOARCH are not necessarily present in the environment at all, so overriding them in interp doesn't have a clear purpose, especially given that CL 495255 no longer overrides them in the build context. Unfortunately, the fake (reduced) GOROOT/src used for the test also hard-coded the runtime constants for GOOS and GOARCH. Since in general the testdata directory is not writable (it may be in the module cache), we need to copy the fake GOROOT into a testdata directory in order to modify it. This change also deletes an unused function that I noticed while investigating. Fixes golang/go#60226 (maybe). Change-Id: I409292af76d411efb8a3b4ca6d8d929b53325610 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495258 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Robert Findley <rfindley@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> check-in: cb95273552 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:22 | gopls/internal/lsp/cache: fail workspace load on context cancellation If the context was cancelled early during initialization, it was possible that all module load scopes get skipped, because ParseMod returns the context error. As a result, the subsequent load would succeed trivially, even though the context was cancelled. After analyzing the reinitialization codepath, it seems very plausible to encounter this race, and it explains the flakiness of TestReinitializeRepeatedly -- I have found nothing else that would explain the failure mode observed in logs, that the reload bypasses initialization. Fix this by returning when context errors are encountered. Fixes golang/go#57780 Change-Id: I3fb971503f280131c59146bc586da45dd2ed1126 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495058 gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> check-in: 6126bc39c3 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:21 | gopls/internal/lsp/cache: unexport ValidBuildConfiguration In general, the source package should not need to know about build configurations. Remove this unused interface method, and unexport. Change-Id: I91ba24e5bc2d172046ccaf3c46d2eb3f70e7bc42 Reviewed-on: https://go-review.googlesource.com/c/tools/+/495057 Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: bb70e55536 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:05 | go/ssa: use core type for composite literal addresses Dereferences using the core type during compLit and when creating addresses for composite literals. Also adds a new utility fieldOf for selecting a field from a type whose core type is a struct. Change-Id: I2fd0a1caf99819d0b9be5f3ba79a00f8053565e3 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494978 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Tim King <taking@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: d23a3b0189 user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:04 | go/ssa: use core types for array length Updates len, cap and range built-ins to use the array length based on the core types of the array or pointer to array. These are not constant in the language but can be treated as constants during translation. Change-Id: Iec9ca61edfd51a503a4fe99e57562bff1eb56309 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494977 Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Tim King <taking@google.com> check-in: 55e7babc9c user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:59 | gopls/internal/lsp/filecache: front with a 100MB in-memory LRU cache Put a 100MB in-memory LRU cache in front of the filecache, to reduce I/O for repeated cache access, such as we observe with workspace diagnostics or implements queries. Updates golang/go#60089 For golang/go#57987 Change-Id: I01a1fcca7dcf26416d4cdb578a7a2674765c9f08 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494100 Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: d2156e7570 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:58 | gopls/internal/lsp/lru: extract LRU logic to a standalone package Extract a simple LRU package from the parseCache implementation (which itself was extracted from an initial implementation of the filecache). In a subsequent CL, this package will be used to reduce I/O in the filecache package. For golang/go#57987 Change-Id: I307f397b71654226d4e0e1c532a81cfde49af831 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494099 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: dda0c13a97 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:48 | go/ssa/interp: use the actual GOOS and GOARCH to interpret tests This incidentally uncovered a bug in the `fitsInt` helper function, which was computing the wrong bounds on 32-bit platforms (as if int were 4 bits instead of 4 bytes), which is also fixed. Fixes golang/go#60226 (hopefully). Change-Id: I56afdd3063dce233696f1e7a873dac4ee9ca231f Reviewed-on: https://go-review.googlesource.com/c/tools/+/495255 Reviewed-by: Robert Findley <rfindley@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 1ba85bbda8 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 03:26 | gopls/internal/lsp/filecache: limit Get parallelism too This change causes Get to be subject to the same concurrency-limiting semaphore just added to Set, as a user (predictably) encountered thread exhaustion in this operation too. Oddly, the Get benchmark doesn't seem to be limited by the value of 128, or even smaller values. Updates golang/go#60089 Change-Id: Ie4632cbc4cdd6536558b2067a3d115cf4fa17fae Reviewed-on: https://go-review.googlesource.com/c/tools/+/495055 Run-TryBot: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 1e099dbf3a user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 01:58 | go/ssa: consolidate use of underlying pointer Consolidates the use of typ.Underlying().(*types.Pointer) to the deptr function. This function replace isPointer and the old deref function. Both have been replaced. This allows for tracking where underlying pointers are used. Follow up CLs will try to move away from using underlying pointers when necessary. Switches deptr for mustDeref in obviously safe locations (alloc.Type()). Adds a new deref function that uses the core type instead of the underlying type. Change-Id: Id51f95e87cb40a13d43fd595d1f20b21b8325eeb Reviewed-on: https://go-review.googlesource.com/c/tools/+/494976 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Tim King <taking@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: 4252c869e6 user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-15
| ||
| 22:02 | gopls/internal/lsp: add quick-fixes to manage the go.work file Update OrphanedFileDiagnostics to provide suggested fixes for diagnostics related to modules that are not activated by a relevant go.work file. Also remove the Snapshot.openFiles method, which was completely redundant with Snapshot.overlays. Fixes golang/go#53880 Change-Id: I7e7aed97fb0b93415fe3dc383b6daea15241f31b Reviewed-on: https://go-review.googlesource.com/c/tools/+/494738 Reviewed-by: Mouffull <dickmouth8340@gmail.com> Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 27df432869 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 19:46 | internal/gcimporter: improve error handling This change: - updates the error message reported when the importer recovers from a panic. - updates the set of test input files to include examples of the formats used in go1.16-go1.20. - adds a recover handler to UImportData, for symmetry with IImportData. This was exposed by the new test case. - fixes an accidental shadowing bug that suppressed the bundle format version check. Fixes golang/go#59179 Change-Id: Ib6c20fc15e2051481fccba593607a7df0e01bc74 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494676 Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 7315a25785 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 18:46 | gopls/internal/lsp/cache: call filecache.Set asynchronously Change-Id: Idbdba4c6aa90c608ad537d64be5dfb0afc82048e Reviewed-on: https://go-review.googlesource.com/c/tools/+/494996 Reviewed-by: Robert Findley <rfindley@google.com> Run-TryBot: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 1dbbad9da8 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 18:37 | gopls/internal/lsp/filecache: limit parallelism in Set There may be thousands of concurrent calls to Set, and each one currently results in an OS thread for I/O. Users with lower values of ulimit -u may run into thread exhaustion (EAGAIN from pthread_create). This change adds a counting semaphore to Set to limit the parallelism to 128. Although higher values do yield modest further gains according to the new benchmark, the performance of Set is not very important since it is always called asynchronously by gopls. Fixes golang/go#60089 Change-Id: I0e744f10c0ae490c74fe0a68745e6a40edc53829 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494995 Auto-Submit: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> check-in: 99b9bc6885 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-12
| ||
| 22:29 | gopls: improve diagnostics for orphaned files Fix some of the very misleading errors gopls produces when it can't find packages for a file. Try to diagnose _why_ a file is orphaned by the workspace, rather than just guess that it may be due to build constraints. Only put diagnostics on files that we can prove are excluded in some way. To achieve this, we need to be able to differentiate command-line-arguments packages that are standalone packages, so add a corresponding field on source.Metadata. Refactor/simplify some functions that operate on open files. In the future, we really should track overlays separately in the snapshot, but that is out-of-scope for now. Also make a minor fix for TestImplementationsOfError: I use $HOME/src as my development directory, so GOROOT/src is $HOME/src/go/src. For golang/go#53880 Change-Id: I8e9fa7d4f2c03ce3daaab7c6d119b4276ec6da79 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494675 Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 91ec001343 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 19:05 | go/gcexportdata: drop support for the ancient binary format Compilers and tools haven't produced it since go1.11, several years ago now. Change-Id: I5056c5bba81030a2eba5e3931190b8249524aed7 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494442 gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Robert Findley <rfindley@google.com> check-in: d9741b1e3f user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-11
| ||
| 21:12 | gopls/internal/lsp/source: fix bug renaming field to unexported The logic in rename that detects whether renaming an exported identifier (to an unexported name) would break existing references from other packages was only executed in the declaring package, where it is of course never needed. This change causes it to run unconditionally. Conceptually, this CL replaces a return with a forward goto, but the indentation makes the diff messier. Fixes golang/go#59403 Change-Id: Iad0963ce80bf1412481199acc1fcc238ad91225e Reviewed-on: https://go-review.googlesource.com/c/tools/+/494440 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Alan Donovan <adonovan@google.com> Auto-Submit: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> check-in: 318360dc6b user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:14 | internal/lsp/cache: support loading multiple orphaned files go/packages returns at most one command-line-arguments package per query. Previously, this led to N^2 loading of orphaned files. CL 480197 fixed this by marking all queried files as unloadable after a load completes. However, as a result gopls would fail to load multiple orphaned files. Fix this properly by calling Load once for each orphaned file. Fixes golang/go#59318 Change-Id: Ibfb3742fcb70ea3976d8b1b5b384fe6b97350cf4 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494401 Reviewed-by: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: fb76fc49ae user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 20:07 | gopls/internal/regtest/marker: support proxy files in marker tests Add new functionality to wire-in a file-based GOPROXY value for marker tests containing files starting with "proxy/". Use this to port an example regression test, adding better coverage for go.work support while doing so. To solve one of the main pain points from working with proxy files in the regtests, add a -write_sumfile=dir1,dir2 flag to the test framework, to allow auto-generation of go.sum files. Along the way, loosen the diagnostic matching logic, ignoring end positions. Change-Id: I8421cea807fd87dcbe6b1619720a46b3f1f7bc3f Reviewed-on: https://go-review.googlesource.com/c/tools/+/494396 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> check-in: 7a590b450d user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 18:41 | go/analysis/passes/slog: simplify function matching Simplify the identification of functions and methods that need to be checked by making them more explicit. Change-Id: I81efcb763613cf10de87902c6c3bbc929d35bae5 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494155 Run-TryBot: Jonathan Amsterdam <jba@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Tim King <taking@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 4208e75aa6 user: jba@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 03:57 | cmd/bisect, internal/bisect: use more precise skip suffixes, written in hex If the target is misbehaving and some changes unlock others, then in general bisect is going to have a hard time and can fail to identify the problem. It will usually say "target fails inconsistently". One robustness improvement we can make is to use more bits than necessary for exclusions, which reduces the chances of accidentally excluding changes that simply didn't trigger this time around but might still be part of a bug later. To do this, we calculate the minimum number of bits needed to distinguish all the =y and =n changes observed, round up to a number of hex digits, and then add another digit for good measure. Change-Id: I02354f281370806c3eb4d85911a6ca92fcfcae05 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494276 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com> check-in: 4167319369 user: rsc@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 03:00 | gopls/internal/lsp/cmd: append, don't overwrite, in PublishDiagnostics This change causes the CLI tool's PublishDiagnostics operation to accumulate, rather than overwrite, the slice of file diagnostics, under the hypothesis that it is receiving multiple events and the later ones are clobbering the earlier ones, causing golang/go#59475. We perform a crude de-duplication in case this should result in duplicate diagnostics. A more robust approach using textDocument/diagnostic will be added in a follow-up. Also, clarify the mutex's responsibility, copy (don't alias) the diagnostics slice in the critical section, and tidy up the surrounding code. Updates golang/go#59475 Change-Id: Ifbb4974ef00ab7bd6547de28f052cec86462230b Reviewed-on: https://go-review.googlesource.com/c/tools/+/494275 Run-TryBot: Alan Donovan <adonovan@google.com> Auto-Submit: Alan Donovan <adonovan@google.com> Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: a158c5cc83 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-10
| ||
| 22:20 | gopls: change the default value of "symbolScope" to "all" Following discussion on golang/go#37236, let's be a bit careful before changing behavior. For gopls@v0.12.0, we can keep the default of this setting at "all", and solicit feedback for which default our users prefer. Updates golang/go#37236 Change-Id: Ia92382d808983a6ce566c85d06b82afd2375fb90 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494217 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Alan Donovan <adonovan@google.com> check-in: b1e465e73d user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 21:31 | gopls/internal/lsp/source: implementation: report builtin 'error' This change causes the implementation query to report the (fake) location in builtin.go of the the built-in error type, if the query type satisfies that interface. Similarly, the error.Error method. Also, a regtest. Fixes golang/go#59527 Change-Id: I61b179c33c5dfa2c5933f6cae79e7245f83292f2 Reviewed-on: https://go-review.googlesource.com/c/tools/+/483535 Run-TryBot: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 6f3186d360 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 18:30 | gopls/internal/lsp: optimize checks for ignored files Optimize checking for ignored files to avoid unnecessary checks, and only build prefixes once. Along the way, fix a bug where path segments were not handled correctly in the ignore check. Encapsulate the check to make this easy to test. As a result, the DiagnoseChange/google-cloud-go benchmark improved ~5x from ~1.5s to 300ms. Also remove span.Dir, which tended to lead to unnecessary filepath->span->filepath conversions. Inline it in the one place where it was correct. For golang/go#60089 Change-Id: Id24d05b504b43e6a6d9b77b5b578583e1351de31 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494097 Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: a506bdfda0 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:46 | gopls: add google-cloud-go as a benchmark repo This repo is large, and exercises use-cases with many workspace modules. For golang/go#60089 Change-Id: I93b9c99ce52bd7ae25f65fdb9bf0568c25375411 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494096 Reviewed-by: Alan Donovan <adonovan@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 88cb885199 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:50 | gopls: additional instrumentation during goimports Add some visibility into goimports operations, by instrumenting spans in top-level imports and gocommand operations. This may be the first time we instrument non-gopls code in this way, but it should be safe as other build targets (e.g. the goimports or gopackages commands) do not set a global exporter, and therefore the cost of event instrumentation should be minimal. For golang/go#59216 Change-Id: Id2f8fe05d6b61e96cdd2d41cc43b3d4c3cf39e21 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494095 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 778f9c2f74 user: rfindley@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 16:48 | go/ssa: rename test cases in TestGenericBodies Previous test cases were an alphabetical series starting at p and wrapping around to l. These are now numbered from p00 to p23. Change-Id: I4ce4f4f9e591cdcff2e67e26103654bb04c5d932 Reviewed-on: https://go-review.googlesource.com/c/tools/+/493058 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Tim King <taking@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: 6c4817419a user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 15:37 | gopls/internal/regtest/marker: require cgo for issue59944.txt This test is failing on the nocgo builders. Change-Id: I0f3577eee84d29154c9f0fab833b10502f049861 Reviewed-on: https://go-review.googlesource.com/c/tools/+/494176 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Findley <rfindley@google.com> Auto-Submit: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: 444b0322e5 user: gobot@golang.org tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 11:33 | go/analysis/passes/slog: add check for slog.Group slog.Group now takes a ...any, so add it to the list of functions to check. Change-Id: I73025158a6cf55c7a6689a36f3c2c58df6d0db3f Reviewed-on: https://go-review.googlesource.com/c/tools/+/494098 Run-TryBot: Jonathan Amsterdam <jba@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Tim King <taking@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> check-in: bd6f606ef5 user: jba@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
|
2023-05-09
| ||
| 22:03 | go/ssa: more reindentation of TestGenericBodies This was split into two parts to be easier to review in gerrit. Change-Id: Ie308e06d9c49836f49451006075a3d6fd10cfaee Reviewed-on: https://go-review.googlesource.com/c/tools/+/493057 Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Tim King <taking@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: db75d5af35 user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 21:13 | go/ssa: reindent test cases in TestGenericBodies Change-Id: Icbd0cd9ea7b1b42fa8ed7fe222e83748a1cb8e21 Reviewed-on: https://go-review.googlesource.com/c/tools/+/493097 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Tim King <taking@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> check-in: f46577a63f user: taking@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |
| 17:51 | gopls/internal/lsp/cache: skip type errors after parse errors Parser error recovery can delete large swathes of source code; see golang/go#58833 for examples. Type checking syntax trees containing syntax errors may therefore result in a large number of spurious type errors. So, this change suppressed type errors in the presence of syntax errors. Fiddling with these tests is really surprisingly time consuming. Fixes golang/go#59888 Change-Id: Ib489ecf46652c5a346d9caad89fd059434c620f8 Reviewed-on: https://go-review.googlesource.com/c/tools/+/493616 TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Robert Findley <rfindley@google.com> Run-TryBot: Alan Donovan <adonovan@google.com> check-in: 45f7845042 user: adonovan@google.com tags: master, origin/internal-branch.go1.17-vendor, origin/internal-branch.go1.18-vendor, origin/internal-branch.go1.19-vendor, origin/internal-branch.go1.20-vendor, origin/release-branch.go1.15, trunk | |