GoLand 2018.3的新增功能

哈Ha! 上周发布了新版本的GoLand 2018.3。




在此更新中,您将发现许多调试和测试方面的改进。 这些是在Google App Engine平台,Testify框架,内存转储分析和Mozilla rr上调试的应用程序。


有一个新的变更签名重构,代码检查和功能自动完成功能。


此外,我们增加了对图表的支持,改进了重命名内联重构,可以使用Go模板( text / html )以及适用于Git,Docker和Kubernetes插件的版本控制系统,等等。


更改签名重构


更改签名重构可更改功能和方法的签名。 它有助于设置新名称或移动,重命名,添加或删除参数。


如果您更改方法签名,GoLand将提供更新实施。


在应用重构之前,请查看预览面板中发生的情况。


面板中将显示所有应用了重构的文件和对象的列表。 如果需要更多详细信息,可以从面板转到项目中的任何可变符号。 如果结果不符合预期,则可以撤消更改。




重命名和内联重构


现在, 重命名警告了由于重命名而可能发生的冲突。 我们添加了一个对话,以报告问题并提供选择:忽略冲突,考虑或取消重构。




现在,可以立即看到应用内联重构的结果:GoLand突出显示了已更改的代码。




调试Google App Engine应用程序


在新版本中,调试器允许您在Google App Engine平台上本地运行和调试应用程序。


我们还添加了一个新的项目模板-App Engine 。 它包含具有基本配置设置的app.yaml和具有请求处理程序的main.go文件。




内存转储分析支持


有时,标准的调试工具无法在程序执行的某些时刻提供完整的画面说明。 在这种情况下,内存转储将有所帮助。


要开始在GoLand中分析内存转储,请在“ 运行”菜单中选择“ 打开核心转储


要自动创建故障转储,请在“ 运行”配置的 环境”字段中输入GOTRACEBACK=crash


您只能在Linux上创建内存转储,但可以在macOS和Windows上对其进行分析。




证明支持


GoLand 2018.3支持Testify框架 直接从编辑器运行测试套件和方法,如正常的测试功能。


如果测试失败,请在“ 比较失败”窗口中比较实际值和期望值。




代码检查


出现了两个新的代码检查 未处理的错误无法访问的代码。


未处理的错误警告有关返回错误的函数和方法,但是没有检查处理该错误的方法。




无法访问的代码标识了永远不会执行的代码段。




此外, 函数调用检查现在可以使用Finish Call Expression来自动更正错误该检查可以将表达式转换为函数还是方法调用。




自动完成


GoLand 2018.3引入了一种新的功能自动完成功能。 想象一下,您是Golang世界的新手,您需要分界线。 您知道必须为此使用一个函数,并且很可能将其称为“ split ”。 该函数应将字符串作为第一个参数,但是您不知道该函数及其包的确切名称。 新型的自动补全功能可以轻松找到此类功能。


两次调用基本完成 (Ctrl +空格+空格)以查看所有可用的完成选项。




意向动作


添加格式字符串参数为给定的表达式生成格式说明符,将说明符插入格式字符串,然后将表达式作为说明符参数传递。




生成构造函数创建一个特殊的函数来初始化结构。




现在, Generate getter / setter可以让您编辑所生成函数的参数。




现在可以通过Generate菜单使用Generate ConstructorGenerate getter / setter以及Generate getter和setter


调试器


现在,“ 评估表达式”和“ 监视程序”面板之间的对话框具有自动完成功能,检查功能和自动纠错功能。




转到模板( html / template


Go模板( html / template )可用于代码完成和重命名重构,现在您可以从任何字符切换到它们的使用位置,并且格式得到了改进。




Mozilla rr


我们已将Mozilla的rr支持添加到Linux调试器中。 仅需两个按钮即可记录并播放程序。 要开始调试,您需要安装Mozilla rr


否则,除了Mozilla rr的特殊“ 倒带”按钮外,其他所有功能均与标准调试器中的功能相同。 它启动程序回到上一个断点。




图表


我们为可视化添加了图表支持:


  • Go模块项目中的依赖项;
  • JavaScript和TypeScript项目中导入和导出模块之间的关系;
  • 数据库中的表与SQL之间的关系。



搜索和导航


现在, “在路径中查找”和“ 在路径中 替换”对话框可用于多行代码段。




搜索框Search Everywhere更快,并且结合了Go to typeGo to fileGo to symbolFind actions 使用TAB在选项卡之间切换。




代码编辑器的改进


编辑器中的新图标不仅会告诉您已重新定义了哪些方法,还可以帮助您单击一下从一种这样的方法切换到另一种方法。




“完整的当前语句”会自动在复合文字(结构,字典等)中插入逗号,并将光标置于下一个语句的位置。




在GoLand 2018.3中,您可以定义一组文件,“ 重新格式化代码” ,“ 优化导入 ”和“ 重新排列”操作将不适用于这些文件




IDE支持Go,JavaScript,TypeScript,CSS和SCSS中的文件的多行TODO注释。




版本控制系统


与Git集成现在在新窗口-GitHub Pull Requests中显示存储库的更改检查请求,并且还支持Git子模块。




有空


我们添加了新的高对比度主题,并改进了对屏幕阅读器的支持。




码头工人


docker插件在运行配置中支持CLI参数。 可以在Dockerfiles启动配置的新Build字段中使用以下参数: cache-from, cpu-shares, cpuset-cpus, force-rm, label, memory, memory-swap, shm-size, no-cache, pull, quiet, cache-from, cpu-shares, cpuset-cpus, force-rm, label, rm.




Kubernetes插件


Helm模板中的代码完成, 重命名重构,代码检查和快速修复。




其他变化


  • 现在,“ 打开项目”菜单中的“ 附加”操作使您可以在打开新项目期间直接添加目录。
  • 现在,您可以将项目拖到欢迎窗口中以打开它。
  • 活动监视器显示各种子系统和插件消耗了多少处理器资源: 活动监视器。
  • 在IDE中查找和更新插件变得更加方便。 插件页面支持按标签搜索以及按下载,名称,评级,推荐或更新对结果进行排序。
  • 索引项目要快得多。

仅此而已! 与往常一样,我们很高兴听到您的意见:在评论, TwitterBug跟踪器中写信给我们:)


您可以在下载页面或通过Toolbox App下载更新。


以防万一,我提醒您,如果您已经在使用IntelliJ IDEA Ultimate,那么GoLand的所有功能都可以在这里使用:只需安装此插件


感谢您的关注!

Source: https://habr.com/ru/post/zh-CN431668/


All Articles