Child pages
  • Migration20
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

After Instaling 2.0 , the user should execute following steps to migrate all models to new format:
Warning!!! It is not possible to revert migrated models back to old format!


  • to make virtual packages (folders) visible again:
    Tools -> Scripts -> By Language -> jetbrains.mps.lang.core -> Restore Virtual Packages


  • convert attributes to the new format (usually in generators, quotations and patterns):
  1. Tools -> Scripts -> By Language -> jetbrains.mps.lang.core -> Convert Attributes
  2. Re-generate languages, then solutions
  3. If you have your own attribute descriptions (AnnotationLinkDeclaration instances) it will require manual migration for each attribute:
    1. Ensure attribute concept described in AnnotationLinkDeclaration (target) is subconcept of one of NodeAttribute, LinkAttribute or PropertyAttribute depending on the attribute stereotype
    2. Define role concept property in attribute concept as attribute role in AnnotationLinkDeclaration
    3. If sourceCardinality was * define multiple concept property in attribute concept
    4. Define attributed concept link from source in AnnotationLinkDeclaration
    5. Perform actions from steps 1 and 2 for migrated attributes
    6. For simple attributes (when they are direct subconcepts of BaseConcept) migration script is available



add missing imports everywhere


scripts->plugin language->split tabbed editors

regenerate plugins


To migrate to the new trace information generation:

Scripts->By Language->jetbrains.mps.lang.plugin->Upgrade Trace Info Generation


To migrate to new stub refs

tools-> upgrade stubs-> update language accessories
save & restart
tools-> upgrade stubs-> re-resolve stub refs
save & restart
optimize imports
find all broken refs and fix them manually by adding necessary module deps

//--here we have correct refs. Restarts are not really necessary, but it's better to perform

regenerate all generators using quotations and node/xxx/ operation
regenerate all modules


  • No labels