Go the Distance: GoLand 2018.1 is Here!

Andrey Cheptsov

We’re thrilled to announce that GoLand 2018.1 is now available for download.

This release is an important milestone for our team as it’s the first massive update to the IDE since its launch four months ago. The update focuses on making the coding assistance, the IDE is proud of, even smarter, and also on polishing up the integration of many of other tools the IDE runs with along the way. The update supports partial Git commits, integrates Dep, makes it possible to debug local Go processes, improves Docker Compose support, features smart coding assistance for editing Kubernetes resource files, and much more. Here’s a list of the most notable changes:

  • Go
    • Dep integration
    • Run and Debug
      • Attaching Debugger to local processes
      • Running multiple files via Build run configuration
    • Coding assistance
      • Full support for Go 1.10
      • Move refactoring (within a single package)
      • Negate completion
      • New Postfix templates: .if and .p
      • Default values completion
      • Lots of new intention actions and quick-fixes
      • New formatting options and auto-formatting on Enter
      • Optimize imports on-the-fly editor option
      • Reworked Documentation pop-up (now with example functions)
      • Handling imports on Paste and custom templates for Scratch Files
      • Auto-import now works only when the result has no errors
    • Performance
      • The option to not index the entire GOPATH (suitable when using a dep manager)
      • Faster Rename and Find Usages for global symbols
    • Other
      • Better Test Runner (respects tests hierarchy and improves tests output)
  • Git
    • Partial Git commits
    • Abort Rebase, Continue Rebase, and Skip Commit actions in the Branches pop-up
  • JavaScript & TypeScript
    • Full support for TypeScript 2.7
    • Surround with type guard quick-fix
    • Rename provides an option to safely rename the file as well
    • Reformat with Prettier
    • Extract a Vue component refactoring
  • Deployment
    • Docker Compose workflow improvements
    • Smart coding assistance for editing Kubernetes resource files (both JSON and YAML)

To learn about these and other changes in more detail, take a look at the What’s New page.

To download the update, use either the download page or the Toolbox App.

As always we appreciate your feedback. Please share it here in the comments or if you prefer directly in the issue tracker.

Spread the word, and Happy developing!

Comments below can no longer be edited.

17 Responses to Go the Distance: GoLand 2018.1 is Here!

  1. Serg says:

    March 29, 2018

    Thank you!
    Do you have plans to highlight `internal` packages with different color within Golang packages tree?
    Those are special in terms of import resolution.

    • Alexander Zolotov says:

      March 30, 2018

      We wasn’t going to do this. You can do this by yourself, though:

      1. creating a scope at File | Settings | Appearance & Behavior | Scopes with `internal||file:internal//*` or just `internal` pattern
      2. choose a color for highlighting the scope: File | Settings | Appearance & Behavior | File Colors | Local colors

      • Serg says:

        March 31, 2018

        Yeah, you are right, Alexander!
        Thanks for the explanation, will test this.

  2. ForkPosix says:

    March 29, 2018

    I tried to update and no “Update and Restart”, only Download button. I am afraid this is a bit too disrespectful for people who paid for your product.

    • Alexander Zolotov says:

      March 30, 2018

      Patches for 2017.3.3 is available now.

  3. runlevl4 says:

    March 31, 2018

    2018.1 is telling me it’s already expired.

    • Florin says:

      April 7, 2018

      Are you using an older EAP that you have not updated yet? What happens if you install the IDE from a download?

  4. Basab says:

    March 31, 2018

    I am getting the following error. This was not happening on the EAP version before the final release of 2018.1

    • Basab says:

      March 31, 2018

      GOROOT=/usr/local/Cellar/go/1.10/libexec #gosetup
      GOPATH=/Users/basab/gocode #gosetup
      /usr/local/Cellar/go/1.10/libexec/bin/go test -c -o /private/var/folders/ps/j05_6d4d3q1clb312ymlh_kh0000gn/T/___TestSuggestions_in_suggestions_suite_test_go -gcflags “all=-N -l” code.uber.internal/rds/contact_service.git/gateways/suggestions #gosetup
      /usr/local/Cellar/go/1.10/libexec/bin/go tool test2json -t /Applications/GoLand.app/Contents/plugins/go/lib/dlv/mac/dlv –listen=localhost:65228 –headless=true –api-version=2 –backend=default exec /private/var/folders/ps/j05_6d4d3q1clb312ymlh_kh0000gn/T/___TestSuggestions_in_suggestions_suite_test_go — -test.v -test.run ^TestSuggestions$ #gosetup
      could not launch process: EOF

      Debugger finished with exit code 1

  5. Pavel Varyukhichev says:

    April 4, 2018

    It seems that debug of Go programs is broken. Any time I try it I get “could not launch process: EOF”. Previous version works correctly.

  6. Sergio says:

    April 9, 2018

    Since this update, the ide is getting slower on syntax highlighting, live error checking, etc.

    • Florin Patan says:

      April 13, 2018

      Hi,

      I’m sorry to hear this.
      Can you please give us more details on how to reproduce it?
      It would be perfect if you can open an issue on the tracker https://youtrack.jetbrains.com/issues/Go and provide more information. You can find information here https://intellij-support.jetbrains.com/hc/en-us/articles/207241235-Reporting-performance-problems on how to profile such issues, but you can open the issue with as many details as possible and we’ll guide you from there. Attaching the IDE logs, that can be found via Help | Compress and Show Logs in…, would also help with understanding/replicating the issue.
      Thank you and sorry for the delay in answering.

  7. James says:

    April 12, 2018

    I’d love if the ‘TODO:’ highlighting in comments continued if the comments were contiguous, please make that a boolean setting.

    That is-
    //TODO: nice yellow italics
    //. Not italicized

    /*TODO: nice yellow italics
    also not italicized */

    Would love the second (and further) lines similarly italicized, if possible.

Subscribe

Subscribe for updates