… I like the whooshing sound they make as they go by.” D. Adams
Here it comes, the first release of the emf compare component ! You can download it on the website and use it for your every-day work, if it doesn’t fit, report a bug, works keeps going in the maintenance branch and in the CVS head.
So, what will I get with this piece of software :
- Model comparison and merge: that’s good news as it’s the main objective of this project. You will be able to compare any EMF model, serialized in files or not, coming from XSD or a twisted metamodel.
- ID (xmi or Ecore) support : if your model provides ID, they will be used in the comparison process.
- SCM management : thanks to the Eclipse compare framework you will be able to compare versions of models in CVS or SVN repository.
- Sexy user interface : I know we said at EclipseCon we would not focus our work on the user interface, but thanks to Laurent’s work the result has outperformed our expectations.
- “EMF only” dependent core : the core, responsible for comparison and merge, only depend on EMF and as such is easily re-usable.
- Extensible framework : let’s say you have a shiny new idea about model comparison, or that on your specific kind of model you could setup a strategy to match 2 elements, then you can define your own engine and EMF Compare will use it.
- Export diff : you may save your diff in a file (emfdiff) and then re-open-it later without computation.
So what, let’s have a look now,
Where is the doc ?
The bundle only provides reference doc right now, in order to get up-to-date FAQ, tutorials or design overview stay tuned on the wiki.
What’s next ?
Next release (0.8.0) will provide 3 way comparison, diff extensions and many other nice stuffs. Concerning the algorithms we are trying to get better results with generic comparison algorithm through other methods coming from the research world. An initiative (website) about model transformation/weaving and comparison is taking place in Europe an you may expect that the EMF compare implementation will evolve toward these works.
We will also take part in the Ganymede simultaneus release to help in providing a coordinated modeling distribution.
I’ll give a talk at ESE about all these nice stuffs and the potential use of this component in other Eclipse tools, it will be a great place for exchanges, if your interested in, do not hesitate