MPS 2018.2의 새로운 기능

생성기 테스트

기존 노드 패밀리와 에디터 테스트에 더하여 생성기를 테스트할 수 있는 새로운 방법이 추가되었습니다. 이는 생성기 또는 생성기 집합이 작업을 확실히 수행하도록 만들기 위해서입니다. 프로세스 내부 및 외부 실행 모드가 모두 IDE에서 지원될 뿐만 아니라 MPS Ant 빌드 스크립트에서의 실행도 가능합니다.

생성 계획 중 포크

생성 계획에 새로운 구문이 추가되었습니다. another generation 계획을 사용해 지정된 지점에서 변환 시퀀스를 분기할 수 있습니다. 참조된 계획은 분기 단계의 모델을 받고 일반 변환으로서 진행됩니다. 예시에서는 먼저 crossmodel.entity 생성기를 사용해 입력 모델을 변환하고 상태를 기록한 후 crossmodel.property#prop2class 생성기로 계속 진행하여 결국 출력 모델 #1을 얻습니다. 그런 다음, crossmodel.property#prop2xml 생성기는 기록된 모델을 변환하여 출력 모델 #2를 얻습니다. 단, 여기에서 'then'은 contract가 아니니 유의하세요. 브랜치들이 특정 순서로 처리된다는 보장은 없습니다. 단, 초기 계획의 'primary' 브랜치는 호환성/마이그레이션 목적을 위해 이전 API(GenerationStatus#getOutputModel)를 통해 제공되는 '처음이자 유일한' 출력 모델을 제공합니다.

생성 테스트 중 분기

생성기 테스트는 포크 문을 사용한 생성 계획을 지원하고, 제공된 참조 항목과 모든 출력 모델을 일치시킵니다.

새로운 VCS 관점

새로운 VCS 언어 관점이 도입되었습니다. 콘셉트 선언에 대한 주석을 작성하는 대신, 이제 이에 대한 언어 관점을 생성할 수 있습니다. 이 관점은 특정 런타임 코드에 대해 생성됩니다. VCS 관점은 MergeHints 주석을 대체하고, 마이그레이션이 포함됩니다.

GitHub 플러그인

이제 GitHub 플러그인이 구현되었습니다. VCS -> Checkout from Version Control(버전 관리에서 체크아웃) -> Git -> Log in to GitHub...(GitHub 로그인)에서 로그인할 수 있습니다.

마이그레이션 알림

진행 상황에 대해 더 자세히 알 수 있도록 마이그레이션 알림이 구현되었습니다. 이제 어떤 이유에서든 프로젝트가 로드할 수 없는 언어에 의존하고 있거나 마이그레이션이 연기될 경우 사용자는 알림을 받게 됩니다.