GoLand Turns 5 and Releases v2022.3!
Today is a huge milestone for us. Not only are we releasing v2022.3, our third and biggest update of the year, but it’s also GoLand’s 5th anniversary! All this wouldn’t have been possible without the most meaningful part of our job – you!
We have a surprise gift for you and invite you to have fun today and celebrate it with us! Type “Happy B-day, GoLand!” in GoLand 2022.3 or GoLand 2022.2.5 and see what happens! Don’t be shy to share your score on social media and don’t forget to use #WonderGoLand to compete with others :-)
We’ve also collected stories from our customers, some of whom have been with us from the very beginning, which we lovingly call “the time of Gogland” – the beta name of GoLand. We’re going to publish these in the next few weeks, so stay tuned!
And now, let’s GO to the details of what’s new in this major update.
GoLand 2022.3 offers a variety of performance enhancements, as well as new features for generics and Go workspaces. We’ve integrated Go Playground and added support for improvements to Go doc comments. There are new features for the HTTP Client and Docker, and the new UI is now available.
All of the new functionality available in DataGrip and WebStorm, our IDEs for working with databases and web development, respectively, is also available in GoLand. Check out the DataGrip 2022.3 What’s New and WebStorm 2022.3 What’s New web pages for more information.
To learn more about the new features in GoLand 2022.3, 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, we invite you to complete the What’s New in GoLand 2022.3 tutorial from the IDE’s Welcome screen.
Here’s a brief overview of the new features.
- We’ve changed our API and managed to reduce the number of
go listlaunches. This change will significantly improve performance for big projects with many modules.
- When you open a project, the information reported by
go listis saved on the disk in cache memory. When you open that project again, the data about the project’s structure is loaded from memory and considered when indexing starts. This will speed up indexing.
- GoLand has received a number of other performance improvements designed to decrease the time it takes to launch applications and open projects in JetBrains IDEs.
- You can now generate tests for functions with generic parameters.
- An inspection that detects lowercase type parameters is now available, as well as a quick-fix to make them uppercase.
- The new Go Workspace File action allows you to create a
go.workfile. Existing Go modules will automatically be added to
- You can now generate
go.modif you have
Go doc comments
Text link and doc links are rendered as links in the Quick Documentation popup and the Documentation tool window. New headings and lists are rendered as HTML headings and lists.
Integrated Go Playground
We’ve integrated the Go Playground functionality into GoLand. You can select a piece of code and open it in a scratch file with a toolbar that contains the same options you have when using Go Playground.
If your type contains itself, you will get an Invalid recursive type error. To avoid this, you should include a pointer to a type, not a type itself. A quick-fix is now available to make this change for you.
- We’ve started implementing the Code Vision feature. This feature displays the code authors if version control integration is enabled. Also, usages are displayed near all functions and types.
- GoLand now shows inlay hints for constant definition blocks.
- The IDE now ignores auto-generated protocol buffer fields that start with
XXX_when you invoke the Fill all fields intention action.
Other Go-related features
- GoLand now automatically picks up system variables related to Go modules and displays them in the Environment variables dialog window.
- The IDE now always shows package names in the Quick documentation popup for top-level declarations.
- We’ve disabled the Receiver names are different inspection for files with generated code.
- The HTTP Client now supports executing script blocks before requests. You can generate some data before executing a request and put it in the final request using variables.
- You can also compute the md5 or sha1 hash value for HTTP requests, and the IDE now features a new set of random variables.
- You can use the Put query parameters on separate lines intention action to break the query into smaller fragments on different lines.
- GoLand now supports connections to Docker running in WSL.
- You can use the Pull Docker image intention action to pull an image without running it from
- We’ve introduced full support for
.dockerignorefiles, including code highlighting and completion.
- GoLand now supports the heredoc format in
- You can now use Docker Contexts to set up additional Docker connections.
Remote development (Beta)
- Your IDE backend can now launch directly in WSL 2, and you can connect to it the same way you would connect to any remote machine when using remote development in GoLand.
- The new UI can now be enabled in the settings.
- The preview functionality for intention actions is switched on by default.
- We’ve implemented the option to drag tool windows out of the main window and dock them to floating editor tabs.
- Tips of the Day now has headings. We’ve also fine-tuned the algorithm that determines which tips appear, so you’ll see the ones that are most relevant to your experience.
- It is again possible to bookmark files from editor tabs. You can also add all of the files in all currently open tabs to Bookmarks.
- We’ve introduced a reworked solution to synchronize your custom user settings.
- A preliminary iteration of the long-awaited support for Redis has been implemented.
- Now, when using quick search, you also have the ability to filter objects. All non-matching objects will be hidden.
Check out the DataGrip What’s New page to see all of the new features for working with databases that are available in this release.
Check out the WebStorm What’s New page to see all of the new features for web development that are available in this release.
Subscribe to Blog updates
GoLand 2023.2 Is Available!
GoLand 2023.2 offers improved integration with Go modules, refactorings for migrating function parameters to method receivers and vice versa, and support for errors.Is and errors.As. In this version, you’ll find the new AI Assistant plugin (limited access), GitLab integration, and the Kafka plugi…
GoLand 2023.2 Release Candidate Is Available!
The Release Candidate provides all of the new features and improvements already announced during our current EAP cycle.
GoLand 2023.1 Is Out!
GoLand 2023.1 introduces the vulnerability checker and better navigation across gRPC code. Interface implementations are now shown in the editor with Code Vision.