Cédric Brun bio photo

Cédric Brun

Build open-source technologies to enable mission critical tools for complex domains.

Email Twitter LinkedIn Github Youtube
The teams have been working hard and pushed many changes. I've been [tweeting those as they went](https://twitter.com/bruncedric) but I figured that compiling a list into a blogpost could be useful. Here are some noteworthy, this is not an exhaustive list and please if you think I missed something, reach to me on [the mattermost instance](https://goo.gl/0f88gC) before M7. ### Modeling Amalgam Thales contributed in Amalgam the building blocks to create views similar to those used in Capella. ![Activity Explorer](https://wiki.eclipse.org/images/9/97/ActivityExplorer_overview01.png) ![Contextual Explorer](https://wiki.eclipse.org/images/f/ff/ContextualExplorer_image01.png) The features are now part of the Neon update site and can be consumed by other projects, starting by [EcoreTools](https://bugs.eclipse.org/bugs/show_bug.cgi?id=486117). You'll find some documentation on the wiki [here](https://wiki.eclipse.org/ModelingAmalgam/ContextualExplorer) and [there](https://wiki.eclipse.org/ModelingAmalgam/ContextualExplorer), Capella's source code is also a good starting point. ### Platform/SWT Many and important improvements in Linux/GTK3 support, notably [Issue in layout of editors ("leaking" rulers)](https://bugs.eclipse.org/bugs/show_bug.cgi?id=467499). SWT now auto-detects the scaling factor which might be needed on ``HiDPI`` screens but the linux support is not perfect and it looks like GTK is [giving a hard time to the commiters here again](https://bugs.eclipse.org/bugs/show_bug.cgi?id=489771), in the meantime if you get this result when starting Eclipse : ![](https://pbs.twimg.com/media/CeN8HqNW8AAMzLJ.jpg:large) then add ```-Dswt.enable.autoScale=false``` after ``-vmargs``in your eclipse.ini to disable this automatic scaling. ### Packaging The modeling package is now using the brand new **Solstice Theme** for the welcome page. It is now explicitely focused on the package domain and it looks slicker, see: [![](https://pbs.twimg.com/media/CeOi0iCXEAA6gGX.jpg:large)](https://pbs.twimg.com/media/CeOi0iCXEAA6gGX.jpg:large) We also moved away from the **"we fix every single version of the tools in the package"** to using root features. The outcome of this is that it is now possible for an end-user to upgrade parts of the package without having to wait for a full Eclipse release. Another effect of this change is that **you can not update a pre-M6 EPP package to M6**. You must download a fresh version. The potential downside is that the user could end-up with an installation which is mixing different streams or which is quite unexpected for us, packagers. See [bug 332989](https://bugs.eclipse.org/bugs/show_bug.cgi?id=332989) for more details. ### Sirius 4.0.0M6 * The Sirius runtime is no longer depending on the ***JDT***. * Closing a modeling project is now [**way** faster](https://eclip.se/442133). We went from ``20s`` to ``0.6s`` closing a project with **1 million of model elements**. The strategy to dispose a ```Resource``` instance is no longer relying on ```resource.unload()``` which was eating a lot of time and was completely useless **99%** of the time. Problem was **the last 1%** which relied on some events being sent to clear static caches (*I'm looking at you UML*). The Sirius team designed a strategy which should meet the requirements of **100%** of the resource implementations we know of, and as it is better to be safe than sorry a specific strategy can be contributed for the **other ``%``** we don't know of yet ;) * The [Acceleo Query Language](https://www.eclipse.dev/acceleo/documentation/aql.html) has had a good number of updates notably API-wise, leading to a **5.0.0** version for the corresponding packages. Make sure you ranges are now including this version. * SVG rendering has been improved and is now [correct whatever the zoom level](https://eclip.se/442268). - Before ![](https://cedric.brun.io/images/blog/2016/neuOv3C.png). - Now ![](https://cedric.brun.io/images/blog/2016/t7oOb9t.png) * if you install Sirius in the package to define your own modeling tool (only the runtime is pre-installed in the package), you'll see that it is now possible to constrain on which side of a shape a bordered node (port) might be. ![](https://cedric.brun.io/images/blog/2016/IWnyWXI.png) This improvement [had many supporters](https://eclip.se/440296), just look at the number of ``+1`` comments. Now it's your job to give it a try and tell us if that fits your use case! ### Ecore Diagram Editor * All the goodness from the Sirius 4.0.0M6 runtime (including SVG improvements) * EcoreTools can now display EReferences which are listed within the EClass.[![](https://cedric.brun.io/images/blog/2016/wrXWGNz.png)](https://cedric.brun.io/images/blog/2016/wrXWGNz.png) ### EMF Compare An integration with Sirius to bring graphical comparison is now available through the [EMF Compare update site](https://download.eclipse.org/modeling/emf/compare/updates/milestones/3.2/S201603200413).
Installing the diagram comparison support
This feature bring *experimental* support for graphical comparison of any Sirius based modeler, in particular EcoreTools which is in the package. Note that you **have to install the Egit support feature** to use to be able to compare versions through the git history.
Ecore diagram comparison
Family DSL diagram comparison
### Bugfixes and other improvements That's just the tip of the iceberg, [many other changes in technologies included in the package are published with M6](https://goo.gl/XLEvQz), thanks to everyone involved ! Now would be a good time for testing. [Download the package](https://www.eclipse.dev/downloads/index-developer.php), give it a try, report back either using [the modeling channel](https://goo.gl/0f88gC) or through [bugzilla](https://goo.gl/UF17uT). Stay tuned! ![](https://media.giphy.com/media/ONuQzM11fjvoY/giphy.gif)