vim-go v1.24 Release Notes

Release Date: 2020-09-15 // 8 months ago
  • ๐Ÿ‘Œ IMPROVEMENTS:

    • Clarify how g:go_imports_autosave and g:go_fmt_autosave interact. [GH-2893]
    • Document what the working directory will be for :GoRun. [GH-2898]
    • โž• Add Ultisnip snippet for wrapping errors. [GH-2883]
    • Beautify the godoc pop up window border. [GH-2900]
    • Default g:go_doc_url to https://pkg.go.dev. [GH-2884]
    • Default g:go_gopls_options to [-remote=auto] to share gopls instances with other plugins and multiple instances of Vim. [GH-2905]
    • ๐Ÿ‘‰ Use the module root as the working directory when renaming so that all references to the symbol will be renamed when in module aware mode and g:go_rename_command is set to gopls. [GH-2917]
    • ๐Ÿ“‡ Change g:go_rename_command's default to gopls. [GH-2922]
    • Do not send unnecessary textDocument/didChange notifications to gopls. [GH-2902] [GH-2930]
    • Stop the debugger when the process being debugged exits. [GH-2921]
    • ๐Ÿ“ฆ Use the module package cache as a source of packages candidates when trying to complete package names. [GH-2936] [GH-2939]
    • ๐Ÿ‘ Allow interaction with Vim while waiting for a breakpoint to be hit while debugging. [GH-2932]
    • โ™ป๏ธ Refactor Vim signs used for debugging breakpoints to avoid id collision with other plugins. [GH-2943]
    • โ™ป๏ธ Refactor debugger's rpc response handling to be asynchronous so that Vim will be responsive while the program being debugged is executing. [GH-2948] [GH-2952]
    • Warn when the debugger breaks in a file that has changed since debugging started. [GH-2950]
    • Enable go-run mappings that use the terminal to work with Vim in addition to Neovim. [GH-2956]
    • ๐Ÿ‘‰ Use existing diagnostics for the file when the file hasn't changed and g:go_metalinter_command is gopls. [GH-2960]
    • Add a new option, g:go_code_completion_icase, to allow ignoring case when filtering completion results. [GH-2961]
      • Make sure tools are not cross-compiled with :GoInstallBinaries and :GoUpdateBinaries. [GH-2982] [GH-2988]
    • โž• Add :GoDebugHalt to allow a program being debugged to be paused before it hits a breakpoint. [GH-2983]
    • Clear highlighting of the current line when after resuming when debugging. [GH-2984]
    • โž• Add :GoDebugAttach to debug a running process. [GH-2989]
    • Add g:go_term_reuse option to allow the reuse of a terminal window. [GH-2990]
    • โž• Add official support for using gopls' gofumpt workspace setting via g:go_gopls_gofumpt. [GH-2994] [GH-3005]
    • โž• Add support for using gopls' workspace settings that are otherwise not yet officially supported by vim-go. [GH-2994]

    ๐Ÿ› BUG FIXES:

    • ๐Ÿ›  Fix call to non-existent function in terminal mode edge case. [GH-2895]
    • Do not show errors when adding a text property for highlighting fails. [GH-2892]
    • ๐Ÿ‘• Include errcheck in g:go_metalinter_enabled's default. [GH-2903]
    • ๐Ÿ›  Fix display of completion selection information on command-line when g:go_echo_go_info is enabled. [GH-2907]
    • Prevent :GoDebugBreakpoint from causing delve to exit. [GH-2908]
    • ๐Ÿ‘‰ Use the resolved directory name for gopls' working directory when go.mod is in a symlinked path. [GH-2913]
    • ๐Ÿ›  Fix buffer reuse with :GoDef. [GH-2928]
    • ๐Ÿ– Handle breakpoints that are already set before calling :GoDebugStart or :GoDebugTest in some locales that cause the sign place output to vary. [GH-2921]
    • ๐Ÿ– Handle diagnostic errors at the end of a .go file. [GH-2942]
    • Fix the go-implements mapping to use respect g:go_implements_mode. [GH-2944]
    • ๐Ÿ– Handle null results from gopls when getting definitions or type definitions from virtual files. [GH-2951]
    • ๐Ÿ›  Fix warning when Neovim is older than v0.4.0. [GH-2959]
    • Correct documentation that referred to g:go_imports_command to refer to g:go_imports_mode instead. [GH-2969]
    • Remove reference to gocode in error message when g:go_info_mode is set to an unsupported value. [GH-2978]
    • ๐Ÿ”ง Make sure debugging commands are configured when debugging a second time within a single Vim session. [GH-2985]
    • ๐Ÿ“š Correct documentation in for :GoModifyTags when adding a specific tag value. [GH-3001]
    • ๐Ÿ›  Fix the path given to gopls when let g:go_metalinter='gopls' and :GoMetaLinter is called without any arguments. [GH-2992]
    • ๐Ÿ”ง Do not override a user's configuration for GoDebugBreakpoint or GoDebugCurrent highlight groups. [GH-2998]
    • Apply gopls text edits correctly that insert solitary newlines. [GH-3000]

Previous changes from v1.24-rc.1

  • ๐Ÿš€ This is a pre-release for vim-go. Please checkout the changelog for this release.

    ๐Ÿ‘ Do you want to support vim-go? Checkout the fully optional donation option, a way to support vim-go's ongoing development directly: https://www.patreon.com/bhcleek