{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":27146054,"defaultBranch":"master","name":"tools","ownerLogin":"golang","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-11-25T21:07:26.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4314092?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715017884.0","currentOid":""},"activityList":{"items":[{"before":"1e9d12dd1f25735a6fcefd3665be4684ba23fc58","after":"b6235391adb3b7f8bcfc4df81055e8f023de2688","ref":"refs/heads/master","pushedAt":"2024-05-31T21:21:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/cache: suppress \"internal\" import check on Bazel\n\nThe go command treats imports of packages whose path contains\n\"/internal/\" specially, and gopls must simulate it in several\nplaces. However, other build systems such as Bazel have their\nown mechanisms for representing visibility.\n\nThis CL suppresses the check for packages obtained from a\nbuild system other than go list. (We derive this information\nfrom the view type, which in turn simulates the go/packages\ndriver protocol switch using $GOPACKAGESDRIVER, etc.)\n\nAdded test using Rob's new pass-through gopackagesdriver.\n\nFixes golang/go#66856\n\nChange-Id: I6e0671caeabe2146d397eb56d5cd4f7a40384370\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587931\nReviewed-by: Robert Findley \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/cache: suppress \"internal\" import check on Bazel"}},{"before":"3c293ad67a98a86d273bf69c6a742f04a6a367a3","after":"1e9d12dd1f25735a6fcefd3665be4684ba23fc58","ref":"refs/heads/master","pushedAt":"2024-05-31T21:13:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/packages: pass -overlay to all 'go list' invocations\n\nEven in the trivial go list invocations (to enumerate\nmodules or type sizes), the complex behavior of Go modules\nrequires that the appropriate overlays are visible, since\nthey may define go.mod files.\n\nAlso, a test case suggested by Dominik Honnef.\n\nFixes golang/go#67644\n\nChange-Id: I19348ae7270769de438a7f4ce69c3f7a55fb2f55\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588936\nReviewed-by: Michael Matloob \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"go/packages: pass -overlay to all 'go list' invocations"}},{"before":"da9cad458cd6667bed47e00d8143ec17e54b8960","after":"3c293ad67a98a86d273bf69c6a742f04a6a367a3","ref":"refs/heads/master","pushedAt":"2024-05-31T20:31:16.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"internal/cache: invalidate broken imports when package files change\n\nWhen a file->package association changes, it may fix broken imports.\nFix this invalidation in Snapshot.clone.\n\nFixes golang/go#66384\n\nChange-Id: If0f491548043a30bb6302bf207733f6f458f2574\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588764\nReviewed-by: Alan Donovan \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"internal/cache: invalidate broken imports when package files change"}},{"before":"71b7fa927f0e01deab0aa0af3f00322fb5534f6c","after":"da9cad458cd6667bed47e00d8143ec17e54b8960","ref":"refs/heads/master","pushedAt":"2024-05-31T19:15:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/packages: avoid unnecessary \"realpath\" on pwd\n\nGOPACKAGESDRIVER commands absolutize filenames\nrelative to their current working directory. However,\nos.Getwd may inadvertently expand out any symbolic\nlinks in the path, causing files to have the \"wrong\"\npath, and breaking various name-based equivalence tests\nthat are common in the go/packages domain.\n\nThis CL exploits the same trick used in gocommand to\nprevent os.Getwd from expanding symbolic links:\nif Stat(Getenv(PWD) returns the process's working\ndirectory, then the iterated \"..\" search (which\ninadvertently expands symlinks) is avoided.\n\nIt is unfortunate that driver writers must think about\nthis. Mostly it only shows up in tests, as that's\nwhere the subprocess directory varies from the parent\ndirectory.\n\nAlso, add -driver flag to gopackages debug helper,\nwhich causes it to use drivertest instead of go list\ndirectly.\n\nChange-Id: Ibe12531fe565e74ca1d2565805b0f2458803f6b4\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588767\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley ","shortMessageHtmlLink":"go/packages: avoid unnecessary \"realpath\" on pwd"}},{"before":"2f8e37823b92fde810bb2366b5acb1a024364251","after":"71b7fa927f0e01deab0aa0af3f00322fb5534f6c","ref":"refs/heads/master","pushedAt":"2024-05-31T16:36:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/callgraph/vta: save some heap allocations in the trie implementation\n\nThe mkLeaf and mkBranch functions use hash consing to dedup values, by\nconstructing the leaf or branch value, and inserting it into a hash map\nif the value is not already there.\n\nThis change uses two variables, one as the key for the map lookup, and a\nsecond for the map value. This leads the compiler to place the first on\nthe stack and the second on the heap, so that a heap allocation is only\ndone if there is a cache miss.\n\nThis can be a significant saving for large VTA type graphs.\n\nname old time/op new time/op delta\nTrieStandard-16 2.35µs ± 6% 2.03µs ± 5% -13.48% (p=0.008 n=5+5)\nTrieSmallWide-16 1.70µs ± 8% 1.41µs ± 5% -16.76% (p=0.008 n=5+5)\n\nname old alloc/op new alloc/op delta\nTrieStandard-16 1.20kB ± 9% 0.89kB ± 5% -26.33% (p=0.008 n=5+5)\nTrieSmallWide-16 812B ±12% 480B ± 5% -40.94% (p=0.008 n=5+5)\n\nname old allocs/op new allocs/op delta\nTrieStandard-16 6.00 ± 0% 3.00 ± 0% -50.00% (p=0.008 n=5+5)\nTrieSmallWide-16 8.00 ± 0% 1.00 ± 0% -87.50% (p=0.008 n=5+5)\n\nChange-Id: I7faeb5458320972f9a267ff7ead04b4e5c31dfb8\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588217\nTryBot-Result: Gopher Robot \nReviewed-by: Zvonimir Pavlinovic \nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Tim King \nReviewed-by: Alan Donovan \nRun-TryBot: Zvonimir Pavlinovic ","shortMessageHtmlLink":"go/callgraph/vta: save some heap allocations in the trie implementation"}},{"before":"624dbd05dd1cf1ff3de170afa6c745278c61671a","after":"2f8e37823b92fde810bb2366b5acb1a024364251","ref":"refs/heads/master","pushedAt":"2024-05-31T13:58:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/callgraph/vta: remove graph successors method\n\nIt is not used anywhere except tests, where it can be easily replaced.\n\nChange-Id: Iec816099b7ce24685e2b42591a243a322689f6a5\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587098\nLUCI-TryBot-Result: Go LUCI \nRun-TryBot: Zvonimir Pavlinovic \nReviewed-by: Tim King \nTryBot-Result: Gopher Robot ","shortMessageHtmlLink":"go/callgraph/vta: remove graph successors method"}},{"before":"4669dc77eea2d1d1ba38fa10c98817c7722f7586","after":"624dbd05dd1cf1ff3de170afa6c745278c61671a","ref":"refs/heads/master","pushedAt":"2024-05-30T23:22:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/analysis/passes/stringintconv: post gotypesalias=1 tweak\n\nstringintconv will return the alias name if available.\nMake the test agnostic.\n\nUpdates golang/go#64581\n\nChange-Id: I47d245c62f45cd6c02f45ba5eb770318dcb7cbec\nReviewed-on: https://go-review.googlesource.com/c/tools/+/577657\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley ","shortMessageHtmlLink":"go/analysis/passes/stringintconv: post gotypesalias=1 tweak"}},{"before":"6887e998b252e7b11671685aa429bebd0a2dd07d","after":"4669dc77eea2d1d1ba38fa10c98817c7722f7586","ref":"refs/heads/master","pushedAt":"2024-05-30T19:32:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/test/marker: simplify seedCache file\n\nSimplify the file used to seed the marker test cache, as suggested in CL\n588940.\n\nChange-Id: I421a3e013fcc17f2c6ab2ff5c269e6f360ca9d6e\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588942\nAuto-Submit: Alan Donovan \nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Alan Donovan ","shortMessageHtmlLink":"gopls/internal/test/marker: simplify seedCache file"}},{"before":"bd624fd45d0b1c09b2d44c8fea51b554ac4ea939","after":"6887e998b252e7b11671685aa429bebd0a2dd07d","ref":"refs/heads/master","pushedAt":"2024-05-30T19:19:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/cache: use a better view in viewOfLocked\n\nThe 'bestView' function was used in two places, where the meaning of\n'best' differed. When re-evaluating view definitions in selectViewDefs,\nwe may want to create a new view if none of them matched build tags.\nWhen operating on a file in viewOfLocked, we want to choose the most\nrelevant view out of the existing view definitions.\n\nIn golang/go#60776, we see that the latter concern was poorly handled by\nthe 'bestView' abstraction. Returning nil was not, in fact, best,\nbecause it resulted in the file being associated with the default AdHoc\nview, which doesn't know about modules.\n\nRefactor so that viewOfLocked chooses the most relevant view, even if\nnone match build tags. This causes the orphaned file diagnostic to more\naccurately report that the file is excluded due to build tags.\n\nFixes golang/go#60776\n\nChange-Id: I40f236b3b63468faa1dfe6ae6aeac590c952594f\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588941\nReviewed-by: Alan Donovan \nAuto-Submit: Robert Findley \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/cache: use a better view in viewOfLocked"}},{"before":"2e977dddbb6390ad373def7046089e5be447bfe7","after":"bd624fd45d0b1c09b2d44c8fea51b554ac4ea939","ref":"refs/heads/master","pushedAt":"2024-05-30T18:26:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls: make tests tolerant of new go/types error format\n\nCL 589118 is changing the format of go/types errors.\n\nUpdate tests and the unusedvariable analyzer to be tolerant of this new\nformat.\n\nFor golang/go#67685\n\nChange-Id: Ic1d3e663973edac3dcc6d0d6cc512fffd595eeb2\nReviewed-on: https://go-review.googlesource.com/c/tools/+/589455\nLUCI-TryBot-Result: Go LUCI \nAuto-Submit: Robert Findley \nReviewed-by: Robert Griesemer ","shortMessageHtmlLink":"gopls: make tests tolerant of new go/types error format"}},{"before":"8d54ca127f86136c8b84ad6f6820d9b2ad6b63cf","after":"2e977dddbb6390ad373def7046089e5be447bfe7","ref":"refs/heads/master","pushedAt":"2024-05-30T17:27:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"internal/drivertest: evaluate symlink before calling packages.Load\n\nFixes a test failure following the submission of CL 589135.\n\nChange-Id: I746d06d6a661552de472c21e7010d5b07ad261d3\nReviewed-on: https://go-review.googlesource.com/c/tools/+/589059\nReviewed-by: Hyang-Ah Hana Kim \nAuto-Submit: Robert Findley \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"internal/drivertest: evaluate symlink before calling packages.Load"}},{"before":"01018ba9edc26f327f5c78d72e7596b6bf23c480","after":"8d54ca127f86136c8b84ad6f6820d9b2ad6b63cf","ref":"refs/heads/master","pushedAt":"2024-05-30T16:14:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/test/marker: seed the cache before running tests\n\nThe marker tests are heavily parallelized, and many import common\nstandary library packages. As a result, depending on concurrency, they\nperform a LOT of duplicate type checking and analysis.\n\nSeeding the cache before running the tests resulted in an ~80% decrease\nin CPU time on my workstation, from ~250s to ~50s, which is close to the\n~40s of CPU time observed on the second invocation, which has a cache\nseeded by the previous run. I also observed a ~33% decrease in run time.\nAdmittedly my workstation has 48 cores, and so I'd expect less of an\nimprovement on smaller machines.\n\nChange-Id: Ied15062aa8d847a887cc8293c37cb3399e7a82b6\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588940\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Hyang-Ah Hana Kim ","shortMessageHtmlLink":"gopls/internal/test/marker: seed the cache before running tests"}},{"before":"019da392d771cb1afa7c5c23a0b794efc3627a20","after":"01018ba9edc26f327f5c78d72e7596b6bf23c480","ref":"refs/heads/master","pushedAt":"2024-05-30T12:59:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"Revert \"gopls/internal/settings: enable semantic tokens by default\"\n\nThis reverts CL 579337.\n\nReason for revert: need more work on staging this change in VS Code.\n\nChange-Id: I82eea17f96a0365bd616ee2617536f10869e08f2\nReviewed-on: https://go-review.googlesource.com/c/tools/+/589060\nAuto-Submit: Robert Findley \nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Hyang-Ah Hana Kim ","shortMessageHtmlLink":"Revert \"gopls/internal/settings: enable semantic tokens by default\""}},{"before":"30c880d92ff4987dc3b6fddcc65974ea7573dab8","after":"019da392d771cb1afa7c5c23a0b794efc3627a20","ref":"refs/heads/master","pushedAt":"2024-05-29T22:47:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/golang: OutgoingCalls: fix crash on unsafe.Slice\n\nAlso, audit the golang package for similar places where we\ndiscriminate builtins, and make them all use the new isBuiltin\nhelper, which is based on lack of a position instead of messing\naround with pkg==nil||pkg==types.Unsafe||...\n\"A symbol without a position\" is a fair definition of a built-in.\n\nFixes golang/go#66923\n\nChange-Id: I7f94b8d0f865f8c079f1164fd61121eefbb40522\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588937\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley \nAuto-Submit: Alan Donovan ","shortMessageHtmlLink":"gopls/internal/golang: OutgoingCalls: fix crash on unsafe.Slice"}},{"before":"d017f4a0a69a0355ad04cca042e62d694f16664a","after":"30c880d92ff4987dc3b6fddcc65974ea7573dab8","ref":"refs/heads/master","pushedAt":"2024-05-29T22:32:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/cache: improve missing import error message\n\nMake the missing import error knowledgeable of the view type, so that it\ncan correctly reference modules, GOROOT, GOPATH, or go/packages driver\nas applicable.\n\nWhile at it, fix some duplicated and broken logic for determining if the\nview is in go/packages driver mode, consolidate on representing the\ndriver accurately as GoEnv.EffectiveGOPACKAGESDRIVER.\n\nFixes golang/go#64980\n\nChange-Id: I7961aade981173098ab02cbe1862ac2eca2c394b\nReviewed-on: https://go-review.googlesource.com/c/tools/+/589215\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Alan Donovan \nAuto-Submit: Robert Findley ","shortMessageHtmlLink":"gopls/internal/cache: improve missing import error message"}},{"before":"e2290455dc6c8be5db3db6675cec11d94d03a8e1","after":"d017f4a0a69a0355ad04cca042e62d694f16664a","ref":"refs/heads/master","pushedAt":"2024-05-29T21:36:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/packages/internal/drivertest: a package for a fake go/packages driver\n\nAdd a new drivertest package that implements a fake go/packages driver,\nwhich simply wraps a call to a (non-driver) go/packages.Load. This will\nbe used for writing gopls tests in GOPACKAGESDRIVER mode.\n\nThe test for this new package turned up an asymmetric in Package JSON\nserialization: the IgnoredFiles field was not being set while\nunmarshalling. As you might imagine, this was initially very confusing.\n\nFixes golang/go#67615\n\nChange-Id: Ia400650947ade5984fa342cdafccfd4e80e9a4dd\nReviewed-on: https://go-review.googlesource.com/c/tools/+/589135\nLUCI-TryBot-Result: Go LUCI \nCommit-Queue: Alan Donovan \nReviewed-by: Alan Donovan \nAuto-Submit: Alan Donovan ","shortMessageHtmlLink":"go/packages/internal/drivertest: a package for a fake go/packages driver"}},{"before":"0215a5b8f4c9d670bf38828bcedb3a1129fff535","after":"e2290455dc6c8be5db3db6675cec11d94d03a8e1","ref":"refs/heads/master","pushedAt":"2024-05-29T14:14:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/callgraph/vta: avoid some temporary data structures using callbacks\n\nChange propTypes and siteCallees to call a supplied function for each\nvalue they yield, instead of returning a slice of all the values.\n\nChange resolve to return a map instead of a slice. Its output is passed\nto intersect, where the values were needed in a map.\n\nChange intersect to produce its output more directly, using the above.\n\nThese changes can significantly reduce the amount of heap data created\nfor large graphs.\n\nname old time/op new time/op delta\nVTA-16 629ms ± 1% 627ms ± 1% ~ (p=0.548 n=5+5)\n\nname old alloc/op new alloc/op delta\nVTA-16 88.9MB ± 0% 79.6MB ± 0% -10.49% (p=0.008 n=5+5)\n\nname old allocs/op new allocs/op delta\nVTA-16 1.92M ± 0% 1.83M ± 0% -4.84% (p=0.008 n=5+5)\n\nChange-Id: Ia143d3bb14df42980ce1b1bc027babd631d0d61c\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588218\nReviewed-by: Zvonimir Pavlinovic \nReviewed-by: Alan Donovan \nAuto-Submit: Alan Donovan \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"go/callgraph/vta: avoid some temporary data structures using callbacks"}},{"before":"f10a0f1c3b14ceefea1281987dfd66dfe95b26ad","after":"0215a5b8f4c9d670bf38828bcedb3a1129fff535","ref":"refs/heads/master","pushedAt":"2024-05-29T13:42:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/packages: document fields that are part of JSON schema\n\nPackage is both the \"cooked\" result data type of a Load\ncall, and the \"raw\" JSON schema used by DriverResponse.\n\nThis change documents the fields that are part of the\nprotocol, and ensures that the others are omitted from\nthe JSON encoding. (They are populated by the post-\nprocessing done by 'refine', if the appropriate Need\nbits are set.)\n\nAlso\n- document that there are a number of open bugs\n in places where it may be likely to help,\n particularly Mode-related issues.\n- document that Load returns new Packages,\n using distinct symbol realms (types.Importers).\n- document Overlays in slightly more detail.\n\nFixes golang/go#67614\nFixes golang/go#61418\nFixes golang/go#67601\nFixes golang/go#43850\nUpdates golang/go#65816\nUpdates golang/go#58726\nUpdates golang/go#56677\nUpdates golang/go#48226\nUpdates golang/go#63517\nUpdates golang/go#56633\n\nChange-Id: I2f5f2567baf61512042fc344fca56494f0f5e638\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588141\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley \nReviewed-by: Michael Matloob ","shortMessageHtmlLink":"go/packages: document fields that are part of JSON schema"}},{"before":"d940b335673153bd68f2d82860c96d4472ab6832","after":"f10a0f1c3b14ceefea1281987dfd66dfe95b26ad","ref":"refs/heads/master","pushedAt":"2024-05-28T17:36:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/golang: skip TestFreeRefs on js\n\nThis test was (surprisingly) the only source of failure on js/wasm. Skip\nit to keep the build dashboard clean.\n\nChange-Id: I69aa5b91152c313b5dba7d13a76fd6d32cd159a9\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588755\nAuto-Submit: Robert Findley \nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Hyang-Ah Hana Kim ","shortMessageHtmlLink":"gopls/internal/golang: skip TestFreeRefs on js"}},{"before":"e635bfa66ba35d6ae4b63f7ad9d5f275cc70badb","after":"d940b335673153bd68f2d82860c96d4472ab6832","ref":"refs/heads/master","pushedAt":"2024-05-28T17:19:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/server: support InsertReplaceEdit completion\n\nMany editors support two different operations when accepting\na completion item: insert and replace. LSP 3.16 introduced support\nfor both using `InsertReplaceEdit`. For clients that declare\ntextDocument.completion.insertReplaceSupport capability, gopls\ncan provide both insert/repace mode text edits.\n\nSee https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#completionItem\n\nVS Code client supports this capability, and users can switch\nthe mode with the editor.suggest.insertMode setting.\nNote that in VS Code, \"insert\" is the default. That means,\nproviding a different range for insert changes the\nuser-perceived completion behavior greatly.\n\nTo reduce potential regression, this CL sets a different range\nfor insert only if all of the following conditions are met:\n\n * there is a surrounding identifier token for the position.\n * when splitting the identifier surrounding the position\n to prefix and suffix, the suffix is not empty.\n * the suffix is not part of the candidate's insert text,\n which means the suffix may be deleted in replace mode.\n\nFixes golang/vscode-go#3365\nFixes golang/go#61215\n\nChange-Id: Ibe2476ddb9c13ecbaca7fb88cb3564912c4e5f4a\nReviewed-on: https://go-review.googlesource.com/c/tools/+/585275\nAuto-Submit: Hyang-Ah Hana Kim \nReviewed-by: Peter Weinberger \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/server: support InsertReplaceEdit completion"}},{"before":"7045d2e410bd668db9a552905f25cf86084546f1","after":"e635bfa66ba35d6ae4b63f7ad9d5f275cc70badb","ref":"refs/heads/master","pushedAt":"2024-05-28T15:48:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/golang: unexport more declarations\n\nI missed a few in my previous CL:\n- FindParam\n- ParamInfo and its fields\n- TestFn\n- TestFns (eliminated entirely)\n\nChange-Id: Ib8dabba73e679be5842bf1af359db80157446993\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587932\nAuto-Submit: Alan Donovan \nReviewed-by: Robert Findley \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/golang: unexport more declarations"}},{"before":"e1b14a1915035211a0ae3bd8b7d2d663eceddc2e","after":"7045d2e410bd668db9a552905f25cf86084546f1","ref":"refs/heads/master","pushedAt":"2024-05-25T11:57:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"go/analysis/passes/nilness: fix bug with MakeInterface(TypeParam)\n\nAn interface conversion such as any(x) can be a MakeInterface\n(if x is a non-interface type) or a ChangeInterface (if x has\nan interface type), and their nilabilities differ.\nIf x's type is a type parameter, SSA uses MakeInterface, so\nwe have to ascertain whether the type parameter is definitely\nor only maybe a concrete type in order to determine its\nnilability.\n\nThis change required exposing NormalTerms to x/tools,\nand making it take the Underlying of its argument,\nso that NormalTerms(error) = NormalTerms(any) = [].\nPreviously, NormalTerms(error) was [error].\n\nFixes golang/go#66835\nChange-Id: Idf9c39afeaeab918b0f8e6288dd93570f7cb7081\nReviewed-on: https://go-review.googlesource.com/c/tools/+/578938\nReviewed-by: Tim King \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"go/analysis/passes/nilness: fix bug with MakeInterface(TypeParam)"}},{"before":"34db5bc3c8783aaa27926ee095b4e43a4180218f","after":"e1b14a1915035211a0ae3bd8b7d2d663eceddc2e","ref":"refs/heads/master","pushedAt":"2024-05-24T14:38:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/server: avoid VS Code lightbulb\n\nVS Code has a complex and undocumented logic for presenting\nCode Actions of various kinds in the user interface.\nThis CL documents the empirically observed behavior at\nCodeActionKind.\n\nPreviously, users found that \"nearly always available\"\ncode actions such as \"Inline call to f\" were a distracting\nsource of lightbulb icons in the UI. This change suppresses\nnon-diagnostic-associated Code Actions (such as \"Inline call\")\nwhen the CodeAction request does not have TriggerKind=Invoked.\n(Invoked means the CodeAction request was caused by opening\na menu, as opposed to mere cursor motion.)\n\nAlso, rename BundleQuickFixes et al using \"lazy\" instead\nof \"quick\" as QuickFix has a different special meaning\nand lazy fixes do not necesarily have kind \"quickfix\"\n(though all currently do).\n\nFixes golang/go#65167\nUpdate golang/go#40438\n\nChange-Id: I83563e1bb476e56a8404443d7e48b7c240bfa2e0\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587555\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley ","shortMessageHtmlLink":"gopls/internal/server: avoid VS Code lightbulb"}},{"before":"56f50e32fb700f5c8ac4aa505111aa5e9fb32272","after":"34db5bc3c8783aaa27926ee095b4e43a4180218f","ref":"refs/heads/master","pushedAt":"2024-05-24T13:57:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls: initial support for godebug directive in go.mod and go.work\n\nFor now, incorporate godebug support by just updating x/mod and write\nsome tests. Diagnostics are mispositioned due to golang/go#67623.\n\nWhile writing tests, I realized that the expect package still did not\nsupport go.work files. Add this missing support. Also, remove a stale\ncomment from go.mod comment extraction, and simplify.\n\nFixes golang/go#67583\n\nChange-Id: I9d9bb53824b8c817ee18f51a0cfca63842565513\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588055\nReviewed-by: Alan Donovan \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls: initial support for godebug directive in go.mod and go.work"}},{"before":"3629652b9d2d31e53e1d4d09a5013c184222e75c","after":"56f50e32fb700f5c8ac4aa505111aa5e9fb32272","ref":"refs/heads/master","pushedAt":"2024-05-24T01:11:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/doc: split codelenses out of settings\n\nThis CL splits codelenses.md out of settings.md, since\nthey aren't settings.\n\nThis reduces the indentation level of settings by one,\nsince we can dispense with a heading. Also, don't increase\nthe nesting level for each level of nested dotted options:\nui.foo.bar should not be rendered smaller than ui.foo.\nUse only h2 for groupings and h3 for settings.\n\nAlso:\n- improve the introduction.\n- add anchors for groupings.\n- delete handwritten .md doc for obsolete newDiff setting.\n- add TODOs for some existing bugs in the generator.\n\nChange-Id: If6e7fff028b2c372e0d766d3d092bd0e41d61486\nReviewed-on: https://go-review.googlesource.com/c/tools/+/586879\nReviewed-by: Robert Findley \nAuto-Submit: Alan Donovan \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/doc: split codelenses out of settings"}},{"before":"fb52877ad270b50b81dfc1df705d40e013ec8359","after":"3629652b9d2d31e53e1d4d09a5013c184222e75c","ref":"refs/heads/master","pushedAt":"2024-05-24T00:40:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/analysis/simplifyrange: suppress on range-over-func\n\ngo1.23's range-over-func currently requires all the vars be\ndeclared, blank if necessary. That may change, but for now,\nsuppress the checker.\n\nFixes golang/go#67239\nUpdates golang/go#65236\n\nChange-Id: I3e783fcfcb6a6f01f3acf62428cd9accbeb160c1\nReviewed-on: https://go-review.googlesource.com/c/tools/+/588056\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Robert Findley \nAuto-Submit: Alan Donovan \nCommit-Queue: Alan Donovan ","shortMessageHtmlLink":"gopls/internal/analysis/simplifyrange: suppress on range-over-func"}},{"before":"4646dbf8efc7b186a86579ae1aacea14bff4639c","after":"fb52877ad270b50b81dfc1df705d40e013ec8359","ref":"refs/heads/master","pushedAt":"2024-05-22T19:28:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"all: sync golang.org/x/telemetry@bda5523\n\nPicks up bug fix CL 586098 and CL 586195.\n\nChange-Id: Idc8b0c7f6b5202ae3ade4bcdf7349725a3c01eef\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587196\nLUCI-TryBot-Result: Go LUCI \nReviewed-by: Peter Weinberger ","shortMessageHtmlLink":"all: sync golang.org/x/telemetry@bda5523"}},{"before":"bc5e086cf27c875dd35bfd01d937024aec329e5d","after":"4646dbf8efc7b186a86579ae1aacea14bff4639c","ref":"refs/heads/master","pushedAt":"2024-05-22T18:44:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/protocol: customize InsertReplaceEdit JSON unmarshal\n\nInsertReplaceEdit is used instead of TextEdit in CompletionItem\nin editors that support it. These two types are alike in appearance\nbut can be differentiated by the presence or absence of\ncertain properties. UnmarshalJSON of the sum type tries to\nunmarshal as TextEdit only if unmarshal as InsertReplaceEdit fails.\nDue to this similarity, unmarshal with the different type never fails.\n\nAdd a custom JSON unmarshaller for InsertReplaceEdit,\nso it fails when the required fields are missing. That makes\nOr_CompletionItem_textEdit decode TextEdit type correctly.\n\nFor golang/go#40871\nFor golang/go#61215\n\nChange-Id: I62471fa973fa376cad5eb3934522ff21c14e3647\nReviewed-on: https://go-review.googlesource.com/c/tools/+/587135\nReviewed-by: Peter Weinberger \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/protocol: customize InsertReplaceEdit JSON unmarshal"}},{"before":"32cec1159814d8eea14ddf0687b4e5767b83c53c","after":"bc5e086cf27c875dd35bfd01d937024aec329e5d","ref":"refs/heads/master","pushedAt":"2024-05-22T16:46:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/golang: unexport several functions\n\nAll of these functions are no longer referenced across\npackages since we cleaned up the server/lsprpc/golang split.\n\nCanExtractVariable\nEmbedDefinition\nEnclosingStaticCall\nFormatNodeFile\nLinknameDefinition\nCanExtractFunction\n\nUpdates golang/go#67573\n\nChange-Id: I18490b333d79bad83eb5fcc34688fb41381771d1\nReviewed-on: https://go-review.googlesource.com/c/tools/+/586781\nReviewed-by: Robert Findley \nAuto-Submit: Alan Donovan \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/golang: unexport several functions"}},{"before":"c3aae998cf1d05bd3465e576730c67a9df71b4fa","after":"32cec1159814d8eea14ddf0687b4e5767b83c53c","ref":"refs/heads/master","pushedAt":"2024-05-21T16:24:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gopherbot","name":"GopherBot","path":"/gopherbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8566911?s=80&v=4"},"commit":{"message":"gopls/internal/test/integration: fix race in TestGCDetails_Toggle\n\nThe AfterChange predicate is insufficient for awaiting the GC details\ncommand. We must await the specific diagnosis of GC details.\n\nFix the predicate, and update the documentation for AfterChange to more\nclearly spell out what it awaits.\n\nFixes golang/go#67428\n\nChange-Id: I4923a4dac773f2c953a21bf026cadca4b9370ef3\nReviewed-on: https://go-review.googlesource.com/c/tools/+/586878\nReviewed-by: Alan Donovan \nAuto-Submit: Robert Findley \nLUCI-TryBot-Result: Go LUCI ","shortMessageHtmlLink":"gopls/internal/test/integration: fix race in TestGCDetails_Toggle"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWWgyIwA","startCursor":null,"endCursor":null}},"title":"Activity · golang/tools"}