openworm / org.geppetto

Geppetto is an open-source platform to build web-based applications to visualize and simulate neuroscience data and models.
http://geppetto.org
Other
209 stars 50 forks source link

Improve schema compatibility across different versions #537

Closed pgleeson closed 7 years ago

pgleeson commented 7 years ago

Some of my saved (OSB) projects from May 2016 can't be open any more. Some of these may have had problems at the time, but it would be good to have a system in place to test whether any updates render old Geppetto projects unusable...

pgleeson commented 7 years ago

selection_124

http://osbprod.s3.amazonaws.com/projects/50/HHCellNetwork_MODELa8a42801bdeca0c50489a920fb3f10b4.xmi

tarelli commented 7 years ago

@pgleeson I don't think we have broken compatibility yet, but if you are trying to load a project that was created with the Model project on the master branch the XMI will point to the schema in master. If there is a mismatch between that and the branch of org.geppetto.model which you (and OSB) are using at the moment (development) then EMF will consider the file incompatible. It should be resolved as we switch again to master after the release.

tarelli commented 7 years ago

@pgleeson unfortunately the viceversa will also be true, projects created while in development will not be compatible once we switch to master 👎 EMF has a strict policy here but maybe there is something we can do to loosen it a bit, this will require some investigation...

tarelli commented 7 years ago

Look into this http://wiki.eclipse.org/EMF/Recipes#XMI.2FXML_Serialization_Recipes

tarelli commented 7 years ago

Made the schema compatible with both master and development.