GoLand 2022.2 has reached the Beta milestone! Through the subsequent couple of weeks, we will probably be fixing bugs and getting GoLand prepared for the most important launch on the finish of July. That is the final construct in our EAP cycle that doesn’t require a license.
You may get the construct through the Toolbox App, obtain it from our web site, use a snap bundle (for Ubuntu), or improve instantly from inside GoLand, choose Test IDE updates for Early Entry Program in Preferences / Settings | Look & Conduct | System Settings | Updates.
Generics
Intention motion to transform empty interfaces to ‘any’
GoLand now has an inspection that studies the utilization of an empty interface as a sort or kind constraint.
There may be additionally an intention motion that may assist you to shortly exchange interface{}
with any
. From the intention motion’s popup, you possibly can exchange all empty interfaces in a file.
Fast-fix to delete a sort parameter with an empty parameter listing
Sort parameters with empty parameter lists at the moment are reported as errors. We’ve added a quick-fix to delete them.
Inspection for unused kind parameters
We’ve added a brand new inspection that studies unused kind parameters. They’re grayed out, and you will note a warning once you hover over them.
Inspection for union of interfaces with strategies
The IDE now studies an error when you try to make use of interfaces with strategies in unions.
Inspection for utilization of a sort parameter as a constraint
Should you attempt to use a sort parameter as a constraint, GoLand will show an error.
Completion for kind parameters when typing a way’s receiver
GoLand robotically inserts a sort parameter’s identifier once you add a receiver whereas creating a way.
New Discover Usages group for kind parameters
We’ve launched a brand new Discover Usages group for generics: Sort parameter declaration.
Fuzz testing
Now you can run fuzz checks from GoLand. Should you click on on the inexperienced triangle icon within the gutter subsequent to your fuzz take a look at, you will note totally different choices for operating the take a look at. If the take a look at fails, the failing seed corpus entry will probably be written to a file and positioned in your bundle listing within the testdata folder.
The trail to this file may even seem within the console as a clickable hyperlink. Should you click on on the hyperlink, the file will probably be opened within the IDE, and you will note a inexperienced triangle icon on the prime of the file. Clicking on this icon will run go take a look at with the failing seed corpus entry.
Go Workspaces
Fast-fix for grouping a number of use directives
We’ve added a quick-fix that teams a number of use
directives in a go.work
file into one directive.
Go 1.19
Assist for the unix construct constraint
GoLand now helps the brand new unix
construct tag, which matches any Unix or Unix-like system.
Assist for fmt.Appendf
We’ve added help for fmt.Appendf
, and now GoLand identifies formatting verbs inside strings. Because of this, the Appendf
operate advantages from all the options that formatting capabilities have, just like the Add a format string argument intention motion.
Addition of loong64 to the Arch listing
Go 1.19 is introducing a brand new structure – loong64
. We’ve added it to our Arch listing in Preferences/Settings | Go | Construct Tags & Vendoring.
Fast Documentation
We’ve improved Fast Documentation:
- For every of the 25 Go key phrases, GoLand now shows a significant key phrase tooltip outlining the semantics of the related key phrase.
- We now show channel route info. This information is proven in tooltips in three locations: once you hover over the
chan
key phrase, on channel ship and obtain operations, and on all references to channel sorts. - Fast documentation for
iota
now incorporates extra details about easy methods to use it. If a relentless is a part of aniota
group, the worth is now proven within the completion field, even when the fixed is outlined implicitly. - Should you invoke Fast Documentation on a sort parameter, GoLand will present you a tooltip with a short clarification of how generics work and a hyperlink to a tutorial by the Go crew.
- There’s additionally a brand new tooltip explaining how kind switches work.
- The tooltip for kind assertions now incorporates extra details about them and affords examples.
- GoLand shows extra info once you initialize maps, arrays, slices, and structs when you hover over the realm contained in the curly braces.
- Should you hover over a clean identifier, GoLand reveals a tooltip with details about what the clean identifier is and the way it works.
Extra Go-related enhancements
Efficiency optimization
We determined to cease scanning the cache
subdirectory in ~/go/pkg/mod
because it doesn’t include info that’s wanted for GoLand to work appropriately. This folder could be pretty massive, and we hope that excluding it from the scan will enhance efficiency.
Assist for the go:linkname directive
The go:linkname
compiler directive is now supported, and the Lacking operate physique false-positive error has been mounted.
Irregular utilization of iota inspection
A brand new inspection will warn you if iota
is used irregularly.
We’ve additionally enabled the Reserved phrase used as title inspection for iota
and different built-in constants. The inspection will probably be triggered when you attempt to assign a worth to a relentless named iota
, true
, or false
.
Inspection for strategies on each worth and pointer receivers
The Go documentation recommends that every one strategies on a given kind ought to have both worth or pointer receivers.
There’s a new inspection in GoLand that may warn you in case your kind has strategies on each worth and pointer receivers.
Computerized SQL detection
SQL statements at the moment are robotically detected and the language is injected into each string literal that matches a sure sample. While you inject a language right into a string literal, you get complete code help when enhancing that literal.
You could find the patterns, edit them, and add your personal in Preferences / Settings | Editor | Language Injections.
Run Something
GoLand now helps a Run Something motion that lets you shortly launch run/debug configurations, functions, scripts, instructions, and duties, in addition to open current initiatives. To make use of it, simply press ^ (Ctrl) twice and begin typing within the search bar.
HTTP Shopper
Assist for WebSocket endpoints
GoLand now helps WebSocket connections. You possibly can create requests in addition to ship and obtain messages.
Assist for GraphQL endpoints
GoLand can now ship GraphQL queries over HTTP and WebSocket protocols out of the field. For http://
and https://
, easy HTTP requests are used, whereas ws://
and wss://
are delegated to the WebSocket executor.
Choose a run setting
There may be now a technique to choose a run setting utilizing an icon on the gutter. To allow this characteristic, select the Choose Setting Earlier than Run possibility from the Run with combobox.
Consumer interface
Merge All Undertaking Home windows motion on macOS
For macOS customers, we’ve launched the power to merge all open venture home windows by turning them into tabs inside a single window. To do that, go to Window | Merge All Undertaking Home windows.
Keyboard shortcut to vary the font dimension
We’ve launched a keyboard shortcut that adjustments the font dimension in every single place within the editor. To extend the font dimension, press ⌃⇧Interval (Alt+Shift+Dot). To lower it, press ⌃⇧Comma (Alt+Shift+Comma).
While you zoom into or out out of your code throughout the editor, now you can see an indicator that reveals the present font dimension and the choice to revert it again to the default.
New Description subject for mnemonic bookmarks
We’ve built-in a Description subject into the Add Mnemonic Bookmark dialog so that you could add an optionally available description to your bookmark. So as to add a mnemonic bookmark, right-click the gutter subsequent to the road you wish to bookmark and select the corresponding possibility from the context menu. Or you should utilize the shortcut ⌥ F3 (Ctrl+F11).
Cloning repository progress bar
The Cloning repository progress bar is now proven proper within the Initiatives listing.
Sooner entry to Сode Сompletion settings
Now you can entry Code Completion settings from the vertical ellipsis menu button within the code completion pop-up.
Editor
Management computerized parentheses insertion
We’ve added the choice to toggle whether or not the IDE robotically inserts parentheses throughout code completion.
Change the highlighting type for inspections
You possibly can regulate the highlighting type for an inspection utilizing the brand new Highlighting in editor dropdown menu in Preferences/Settings | Editor | Inspections.
This modification provides you extra choices for customizing inspections. For instance, you possibly can set the severity degree of a selected inspection to Warning however change the highlighting type to Error.
Docker
Docker auto-connection on IDE restart
GoLand now robotically connects to Docker after you restart the IDE. This new setting is enabled by default in Settings / Preferences | Superior Settings | Docker.
Integration with Colima and Rancher
GoLand is now built-in with Colima and Rancher to help extra choices for establishing connections to a Docker daemon.
Copy Docker Picture
Now you can simply copy photos from one Docker daemon to a different utilizing the brand new Copy Docker Picture motion, which saves the picture to a file after which pushes it to the chosen connection.
Databases
Choice to import a number of CSV information
Now you can choose a number of CSV information and import them .
Resolve modes for databases
When working with the databases, you now have two file resolve modes: Playground and Script. Playground is for when you could have a set of unconnected queries, and Script is for queries which have sequential logic.
Different notable enhancements
Import trusted SSL certificates
GoLand can now assist you to import trusted SSL certificates from system belief shops. It should robotically use the customized certificates particular to your enterprise setting. You don’t must carry out any extra actions.
Clickable URLs in JSON and YAML information
JSON and YAML information now characteristic robotically inserted net references inside values that begin with http://
and https://
. You possibly can open these hyperlinks in an online browser and generate requests within the HTTP shopper.