1
0
Fork 0
mirror of synced 2024-12-22 15:08:57 -05:00
ultimate-vim/sources_non_forked/vim-go/CHANGELOG.md
2016-05-14 12:57:54 +01:00

94 lines
5 KiB
Markdown

## 1.7 (unreleased)
FEATURES:
* New **`:GoImpl`** command that generates method stubs for implementing an interface. Checkout the [demo](https://twitter.com/fatih/status/729991365581545472) to see how it works. [gh-846]
* New `<C-w><C-]>` and `<C-w>]>` shortcuts to split current window and jumpt to the identifier under cursor. [gh-838]
IMPROVEMENTS:
* Enable passing the `-tags` flag to `:GoDef`. Now you can pass build tags to `:GoDef` via `:GoGuruTags` or `g:go_guru_tags`
* Internal refactoring to use custom `system()` function that wraps both the standard `system()` call and `vimproc`. Now all system calls will take advantage and will use `vimproc` if installed. [gh-801]
* Added new `http.HandlerFunc` snippets with `hf` and `hhf` shortcuts [gh-816]
* Added new `Example` and `Benchmark` snippets with `example` and `benchmark` shortcuts [gh-836]
* Search tool binaries first in `GOBIN` and then in `PATH` as most of vim-go users installs it to `GOBIN` mostly [gh-823]
BUG FIXES:
* Fix `(go-freevars)` plug mapping to work as in visual mode instead of noncompatible normal mode [gh-832]
* Commands based on guru now shows a more meaningful error message instead of just showing the exit status (-1)
* Fix `:GoCoverage` accidently enabling syntax highlighting for users who don't use syntax (i.e syntax off) [gh-827]
* Fix commenting out block of texts for Go templates (filetype gothtmltmpl) [gh-813]
* Fix `:GoImplements` failing because of an empty scope definition. Now we default to current package to make it usable.
* Fix `:GoPlay` posting to non HTTPS url. [gh-847]
## 1.6 (April 25, 2016)
FEATURES:
* New `CHANGELOG.md` file (which you're reading now). This will make it easier
for me to track changes and release versions
* **`:GoCoverage`** is now highlighting the current source file for
covered/uncovered lines. If called again it runs the tests and updates the
annotation. Use `:GoCoverageClear` to clear the coverage annotation.
This is a pretty good addition to vim-go and I suggest to check out the gif
that shows it in action: https://twitter.com/fatih/status/716722650383564800
[gh-786]
* **`:GoCoverageToggle`** just like `:GoCoverage` but acts as a toggle. If run
again it clears the annotation.
* **`:GoCoverageBrowser`** opens a new annotated HTML page. This is the old
`:GoCoverage` behavior [gh-786]
* **`:GoDoc`** uses now [gogetdoc](https://github.com/zmb3/gogetdoc) to
lookup and display the comment documentation for the identifier under the
cursor. This is more superior as it support looking up dot imports, named
imports and imports where package name and file name are different [gh-782]
* **`guru support`**: `oracle` is replaced by the new tool `guru`. `oracle.vim`
is therefore renamed to `guru.vim`. I've also refactored the code to make it
much more easier to maintain and add additional features in future (such as
upcoming JSON decoding). vim-go is now fully compatible with `guru`. Please
be sure you have installed `guru`. You can easily do it with
`:GoInstallBinaries`.
* **`:GoDef`** uses now `guru definition` under the hood instead of `godef`.
This fixes the following issues: 1. dot imports 2. vendor imports 3. folder
!= package name imports. The tool `godef` is also deprecated and not used
anymore.
* **`:GoDef`** does have now history of the call stack. This means you can
easily jump back to your last entry. This can be done with the new command
`:GoDefPop` or the mapping `CTRL-t`. To see the stack and jump between entries
you can use the new command `:GoDefStack`, which shows the list of all stack
entries. To reset the stack list anytime you can call `:GoDefStackClear`
[gh-776]
IMPROVEMENTS:
* **`:GoCoverage`** is executed asynchronously when used within Neovim [gh-686]
* **`:GoTestFunc`** supports now testable examples [gh-794]
* **`:GoDef`** can jump to existing buffers instead of opening a new window
(split, vsplit or tab). By default it's disabled to not break the old
behavior, can be enabled with `let g:go_def_reuse_buffer = 1`
BUG FIXES:
* Fix not showing documentation for dot, named and package/file name being different imports [gh-332]
* Term mode: fix closing location list if result is successful after a failed attempt [gh-768]
* Syntax: fix gotexttmpl identifier highlighting [gh-778]
* Doc: fix wrong wording for `go-run` mapping. It's for the whole main package,
not for the current file
BACKWARDS INCOMPATIBILITIES:
* `:GoDef` doesn't accept any identifier as an argument. This is not suported
via `guru definition` and also was not widely used either. Also with this, we
significantly simplified the existing def.vim code
* `:GoOracleScope` and `:GoOracleTags` are deprecated in favor of
`:GoGuruScope` and `:GoGuruTags`. Also `g:go_oracle_scope` is renamed to
`g:go_guru_scope`
* `g:go_guru_scope` accepts a variable in type of `list` instead of `string`.
i.g: `let g:go_guru_scope = ["github.com/fatih/structs", "golang.org/x/tools/..."]`
## Previous releases
Previous changelogs can be found here: https://github.com/fatih/vim-go/releases