MPS 2018.2 最新变化

生成器测试

除了现有的节点和编辑器测试系列之外,我们还实现了一种测试生成器的新方法。 目的是确保生成器或一套生成器完成其工作。 IDE 支持进程内和进程外执行模式,以及从 MPS Ant 生成脚本执行。

生成计划复刻

生成计划中有一个新语句:使用其他生成计划在给定点处将转换序列分叉。 引用的计划接收处于在复刻步骤时所处状态的模型,并作为常规转换继续进行。 在示例中,我们首先使用 crossmodel.entity 生成器转换输入模型并记录状态,然后继续使用 crossmodel.property#prop2class 生成器最终获得输出模型 #1。 随后,crossmodel.property#prop2xml 生成器转换记录的模型以获得输出模型 #2。 请注意,这里的“随后”是相对的 - 并未承诺以任何特定顺序处理分支,但“主要”分支(来自初始计划的分支)通过旧 API (GenerationStatus#getOutputModel) 提供“第一个也是唯一的”输出模型以实现兼容/迁移目的。

生成测试复刻

生成器测试支持带复刻语句的生成计划,并将所有输出模型与提供的参考模型相匹配。

新的 VCS 特征

我们引入了一个新的 VCS 语言特征。 现在,您不必编写概念声明的注释,而是为此创建语言特征。 生成此特征用于特定的运行时代码。 VCS 特征已经替代了 MergeHints 注释,并且包括了 迁移。

GitHub 插件

现已实现 GitHub 插件。 您可以从以下路径登录:VCS -> Checkout from Version Control -> Git -> Log in to GitHub…

迁移通知

我们实现了迁移通知,以便与您更好地沟通发生的事情:现在,无论是因为项目依赖于某种语言,而该语言出于某种原因无法加载,还是迁移将推迟,您都会收到通知。