一个月前 GoLand 发布了 2019.3 的 Roadmap,据当时的介绍,此版本将会修复
bug、解决小故障、修复可用性以及性能方面的问题。不过目前看来,GoLand
2019.3 似乎还增加了不少新特性。

GoLand 2019.2.2 bug-fix
版本已发布,此版本主要修复了一些性能和可用性、重构功能和代码格式化相关的问题。具体如下:

IntelliJ IDEA 上周才公布下一个主要版本 2019.3 的
Roadmap,近日就发布了 IntelliJ IDEA 2019.3
的首个早期访问版本(即
EAP 版本),版本号为 2019.3 EAP build 193.2956.37。

澳门新葡萄京官网注册 1

性能和 UI:

  • GO-8031 — GoLand
    会更快地显示方法的 ‘implemented’
    icon,因为它在分析过程中处理的元素更少。
  • GO-8034 —
    当点击实现界面的类型的 gutter 图标并且有很多方法时,UI 不再冻结。
  • GO-7952 — 当我们将现有变量用作字段值时,填充字段(Fill
    Fields)更有用。

澳门新葡萄京官网注册 2

支持使用 Mozilla rr 进行远程调试

在 2019.3 版本中,我们可以使用 Mozilla rr
远程调试应用程序。大致步骤如下:

  1. 在远程机器上获取 rr 跟踪
  2. 在远程机器上启动调试器,如下所示:
    dlv --headless --api-version 2 -l localhost:2345 replay /path/to/trace/dir /path/to/binary
  3. 从 IDE 连接到此机器

重构

  • GO-8065, GO-8068 — Extract
    Interface 会遵循现有的声明,如果未在新创建的界面中使用,也不会废弃未导出的接收器类型。
  • GO-7982 — Change
    Signature 会在测试中处理包前缀。

EAP
版本的下载地址为:。如果是尝鲜的话,不妨下载来体验一下,生产环境建议别轻易尝试。

性能

此版本修复了一些问题,使得 GoLand 的运行速度更快,CPU 消耗更少。

代码格式化

代码格式功能获得了许多修复和改进:

  • GO-7431 — Reformat
    Code 与 go fmt 的工作方式更相似。

GoLand 现在会正确地对齐字段声明、参数列表、块语句、case 子句、const
块和多行复合字面量后面的注释等。另外,GoLand
会在多值返回中的结构初始值设定项中放置适当的缩进、在 switch-case
语句中划分特定的块、在注释后的 var/const
值、多行表达式内的注释以及具有多行条件语句的 if 之后等等。

有关代码格式化功能的错误修复完整列表,请点此参阅。

继续看看新版本带来了哪些有趣的改进。

重构

“Change Signature”功能会在“Parameters”和“Result
parameters”选项卡中显示参数类型。我们还可以通过勾选新的“Reuse
types”选择框以折叠“Signature Preview”中的结果类型。

澳门新葡萄京官网注册 3

此外,还增加了一个新的意图动作 —— Reuse signature
types(复用签名类型),它可将参数定义合并到一个声明中(Alt + Enter)。

最后,提取变量(Extract
Variable)和重命名(Rename)功能在名字方面会提供更好的建议。例如输入err会建议使用用于表达式类型的
error,输入ctx则会建议使用context.Context

澳门新葡萄京官网注册 4

调试器

调试器也修复了一些错误:

  • GO-7770 — 函数调用可在
    Evaluate Expression 窗口和 log breakpoint 属性中工作。
  • GO-7060 —
    调试器会在代码编辑器中显示变量的正确位置。

新增平滑滚动(可选项)

团队表示下一个大版本的更新重点是提升性能,也将会解决各种可用性问题。为此他们推出了平滑滚动(Smooth scrolling)功能,让用户在使用鼠标滚轮查看内容时拥有更流畅的滚动体验。关于平滑滚动,最令人印象深刻的莫过于在微软在 Edge 浏览器上提供的平滑滚动体验,不知道
IDEA 实现的效果如何,欢迎有志之士发回使用反馈 : )

澳门新葡萄京官网注册 5

上图是官方提供的运行效果截图,可以看到,启用“Smooth
scrolling”选项后,相比于启用前,后者的滚动效果更佳顺滑和自然。不过录制的
GIF
不能很好体现出“平滑滚动”的效果,可访问此链接进行观看。

其他改进

  • 在该版本中,我们可以在 Hierarchy
    工具窗口分析被调用者方法的调用树。在此前的版本中,只支持分析调用者方法的调用树。现在新增了两个专用按钮,可方便地在调用者和被调用者之间切换。此外,还可以通过点击菜单中的特殊按钮对调用树中的元素进行排序。

澳门新葡萄京官网注册 6

  • 检查 Bool 条件代码(声明冗余检查的一部分)不会再警告使用 const
    booleans。
  • Go Module 包的名称在 Project View 中以更清晰、更简单的方式呈现。

澳门新葡萄京官网注册 7

对了,参与使用 EAP 并进行积极反馈还有机会获得 GoLand
的一年免费订阅和品牌T恤。

>>>EAP
版本下载地址:https://www.jetbrains.com/go/nextversion

澳门新葡萄京官网注册 8

(文/开源中国)    

常规功能

  • GO-7708 — 从 IDE
    安装 Go SDK 会按预期运行,并没有任何异常

此次更新的错误修复完整列表请查看这里。

(文/开源中国)    

意图动作(Intention action)不会从建议列表中消失

这是对现有功能的继续打磨,此次更新引入了一项更有用的改进 ——
即使我们选择了某个意图动作然后取消对话框,IDE
也会在对话框中显示意图操作。

在此前的版本中,除非我们以某种方式修改文件,否则 IDE
不会二次显示同一个意图动作。

更方便查看字段的调用树

在解决各种大小小小的故障和不一致问题的同时,此版本还新增了查看字段调用树(Field
Call Hierarchy)
的功能。


IntelliJ IDEA
中,我们可以查看所选方法的调用者和被调用者的调用树(Ctrl+Alt+H),或查看所选类的父类和子类的调用树(Ctrl+H)。但当要查看一个字段的调用树时,这将变得十分不方便。为了理解所选字段的调用树,在此前的版本中,必须分析此字段的使用情况,并在该方法中导航至调用单个方法的调用树,这种做法十分不直观。因此,在即将发布的
2019.3 中,直接使用 Ctrl+Alt+H 快捷键即可查看字段的调用树。

澳门新葡萄京官网注册 9

全局搜索(**Find in path**)显示搜索结果的文件扩展名

IntelliJ IDEA 2019.3 将继续完善“全局搜索(Find in path)”对话框功能。在此前的版本中,当我们在全局搜索中使用文件掩码(file
mask)进行搜索时,搜索结果的文件扩展名会被隐藏。如果搜索结果中存在多个具有相同名称但文件扩展名不同的文件,则可能会造成混淆。

新版本修复了此问题,因此 IDE 会始终显示搜索结果的文件扩展名。

改进对 Maven 的支持


2019.3 版本中,IntelliJ IDEA 将能够自动配置打开、导入或创建 Maven
项目的设置,无需通过模态对话框(Modal Dialog)来手动配置设置。

此外,新版本还提升了 IDE 在编辑 POM.xml
文件时的性能,IDE
现在也已支持即时显示包含补全建议的对话框。

提升导入 Gradle 项目的性能

新版本还优化了导入 Gradle
项目的性能,以减少峰值内存消耗,这些改进对于大型项目来说意义重大。

更好地显示 GitHub PR 信息的时间轴

前段时间 IDEA 引入了对 GitHub PR
的初始支持,通过此功能我们可以查看项目所有 PR
的列表,并浏览它们的变化以及当前的状态。虽然此功能十分实用,但依然存在一些已知的限制,例如无法查看审查者提交的注释。

IntelliJ IDEA 2019.3
已将这个缺失的功能补充进来。具体来说就是,它将会在选定的 PR
中显示一个时间轴,其中包含有关 PR 的所有相关信息,例如注释、审查者和对
PR 所做的更新 —— 基本上包含需要决定是否合并此 PR
的所有信息。

澳门新葡萄京官网注册 10

只需对 PR 进行双击,IDE
将在编辑器选项卡中显示注释。

重新修改过的 Clone **对话框**

此版本改进了 Clone 对话框 (VCS | Get
from Version control)。现在我们可以从对话框进行登录,或者如果已经处于登录状态,IDE
将立即预览按帐户或组织分组的所有 repo 的列表。

澳门新葡萄京官网注册 11

强制从忽略列表向 VCS 添加文件

在此前的版本中,如果文件位于忽略列表,则无法将文件添加到 VCS。IntelliJ
IDEA 2019.3 对该限制进行了处理,现在即使文件位于 .gitignore(或
.hgignore)列表中,我们也可以将文件强制添加到 Git(或 Mercurial)。

JetBrains 运行时

默认情况下,IntelliJ IDEA 2019.3 将在
JetBrains Runtime 11(未经认证的 OpenJDK 11
分支)下运行。当然,JetBrains Runtime 8 也会继续提供(未经认证的 OpenJDK 8 分支)。

JBR
11(默认)已更新至 v11.0.4+12-b462.3:

  • JetBrains Runtime 基于 OpenJDK
    11.0.4:JBR-1702
  • 修复在 Windows
    平台上的欢迎界面:JBR-1777
  • 检测到与 OS
    的键盘布局冲突:JBR-1668
  • 修复编辑器中不正确的字体(斜体):JBR-1778

JBR
8(可选)已更新至 v1.8.0_222-release-1621-b1:

  • JetBrains Runtime 基于 OpenJDK
    8u222:JBR-1753
  • 修复出现在 macOS 10.15 Beta (19A501i)
    上的崩溃问题:JBR-1639

最后,EAP
版本每周都会发布更新,关于本次更新的详细内容请点此查看+Release+Notes?_ga=2.209413014.544196972.1568629629-15570066.1525823939)。

 

 

 

 

 

(文/开源中国)