Récemment, une nouvelle version de
MPS 2018.2 a été publiée avec de nombreux
changements attendus depuis longtemps . En bref, dans cette version, vous trouverez des améliorations dans la migration, des plans de nouvelle génération, un plugin GitHub et plus encore. Les détails sont ci-dessous.
Notifications de migrationNous avons mis en place des notifications de migration afin de mieux vous informer de ce qui se passe: vous recevrez désormais une notification si le projet dépend d'une langue qui pour une raison quelconque ne peut pas être téléchargée, ou si la migration est retardée.
Un nouvel aspect de VCSNous avons ajouté un nouvel aspect du langage VCS. Maintenant, au lieu de créer des annotations à la déclaration de concept, un aspect du langage est créé. Un aspect est généré pour un code d'exécution particulier. L'aspect VCS remplace l'annotation MergeHints; la migration est fournie.
Avant:

Maintenant:
Plugin GithubImplémentation du plugin GitHub. Vous pouvez maintenant vous connecter à GitHub comme suit: VCS → Checkout from Version Control → Git → Connectez-vous à GitHub ...
Tests de générateurEn plus de la famille existante de tests pour les nœuds et l'éditeur, nous avons implémenté une nouvelle méthode pour tester les générateurs. Le défi consiste à confirmer que le générateur ou l'ensemble de générateurs font vraiment leur travail. L'IDE prend en charge les modes d'exécution à l'intérieur et à l'extérieur du processus, ainsi que l'exécution à partir des scripts de génération MPS Ant.
Branches dans les plans de générationLe plan de génération a un nouvel opérateur: fourche avec. Il branche la séquence de transformations en un point donné. Le modèle est transféré vers le plan spécifié dans l'état dans lequel il se trouvait à l'étape de branchement, puis la conversion est effectuée comme d'habitude. Dans l'exemple ci-dessus, le modèle d'entrée est d'abord transformé par le générateur crossmodel.entity et l'état est enregistré, puis en utilisant le générateur crossmodel.property # prop2class, le résultat est le modèle n ° 1. Le générateur crossmodel.property # prop2xml convertit ensuite le modèle enregistré en modèle de sortie n ° 2. Veuillez noter que le mot «alors» ici ne signifie pas un engagement - il n'y a aucune garantie que les branches seront traitées dans un ordre particulier, sauf que la branche «principale» du plan d'origine produira le «premier et unique» modèle de sortie, accessible via ancienne API (GenerationStatus # getOutputModel) pour la compatibilité / migration.
Branches dans les tests de générationLes tests de générateur prennent en charge les plans de génération avec l'opérateur de fourche et comparent tous les modèles de sortie avec ceux fournis par la source.

Ces fonctionnalités et d'autres de MPS 2018.2 sont décrites plus en détail sur
la page Quoi de neuf , vous pouvez télécharger la nouvelle version
ici .
Nous essayons d'améliorer le MPS tous les jours et vos commentaires nous aident beaucoup. Nous attendons toujours vos commentaires ici ou dans le
tracker .
Votre équipe JetBrains MPS
La volonté de se développer