GoLand 2022.2 为泛型和 go.work
带来了新功能。 我们还增加了对模糊测试的支持。
SQL 语句现在可被自动检测,您将获得针对它们的全面代码辅助。
GoLand 现已支持 WebSocket 连接,并且可以通过 HTTP 和 WebSocket 协议发送 GraphQL 查询。
如果您更喜欢互动式学习方式,可在欢迎屏幕上完成 What's New in GoLand 2022.2(GoLand 2022.2 最新变化)教程。
any
的意图操作GoLand 的新增检查可以将空接口的用法报告为类型或类型约束。
另一个意图操作是将 interface{}
替换为 any
。 从意图操作的弹出窗口中,您可以替换文件中的所有空接口。
具有空形参列表的类型形参现在报告为错误。 我们添加了将其删除的快速修复。
我们添加了一项可以报告未使用的类型形参的新检查。 它们将被灰显,将鼠标悬停到它们上面时,您会看到警告。
如果您尝试将接口与方法在联合中一起使用,IDE 现在会报告错误。
如果您尝试将类型形参用作约束,GoLand 将显示错误。
在方法创建期间添加接收器时,GoLand 会自动插入类型形参的标识符。
我们为泛型引入了新的 Find Usages(查找用法)组:类型形参声明。
现在,您可以从 GoLand 运行模糊测试。 如果您点击模糊测试旁装订区域中的绿色三角形图标,将看到运行测试的不同选项。 如果测试失败,失败的种子语料库条目将被写入文件并置于 testdata
文件夹的软件包目录中。
此文件的路径也将作为可点击链接出现在控制台中。 如果您点击此链接,文件将在 IDE 中打开,文件顶部将显示绿色三角形图标。 点击此图标将运行 go test
并显示失败的种子语料库条目。
From GoLand you can also run fuzz tests just like normal unit tests.
在 GoLand 中,如果配置了不支持模糊测试的 Go SDK,装订区域中将不再显示运行按钮。 我们添加了一个快速修复,它可以在当前 Go SDK 不支持模糊测试时更改 Go SDK。
use
指令进行分组的快速修复我们添加了一个快速修复,它可以将 go.work
文件中的多条 use
指令组合到一条指令中。
fmt.Appendf
的支持 我们添加了对 fmt.Appendf
的支持,GoLand 现在可以识别字符串中的格式设置动词。 因此,Appendf
函数可以利用格式设置函数具有的所有功能,例如 Add a format string argument(添加格式字符串实参)意图操作。
unix
构建约束的支持GoLand 现已支持新的 unix
构建标记,后者可以识别任何 Unix 或类 Unix 系统。
loong64
加入 Arch 列表 Go 1.19 引入了新架构 loong64
。 我们已将其添加到 Settings | Go | Build Tags & Vendoring(设置 | Go | 构建标记和 Vendoring)下的 Arch 列表中。
我们改进了 Quick Documentation(快速文档):
chan
关键字上时、通道进行发送和接收操作时以及对通道类型的所有引用上。 iota
的 Quick Documentation(快速文档)现在包含有关使用方式的额外信息。 如果常量是 iota
组的一部分,则值现在会显示在补全框中,即使常量是隐式定义的。 GoLand 不再扫描 ~/go/pkg/mod
中的 cache
子目录,因为后者不包含 IDE 正常运行所需的信息。 这个文件夹可能相当大,将其从扫描中排除应该可以提高性能。
go:linkname
指令的支持 我们添加了对 go:linkname
编译器指令的支持:
//go:linkname localname [importpath.name]
它会指示编译器使用 importpath.name
作为在源代码中声明为 localname
的变量或函数的对象文件符号名称。
iota
非常规用法检查GoLand 中新增了一项检查,如果 iota
的用法不合常规,检查会发出警告。
我们还为 iota
和其他内置常量启用了 Reserved word used as name(保留词用作名称)检查。 尝试对名为 iota
、true
或 false
的常量分配值时,将触发检查。
Go 文档建议给定类型上的所有方法都应该有值或指针接收器。
GoLand 中新增了一项检查,如果类型在值和指针接收器上都有方法,检查会发出警告。
SQL 语句现在可被自动检测 ,语言将被注入到与特定模式匹配的每个字符串字面量。 将语言注入字符串字面量时,如果编辑该字面量,您将获得全面的代码辅助。
您可以在 Settings | Editor | Language Injections(设置 | 编辑器 | 语言注入)中查找、编辑模式以及添加您自己的模式。
GoLand 现在支持 Run Anything(运行任何内容)操作,您可以使用它快速启动运行/调试配置、应用程序、脚本、命令和任务,以及打开最近的项目。 只需按两次 Ctrl 并在搜索栏中输入所需内容即可。
GoLand 现在支持 WebSocket 连接。 您可以创建请求以及发送和接收消息。
GoLand 现在可以原生通过 HTTP 和 WebSocket 协议发送 GraphQL 查询。 对于 http://
和 https://
,使用的是简单的 HTTP 请求,ws://
和 wss://
则被委托给 WebSocket 执行器。
现在,在装订区域的播放图标上可以通过新方式选择运行环境。 要启用此功能,请从 Run with(运行方式)组合框中选择 Select Environment Before Run(运行前选择环境)选项。
我们更新了 GoLand 欢迎屏幕的 Remote Development(远程开发)版块。 在这里,您可以为后端编排选择首选方法。 此外,端口转发功能现在可用于终端上运行的进程。
您可以在这篇博文中详细了解远程开发的新功能。
JetBrains Space 是一个完整的软件开发平台,在整个开发环境为 JetBrains IDE 提供项目管理、问题跟踪、Git 托管、代码审查、持续集成、软件包仓库和远程后端编排。
Space 集成现与 GoLand 捆绑。 With this first-class integration, you can browse Space projects and clone repositories, then start working on them directly. 当更改就绪后,您可以在 IDE 中创建合并请求并执行代码审查。
您现在可以直接在 GoLand 中管理用于远程开发的 Space 开发环境
当 IDE 关联到 Space 组织时,所有现有开发环境都会同步。 您可以为仓库和分支创建新的开发环境,并立即开始编码。 您可以将开发环境休眠以减少资源消耗,或者在工作完成后直接将其删除。
我们为 macOS 用户引入了一项功能,利用此功能可以将所有打开的项目窗口合并成一个,将其变成标签页。 转到 Window | Merge All Project Windows(窗口 | 合并所有项目窗口)即可启用。
我们引入了一个键盘快捷键,它可以更改编辑器中所有位置的字体大小。 要增大字体,请按 Alt+Shift+.。要减小字体,请按 Alt+Shift+,
在编辑器中放大或缩小代码时,您现在可以看到显示当前字体大小的指示器以及将其恢复为默认值的选项。
我们已将 Description(描述)字段集成到 Add Mnemonic Bookmark(添加助记书签)对话框中,因此,您可以为书签添加可选描述。 要添加助记书签,请右键点击要添加书签的行旁边的装订区域,然后从上下文菜单中选择相应选项。 或者使用快捷键 Ctrl+F11。
Cloning repository(正在克隆仓库)进度条现在直接显示在 Projects(项目)列表中。
现在,您可以从代码补全弹出窗口的垂直省略号菜单按钮访问 Code Completion Settings(代码补全设置)。
我们添加了一个选项,可用于切换 IDE 在代码补全期间是否自动插入圆括号。
您可以使用 Settings | Editor | Inspections(设置 | 编辑器 | 检查)中的新 Highlighting in editor(编辑器中的高亮显示)下拉菜单调整检查的高亮显示样式。
这为您提供了更多用于自定义检查的选项。 例如,您可以将特定检查的严重性级别设为 Warning(警告),但将高亮显示样式更改为 Error(错误)。
现在,您可以使用新的 Copy Docker Image(复制 Docker 镜像)操作将镜像从一个 Docker 守护进程复制到另一个,该操作会将镜像保存到文件中,然后将其推送到所选连接。
现在,重新启动 IDE 后,GoLand 会自动连接到 Docker。 这一新设置在 Settings | Advanced Settings | Docker(设置 | 高级设置 | Docker)中默认启用。
GoLand 现在与 Colima 和 Rancher 集成,支持更多用于建立与 Docker 守护进程的连接的选项。
您现在可以选择多个 CSV 文件并一次全部导入。
使用数据库时,您现在拥有两种文件解析模式:Playground(演练场)和 Script(脚本)。
Playground(演练场)适用于有一组未连接查询的情况,而 Script(脚本)适用于具有顺序逻辑的查询。
GoLand 现在可以帮助您从系统受信任存储区导入受信任的 SSL 证书。 它将自动使用特定于企业环境的自定义证书。 您无需执行任何其他操作。 一切都开箱即用。
JSON 和 YAML 文件现在会在以 http://
和 https://
开头的值中自动插入 Web 引用。 您可以在 Web 浏览器中打开这些链接并在 HTTP 客户端中生成请求。