vim-go v1.26 Release Notes

Release Date: 2022-04-23 // 5 months ago
  • BACKWARDS INCOMPATIBILITIES:

    ๐Ÿ‘Œ IMPROVEMENTS:

    • โž• Add mapping for formatting, (go-fmt). [GH-3209]
    • โž• Add tr snippet for "testing.T".Run. [GH-3210] [GH-3220]
    • ๐Ÿ‘‰ Use go env GOBIN to determine GOBIN's value. [GH-3207]
    • List register in the debugger. [GH-3221]
    • ๐Ÿš€ Install the latest release of tools that seem to be using tags to do releases instead of installing from their master/main branch. [GH-3227]
    • ๐Ÿ”ฆ Expose error message when gopls cannot be found and g:go_echo_command_info is set. [GH-3244]
    • ๐Ÿš€ Install all tools in module aware mode in preparation for Go 1.17 release. [GH-3226]
    • Add g:go_doc_balloon to allow godoc to be displayed in hover balloons. [GH-3252]
    • ๐Ÿ‘• Default to using revive in place of golint. [GH-3248] [GH-3401]
    • ๐Ÿ–จ Teach :GoDebugPrint to show function call return values. [GH-3256]
    • Do not enable keyify unless in GOPATH. [GH-3095]
    • ๐Ÿ‘‰ Show LSP messages to users. [GH-3058]
    • Check omnifunc's value before executing actions on CompletedDone event. [GH-3274]
    • ๐Ÿ— Highlight new form of build constraints. [GH-3292]
    • ๐Ÿ“ฆ Teach :GoDiagnostics to handle package pattern arguments. [GH-3297]
    • Add g:go_debug_subsitute_paths to support debugging applications when the source is hosted in a local location that is different from where the binary was compiled. [GH-3301]
    • 0๏ธโƒฃ Wrap text in the fzf preview window by default. [GH-3310]
    • Wait for up to five seconds when opening a connection to a remote debugger. [GH-3312]
    • Install tools with go install instead of go get. [GH-3317] [GH-3370]
    • โšก๏ธ Update :GoPlay to use go.dev/play instead of play.golang.org. [GH-3331] [GH-3348]
    • Recurse local variables more deeply when debugging. [GH-3344]
    • โž• Add syntax elements for any and comparable types. [GH-3351]
    • โž• Add syntax support for go.work files. [GH-3375]
    • ๐Ÿ‘‰ Show the current goroutine at the top of the list of goroutines when debugging. [GH-3379]
    • โž• Add :GoModReload and autocmd events to reload go.mod when it changes on disk and is open in a buffer. [GH-3387] [GH-3391]
    • โž• Add syntax support for generics. [GH-3397]
    • โœ‚ Remove invalid numeric literal highlighting. [GH-3404]

    ๐Ÿ› BUG FIXES:

    • ๐Ÿ– Handle terminating parenthesis on hexadecimal values. [GH-3216]
    • ๐Ÿ›  Fix applying text edits from gopls. [GH-3231]
    • ๐Ÿ’ป Apply arguments to :GoCoverageBrowser. [GH-3240]
    • Fix :GoFillStruct when g:go_fillstruct_mode is gopls. [GH-3279]
    • ๐Ÿ‘• Fix example in g:go_metalinter_enabled documentation. [GH-3291]
    • ๐Ÿ›  Fix changing directories in older Vims. [GH-3299]
    • Highlight the receive type when method declarations that omit the receiver identifier. [GH-3306]
    • Do not highlight misspellings in import paths. [GH-3308] [GH-3321]
    • ๐Ÿ– Handle shell quoting when execing. [GH-3323]
    • Do not automatically add directories from the module cache into the LSP workspace. [GH-3343]
    • Resolve symlinks in autocmd events. [GH-3353]
    • ๐Ÿ›  Fix :GoRename in Neovim so that it does not take 10 seconds to complete. [GH-3386]
    • ๐Ÿ›  Fix :GoDebugConnect argument handling. [GH-3400]

Previous changes from v1.25

  • BACKWARDS INCOMPATIBILITIES:

    ๐Ÿ‘Œ IMPROVEMENTS:

    • ๐Ÿ”ง Clarify allowed values for gopls related configuration options. [GH-3016] [GH-3017]
    • Add g:go_fillstruct_mode to allow :GoFillStruct to be satisfied by either fillstruct or by gopls. [GH-3018]
    • โž• Add :GoDebugTestFunc to debug the test function surrounding the current cursor location. [GH-3011]
    • Implicitly add a workspace when a file from a module is opened. [GH-3028]
    • โž• Add support for using static check as the gometalinter. [GH-3036] [GH-3133]
    • Add g:go_debug_mappings to allow the debug key mappings to be customized. [GH-3035] [GH-3143]
    • 0๏ธโƒฃ Use gopls as the default instead of guru to satisfy :GoImplements. [GH-3034]
    • Deprecate g:go_diagnostics_enabledand addg:go_diagnostics_level` to allow more finely grained control of the handling of diagnostics messages. [GH-3050] [GH-3052] [GH-3119]
    • Add support for allowing g:go_gopls_local to specify different local imports values per workspace. [GH-3053]
    • ๐Ÿ‘Œ Improve :GoDecls and :GoDeclsDir display. [GH-3081]
    • Preserve existing window layout when debugging and g:go_debug_windows is empty. [GH-3068]
    • ๐Ÿ‘‰ Show identifier in fzf's preview window with :GoDecls and :GoDeclsDir. [GH-3083]
    • ๐Ÿ‘‰ Use gopls for :GoCallers. [GH-3088] [GH-3090] [GH-3141] [GH-3142]
    • โšก๏ธ Update denite integration to work with python3.9. [GH-3097]
    • โž• Add syntax highlighting for go.sum files. [GH-3102]
    • ๐Ÿ”„ Change the default from metalinter to staticcheck. [GH-3126]
    • Add g:go_debug_preserve_layout to prevent :GoDebug and friends from closing windows. [GH-3125]
    • โž• Add support for fillstruct's new -tags flag. [GH-3156]
    • Display map key and slice elements more usefully in the local vars window in debug mode. [GH-3170]
    • โž• Add support for go.mod's retract directive. [GH-3166]
    • Do not execute disabled code actions. [GH-3155]
    • โž• Add :GoDebugConnect to support connecting to an instance of delve started outside of vim-go. [GH-3179]
    • 0๏ธโƒฃ Use gopls to adjust imports and formatting by default. [GH-2986]
    • Set the filetype for .tmpl files to gohtmltmpl even if it's already been set. [GH-3146]

    ๐Ÿ› BUG FIXES:

    • โœ‚ Remove implications that terminal mode is only applied for Neovim. [GH-3010]
    • ๐Ÿ“š Correct documentation to clearly show the default value for g:go_gopls_options. [GH-3019]
    • Allow truthy values for g:go_gopls_gofumpt. [GH-3017] [GH-3022]
    • ๐Ÿ›  Fix quickfix title for :GoMetaLinter. [GH-3040]
    • ๐Ÿ”„ Change key mapping for (go-debug-halt) to F8 to resolve collision with key mapping for (go-debug-print). [GH-3047]
    • ๐Ÿ– Handle gopls v0.5.2 addition of a prefix on the expected code actions names. [GH-3077]
    • โช Make sure all buffers' mappings are restored when debugging stops. [GH-3048]
    • Return early when g:go_referrers_modes is gopls and gopls is disabled. [GH-3090]
    • ๐Ÿ‘• Handle yet another error format produced by golangci-lint. [GH-3094]
    • ๐Ÿ– Handle additional ways that gopls can provide links for godoc. [GH-3112]
    • Remove implication that g:go_def_reuse_buffer only applies to split variant of jumping to a definition. [GH-3128]
    • Organize imports correctly when gopls formatting uses gofumpt. [GH-3154]
    • ๐Ÿ“‡ Rename all instances of an identifier when g:go_rename_mode is gopls. [GH-3181] [GH-3182]
    • Terminate a case statement in the select snippet with a colon. [GH-3185]
    • ๐Ÿ›  Fix syntax highlighting in template files. [GH-3188] [GH-3189]