Skip to content
This repository has been archived by the owner on May 7, 2021. It is now read-only.

v5.0.0

Compare
Choose a tag to compare
@joefitzgerald joefitzgerald released this 19 Dec 18:56
· 498 commits to master since this release
c1fcd8d

The theme of this release is simplification. The verdict is in: the experiment (in v4.x.x) of decomposing go-plus into a collection of loosely coupled packages collaborating via services was not successful. It resulted in multiple levels of indirection, hampering the ability for people to:

  • report issues
  • find package settings
  • understand the code base
  • contribute to the package

This release returns to a mostly-monolithic package, with four bundled dependencies. In the prior version, these dependencies were automatically installed. That led to some inflexibility when you didn't want some of those dependencies installed (e.g. a portion of the amazingly constructive comment here, and my response here), and that wasn't nice. We're sorry!

Now you have choice, and will be prompted prior to the installation of hyperclick, go-debug, linter, and go-signature-statusbar as well as any future packages we bring to your attention via this mechanism. If you choose not to install something (via the Never button), this choice will be remembered.

The release is not just shuffling of code from one architecture to another. There's lots of new functionality. Read below for more details:

Major Changes

  • 🆕 Allow the go-plus panel to have vertical or horizontal orientations (#488, #498, thanks @simurai)
    panel-orientation
  • 🆕 Display function signature information for the identifier under the cursor in the status bar (via go-signature-statusbar, thanks @wndhydrnt)
    statusbar
  • 🆕 go-plus is now a hyperclick provider, allowing you to press cmd (macOS) or alt (linux, windows) and then hover over identifiers, clicking on them to go to definition
    godef
  • 🆕 Allow test coverage highlighting to be displayed in the gutter instead of in the editor itself (#509, thanks @xpressivecode)
    coverage
  • 🎱 Bundled dependencies are no longer installed automatically; you are prompted to install the three external packages (go-signature-statusbar, hyperclick, linter, and go-debug) and if you choose never, the package will not prompt you to install them again (#464, #469)
  • ⏪ Consolidated go-config, go-get, builder-go, tester-go, gofmt, autocomplete-go, gometalinter-linter, navigator-go, godoc, gorename, go-hyperclick packages into go-plus (#503, thanks for the help @zmb3, @lloiser)
  • Consolidate package configuration and arrange it into related sections (#503)

Minor Changes

  • Activate package via the core:loaded-shell-environment activationHook to ensure a patched environment is available for users of OS X / Linux in some launch scenarios (e.g. Dock / Unity Launcher)
  • Allow tests to be run with the -v flag (joefitzgerald/tester-go#35, thanks @nextrevision)
  • Add a timeout to executor, defaulting to 10 seconds; this minimizes the likelihood of runaway test processes, etc.
  • Escape XML in test output (#493)
  • Allow view providers to supply tab metadata (assists external packages like go-debug in adding panel tabs to the go-plus panel)

Detailed changes: v4.3.2...v5.0.0