Original post

starts today! We are aiming to pack this release with initial support for 1.15, polished and expanded Modules support, new code editing features, and much more. You can find a detailed description of what’s to come in the roadmap blog post for 2020.2.

blog

Get the first EAP build via the Toolbox App, download from our website, or use a snap package (for Ubuntu). Or, right in GoLand, select Automatically check updates for Early Access Program in Preferences / Settings | Appearance & Behavior | System Settings | Updates.

Download GoLand 2020.2 EAP #1

In case you’re not familiar, here’s a quick explanation of what the Early Access Program is:

EAP builds let you try out the latest features and enhancements in GoLand that are still works in progress. These builds are not fully tested and might be unstable, but this is where you can help us. By taking these builds and their for a test drive in your real-world projects and scenarios, you can help us polish them. This way, when the final release is ready, it will work smoothly for you.

  • The EAP lets you be first to try out all the newest features.
  • EAP builds are free to use for 30 days from the build date. You can use this period as an extended trial of GoLand.
  • We provide EAP builds until a stable release is almost ready. For the upcoming version 2020.2, the EAP period will last roughly to the end of mid-July.
  • In each release cycle, we reward the most active evaluators with a free 1-year GoLand subscription and an exclusive GoLand T-shirt.
  • Fresh builds come out almost every day. So if you don’t want to wait for the EAP build announcements, you can simply download one of our nightly builds, which are only available via the Toolbox App. Note that the quality of nightly builds is usually below our standards for official EAP builds, and they don’t come with release notes. Like EAP builds, they also expire within 30 days of being released.

Let’s take a look at what we’ve packed inside this first EAP build.

Inspections

The Malformed struct tag code inspection will check that struct tags conform to Go conventions and notify you about potential problems.

go-vet-struct-support

Save projects as templates

You can now reuse projects or files by saving them as custom project templates. From the main menu, select Tools | Save Project as Template. The IDE will recreate the project tree with files and folders, build configurations, libraries, and language level settings.

To create a project from a template, click New Project on the Welcome screen or select File | New Project from the main menu.

save-project-as-template

Comments

GoLand 2020.2 will show references from comments to related package-level declarations in the same package. You can also navigate to their declarations via Navigate to Declaration or Usage action (⌘B on macOS and Ctrl+B on Windows/Linux).

In addition, GoLand subtly highlights names of methods, functions, and structs in comments to help you easily distinguish them.

We currently show references to exported symbols only. Words are resolved to package-level declarations in the same package. Two words separated with a dot are treated either as a Type.Method defined in the same package, or as a package.SymbolName defined elsewhere. In all cases, we show references only when the name is unique, so as to reduce the number of false positives.

comments-support

New Inspections Widget

Please welcome the new Inspections Widget! Located in the upper right-hand corner of the code editor, it shows the number of warnings, errors, and typos in the current file. You can go through them using the arrow icons or the Next Error action (F2).

The widget lets you configure the highlighting level (select from none, errors only, or all problems), change the severity level of inspections, and toggle the Compact View.

inspections-widget

The Introduce Variable refactoring can now pack some variadic arguments into a new slice variable. Just press Ctrl+Alt+V on Windows and Linux, or ⌘⌥ V on macOS.

introduce-variable

To unpack a slice into variadic arguments, use the Inline Variable refactoring (⌥⌘N on macOS and Ctrl+Alt+N on Linux and Windows).

inline-variable

In addition, you can now handle issues with unpacked variadic arguments via the Unpack slice quick-fix.

unpack-slice

Navigation

Find Usages includes embedded structs and interfaces in its search results.

find-usages-update

Plugins

The Swagger plugin, which helps edit Swagger and Open API specification files, is now available in GoLand! Please note that you need a local JAR with swagger-codegen or a HTTP link to swagger-codegen on Maven Central.

That’s all for now! Your feedback is an invaluable source of ideas for improvement, so please send us your feature requests via the bug tracker or tweet us @GoLandIDE.Thank you!