Introducing GoLand 2022.1
The first major release of this year is out.
GoLand 2022.1 offers support for generics and Go workspaces, new features for working with microservices – the ability to see all endpoints in a dedicated tool window and generate HTTP requests right from your Go files.
All of the new functionality available in DataGrip and WebStorm is also available in GoLand. Check out DataGrip 2022.1 What’s New and WebStorm 2022.1 What’s New.
To learn more about the new features in GoLand 2022.1, head over to our What’s New page, where you’ll find a full overview of the release along with GIFs and screenshots.
If you prefer an interactive approach to learning, you can complete the What’s New in GoLand 2022.1 tutorial from the Welcome screen.
Here’s a brief overview of the new features.
Generics
- We have fixed 200+ generics-related issues.
- As soon as you type an opening bracket, GoLand inserts a closing bracket for you.
- GoLand shows type parameters in the completion suggestions and inserts the brackets when you accept one of the suggestions.
- If a type passed as an argument doesn’t have all of the methods from the interface it is constrained by, GoLand suggests a quick-fix to implement missing methods.
Basic support for Go workspaces
You can open any directory with a go.work file and continue developing as usual.
Microservices
Note: new features for building microservices currently work only with the standard library.
There is a globe icon next to each endpoint in your Go files. When you click on the icon, GoLand will allow you to:
- Find all of the usages of an endpoint and navigate to them.
- Generate a request in a bundled HTTP client that offers code completion for endpoints.
- Access the new Endpoints tool window where you can see all the endpoints for your project.
We also have some other updates for working with microservices:
- Code completion works for HTTP methods and headers in Go files.
- Links and endpoints are underlined. Links are clickable and can be opened in a browser.
- gRPC reflection is supported.
String formatting for testify/assert
GoLand reports errors if you use the wrong formatting verbs in testify/assert functions.
Hidden tab labels in the Debug window
We’ve hidden the tab labels by default. To make them visible again use the Show Tab Labels option in the Layout Settings.
Remote development
- Remote development features a Backend Control Center widget, which shows CPU load, memory, disk capacity, and other parameters.
- New security settings let you use SSH key forwarding to authenticate access to git-repositories from your remote machine.
- You can specify the download path and exact locations for the IDE backend on your remote machine.
Kubernetes
- Resources loaded from a cluster can be modified from the Editor tab.
- You can manually configure a path to kubectl.
- We’ve added port-forwarding functionality for pods.
- A new Describe Resource action is present for all resources in the Services view.
- Cluster events are displayed in a separate node.
- We’ve introduced limited editor support for werf.yaml and related Helm template files.
Docker
- We’ve significantly reworked the Docker UI in the Services tool window.
- We’ve added support for Docker Compose targets.
- GoLand offers support for Docker Registry HTTP API V2.
Markdown
- The Copy code icon will help you easily copy contents to the clipboard.
- You can run commands directly from the Markdown file using the Run icon in the gutter.
- We’ve reworked the floating toolbar that appears on text selection.
User experience
- We’ve replaced the Event Log instanсe with a new Notifications tool window.
- The Structural Search and Replace dialog has been redesigned.
- You can now distribute the working space in your editor evenly among various tabs.
- It is now possible to export UML diagrams as yEd .graphml, JGraph .drawio, Graphviz .dot, Graphviz .dot with Positions, Mermaid .md, Plantuml, and IDEA .uml files.
Version control
- The Commit details pane now includes detailed GPG signature information.
- The IDE highlights the differences in lines right in the editor when you hover over an annotation when using Annotate with Git Blame.
Databases
- You can now select multiple tables and copy them to another schema.
- You can now edit the results in MongoDB collections.
Web development
- We’ve improved support for Vue 3.
- Support for Next.js’s pages has been fixed.
- Webpack coding assistance now works with ES modules in your webpack.config.js files.
- GoLand automatically recognizes Yarn and npm installed using Volta.
Accessibility improvements
The screen reader now reads the names and descriptions of the branches’ trees in the Log tab and provides a voice prompt to use Cmd+L to navigate through other Log filters.
Additionally, a number of updates for VoiceOver support were introduced to improve accessibility support for macOS users.
Please tell us what you think about our new features! Leave your comments here, report any issues you encounter to our bug tracker, ping us on Twitter, or drop us a message in the Gophers Slack #goland channel.