gopls/v0.8.4
版本发布时间: 2022-05-19 22:55:24
golang/tools最新发布版本:gopls/v0.16.2(2024-09-06 01:01:04)
This release contains fixes for a few crashes, minor performance improvements, and a couple of small new features. See below for details.
See "What's Next" for a preview of what the team is working on.
New Features
New analyzer for //go:embed
comments
Gopls now includes an analyzer for go:embed
comment directives. At the moment, this analyzer checks that the "embed" import is present, but more analyses are planned for the future. See golang/go#50262 for more information.
Improved hover for imports
Hovering over an imported path now gives you the full package doc.
Final support for Go 1.13
Per our support window, gopls v0.8.4 will be the final gopls release to support being built with Go 1.13. See golang/go#52982 for details.
Bugfixes and Performance improvements
- Faster symbol indexing. Gopls builds a symbol index the first time symbol search is invoked. That indexing should be 3-4x faster with this release.
- Improved metadata invalidation (AKA fewer restarts). v0.8.4 fixes a couple of bugs that lead to gopls getting confused about packages and needing to be restarted. We're aware of more bugs of this nature, but are working on eliminating the need to ever restart gopls.
A full list of all issues fixed can be found in the gopls/v0.8.4 milestone. To report a new problem, please file a new issue at https://go.dev/issues/new.
Thank you to our contributors!
Thank you for your contributions, @alandonovan, @ansaba, @findleyr, @hyangah, @marwan-at-work, @muirdm, @suzmue, and @dle8!
What's next?
The next planned gopls release is v0.9.0
. We're excited about features and improvements on the horizon. For example:
-
improved go.work support. With
go.work
files, Go 1.18 fundamentally changed the way we define workspaces. We're working on expanding our support to better integrate with theGOWORK
environment variable, vendoring, and thedirectoryFilters
setting, and to help users better understand how to configure their workspace. - performance improvements. Performance continues to be a major pain point for our users. We're working on reducing CPU usage while editing. We're also laying the foundation for better indexing to reduce our memory footprint.
- package renaming. We're working on golang/go#41567, to support renaming a package via the textDocument/rename request.
As always, thank you for filing issues and feature requests. Your feedback helps us improve!