Early Access Program Features

GoLand 2019.1 EAP 6 is out with built-in CPU profiler, Export intention action, and support for new databases

GoLand 2019.1 EAP 6 is here!

Get this new EAP build via our Toolbox App, from the website, as a snap package (for Linux), or right in GoLand – just select Automatically check updates for Early Access Program in Preferences / Settings | Appearance & Behavior | System Settings | Updates.

Download GoLand 2019.1 EAP 6

CPU Profiling

Let’s start with a brand new feature that we are excited to release to all our users: the addition of profiler support for Go applications. This allows you to run the CPU profiler on your Go applications and then use the results without ever leaving the IDE.

One way to use this feature is to write benchmarks for your code and then the IDE will let you profile them as you would any other Test or Application.

Built-in CPU profiler in action

You can also run your profiler code manually and then use the Import Profiler Results feature via Shift + Shift or Run menu to import the results and display them locally.

Import Profiler Results

The default profiler view relies on the Flame Graph method for displaying the output, but you can also see the Call Tree or the Methods List to determine what parts of the code take a little longer than they should.

Exporing results in Call Tree and Methods List tabs in built-in CPU profiler

To learn more about Flame Graphs, you can visit this page.

We’ll describe this feature in greater detail in a future post, so stay tuned for updates on our blog.

Export intention action

Have you ever written a function or method in a package and then wanted to use it from a different one, only to realize that you need to exit out to go back and export it, before you can continue, totally breaking the flow you were in?

If this has ever happened to you then you know how frustrating it is. Starting from this version this action will be simplified thanks to you now being able to invoke the Export action from wherever you are editing, thus removing the need to switch back and forth between packages. This should really help you to focus on your code.

In addition, GoLand now resolves references to unexported symbols but it will still notify you that it’s an error.

Export intention action

Run Go configurations with sudo

Run/Debug Configurations can now be run with sudo. It allows you to debug applications which require privileged operations as a user.

Run with sudo option in Run/Debug Configurations menu

Support for Greenplum, Vertica, and Apache Hive databases

Greenplum is an analytics database based on PostgreSQL. It is currently developed by Pivotal and the open source community. For now, we have only SQL support for Greenplum; native database introspection will come later.

Vertica is column-oriented storage designed to handle large volumes of data.

Apache Hive is a data warehouse built on top of Apache Hadoop for providing data query and analysis.

New databases are available via menu

That’s it for today. As we advance with our EAP program towards the release of 2019.1 version we invite you to download it, give it a try, and let us know your thoughts and feedback in the comments section below, or on our social media channels, like Twitter, or on our issue tracker.

image description