GoLand 2024.2

Released: Aug 7, 2024

2024.2 での更新項目

機能

Add method to interface and all its implementations refactoring

  • This release introduces the 'Add method to interface and all its implementations' refactoring. This quick-fix allows you to add a new method to an interface and all its implementations in one action.

Performance improvements

  • Improved project scanning performance - Optimized the scanning of the GO MOD CACHE directory, resulting in faster project opening times.
  • More features outside of smart mode - The Run action can now be triggered from the Run configurations menu when smart mode is not enabled, and gutter icons for executing code are available as well. This means you can now run tests and programs before indexing is complete.

Go language and ecosystem

  • URL-related features for Gin, Gorilla, and chi - The full set of URL-related features - including Show all endpoints of module, Generate requests, and Go to - is now available for the most popular web frameworks.
  • Reverse type inference support - GoLand now fully supports reverse type inference, and reverse type inference has been added to the Type Info action.
  • Show inferred types - GoLand now makes it easier to read complicated code samples. It displays instantiated types in the quick documentation pop-up for call expressions.
  • Replace 'if' with 'switch' - Added the new Replace 'if' with 'switch' intention action, which helps make your code significantly easier to read, change, and maintain.
  • Fixes for generic false positives - This release improves support for generics by reducing problem detection false positives.

Improvements for dev containers

  • The new implementation of dev containers offers a smoother user experience that feels almost like local development. Furthermore, containers and volumes now persist even if the container's startup process is interrupted.
  • The creation and management of dev containers have been moved to the Services tool window. All of these changes make working with containers much more transparent and natural.

Remote development

  • This release focuses on fixing various issues and bugs that could negatively impact working with remote environments. Many usability issues have also been fixed for working with WSL.

Terraform support improvements

  • Full line code completion for Terraform - Full line code completion is now available for Terraform development. Powered by local large language models (LLMs), this functionality predicts entire lines of code, boosting your productivity.
  • Documentation tooltips - Documentation tooltips now appear when you hover over elements in your Terraform code.
  • Code insight for Terraform - The in-editor language support for Terraform now provides code insight features such as context-aware code completion, refined syntax highlighting, and enhanced error detection with quick-fix suggestions. Additionally, autocompletion and syntax highlighting for Terraform now work even before indexing is complete, allowing you to start coding more quickly.

UI/UX improvements

  • Setting transfer from VS Code - You can now migrate your settings from VS Code to GoLand. When you launch the IDE for the first time, you'll see the Import Settings dialog with a list of settings from other IDEs found on your machine. After making your selections and clicking Import Settings, your settings from VS Code will be successfully migrated.
  • Easier access to debugging in Docker - GoLand now includes the Delve debugger compiled against the musl library for Alpine images, ensuring compatibility with Docker run targets. This fixes the No such file or directory error that was caused by missing Alpine image libraries.
  • New UI enabled by default - The new UI is clean and modern, providing bigger, easier-to-use controls, a consistent color palette, light and legible icons, increased contrast, and better accents. It is now enabled as the default option for all GoLand users. The classic UI is available as a plugin on JetBrains Marketplace. Starting with this release, you will see a popup with a link to the plugin, or you can get it in Settings | Plugins.
  • Preview option for Search Everywhere - The Search Everywhere dialog now includes an option to preview the codebase elements you're searching for. Enabling this feature through the Preview icon on the dialog's toolbar will cause a preview pane to appear under the search results, offering additional context and making it easier to navigate through your project.
  • Improved Customize Main Toolbar dialog - Redesigned the layout and behavior of the UI elements in the Customize Main Toolbar dialog, making it more intuitive and organized. It's now easier to search for, add, and delete actions in the main toolbar.
  • Improved commit graph in the Log tab - To give you a clearer view of your project's history, the commit graph in the Log tab of the Git tool window has been revamped, refining the color coding and layout of branch lines. Important branch lines now remain on the left-hand side of the graph and retain their designated colors, making them easier to identify and follow.
  • New Local History dialog - The UI of the Local History dialog has been modernized. Additionally, when accessed for a directory, the dialog now features a diff view next to the list of changes, making them easier to understand.
  • Updated window controls on Linux - On Linux, GoLand used to place window controls on the right-hand side of the IDE, whereas in this release, the placement of the controls is automatically adjusted to match the window control settings specified in your Linux desktop configuration. This small but important change allows you to maintain a layout that suits your personal preferences.

Other improvements

  • GOPROXY for China - This release simplifies setup for users in mainland China. GOPROXY preselection has been automated for this region, reducing the steps required for configuration. If you use custom proxies, you can disable this automatic switching in Settings | Advanced Settings.
  • Bundled localization packages for Chinese, Korean, and Japanese - Go developers around the world would naturally benefit from using the IDE in their native language. To improve the IDE experience for native speakers of Chinese, Korean, and Japanese, support for these languages is now bundled.
  • Bundled Kubernetes plugin - Starting with this release, the Kubernetes plugin is now bundled. All you need to do now is open GoLand and start managing your clusters directly within the IDE.