EMF Forms and EMF Client Platform 1.17.0 released!

June 28, 2018 | 4 min Read

We are happy to announce that with the Photon release train, we have also shipped EMF Forms and EMF Client Platform 1.17.0!

We want to thank our continuously active team of 10 contributors (40 contributors overall) for completing on 57 bug fixes and features. EMF Forms continues to be one of the most active projects at Eclipse.

We are thankful for all the feedback from our very active group of adopters, for which we have an additional improvement to announce:

During the 1.17.0 release cycle, we were talking with contributors and adopters about how to ease the adoption of new versions. While new features in EMF Forms are typically developed as optional additions, there are obviously always some fixes and changes that affect the existing default behavior. As EMF Forms is by definition a user visible framework, even small changes in a new version can sometimes have an unexpected effect in adopter projects. As an example ordering elements alphabetically in a list dialog by default can be considered to be a bug fix for a certain adopter project. For another adopter, this change could cause a regression, as the existing “undefined” order was good for them.

As another example, showing descriptive tooltips on table column headers might sound like an improvement. However, this change is bad if you never refined the underlying attribute descriptions. This “improvement” makes the string visible, which is not really comprehensible by end-users (see screenshot below for an example). Again, an “improvement” can cause unwanted behavior.

While we always try to avoid changes to the default behavior and make new things optional, sometimes changes to core components make sense and are an improvement for most adopters. In any case, the developer team cannot possibly foresee all consequences of a change in all adopters projects. However, due to the high development activity of EMF Forms, it is quite some effort for adopters to browse all fixed bug reports of a release to find relevant changes. Therefore, we decided to improve the communication about those kind of changes. To achieve this, we introduced the usage of a new keyword on our Bug Reports: “Test”. The tag is to be used:

  • when the default behavior of a component has changed, even if they are considered an improvement
  • when a new feature has been added which is enabled by default
  • Any changes and adaptations of visible UI elements, even if they are considered an improvement
  • Non-trivial refactorings with a risk for regressions

Of course all of the above mentioned criteria are subject to interpretation, more details can be found in our contributions guideline. In general, the “Test” keyword highlights bug reports, which should definitely be looked at and tested in detail by all adopters, when they update to a new version.

We hope this helps all adopters, we are of course happy for any feedback on this. Finally, please note that we introduced the keyword during our last development cycle, so 1.17.0 is not fully triaged yet. Therefore, please consider to tag a bug report with the “Test” keyword yourself, if the change has an unexpected effect in your project so that other adopters can benefit from your findings.

Further, kindly continue to ask questions in the newsgroup and file Bug Reports.

In case you don’t know EMF Forms: It is a framework focused on the creation of form-based UIs. EMF Client Platform is designed to support the development of applications based on an EMF data model. If you are not yet familiar with EMF Forms, please refer to this tutorial for an introduction.

Both of these frameworks are part of the Eclipse Modeling Tools Photon package, but you can also find the new release on our download pages:

As always, we will also blog about new features of the EMF Forms / ECP 1.17.0 release in the upcoming weeks! Please follow this blog or follow us on twitter to get notified about the new posts.

Jonas, Maximilian & Philip

Jonas Helming, Maximilian Koegel and Philip Langer co-lead EclipseSource. They work as consultants and software engineers for building web-based and desktop-based tools. …