Jump to: navigation, search

Difference between revisions of "EMF Compare/Release Review/1.3.1"

(Bugzilla)
(Legal Notices)
(8 intermediate revisions by 2 users not shown)
Line 19: Line 19:
  
 
==== Ordering ====
 
==== Ordering ====
Major imrpovement of the ordering handling throughout EMF Compare : merging differences on ordering, merging addition and removals that change the ordering, detecting and merging ordering differences on attribute values...
+
Major improvement of the ordering handling throughout EMF Compare : merging differences on ordering, merging addition and removals that change the ordering, detecting and merging ordering differences on attribute values...
  
 
==== Merging ====
 
==== Merging ====
Line 33: Line 33:
 
Adding a specific comparison engine for SYSML models.
 
Adding a specific comparison engine for SYSML models.
  
=== Quality of APIs ===
+
== Quality of APIs ==
 
The component lead certifies that the requirements for Eclipse Quality APIs have been met for this release.
 
The component lead certifies that the requirements for Eclipse Quality APIs have been met for this release.
 
All non-API code is in "internal" packages.
 
All non-API code is in "internal" packages.
  
=== End of Life Issues ===
+
== End of Life Issues ==
 
EMF Compare 2.0 is in the work and is what will be released with Kepler next year. There might be more releases in the 1.x stream, but they will only be meant for maintenance. Version 2.0 is a major overhaul of EMF Compare which aims at fixing the architectural and technical limitations induced by the 1.x implementation.
 
EMF Compare 2.0 is in the work and is what will be released with Kepler next year. There might be more releases in the 1.x stream, but they will only be meant for maintenance. Version 2.0 is a major overhaul of EMF Compare which aims at fixing the architectural and technical limitations induced by the 1.x implementation.
  
Line 52: Line 52:
 
The about files and use licenses are in place as per the Guidelines to Legal Documentation.
 
The about files and use licenses are in place as per the Guidelines to Legal Documentation.
  
CQ 5460 - Google Collections Version: 1.0 https://dev.eclipse.org/ipzilla/show_bug.cgi?id=5460
+
* CQ 5460 - Google Collections Version: 1.0 https://dev.eclipse.org/ipzilla/show_bug.cgi?id=5460
CQ 6518 - Guava Version: 10.0.1 https://dev.eclipse.org/ipzilla/show_bug.cgi?id=6518
+
* CQ 6518 - Guava Version: 10.0.1 https://dev.eclipse.org/ipzilla/show_bug.cgi?id=6518
  
 
All other contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy. The other contributions of the IP log are not significant or are written 100% by employees of the same employer (Obeo) as the Submitting Committer (http://www.eclipse.org/legal/EclipseLegalProcessPoster.pdf).
 
All other contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy. The other contributions of the IP log are not significant or are written 100% by employees of the same employer (Obeo) as the Submitting Committer (http://www.eclipse.org/legal/EclipseLegalProcessPoster.pdf).
Line 86: Line 86:
 
Javadoc represents more than 50% of the Java source code.
 
Javadoc represents more than 50% of the Java source code.
  
An Ohloh page is available at http://www.ohloh.net/p/acceleo-eclipse/analyses/latest
+
An Ohloh page is available at http://www.ohloh.net/p/emf_compare/analyses/latest
  
 
== APIs ==
 
== APIs ==
Line 132: Line 132:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 15
 
! style="background: #CECEF2;" | 15
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 16
 
|-
 
|-
 
| critical
 
| critical
Line 139: Line 139:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 17
 
! style="background: #CECEF2;" | 17
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 19
 
|-
 
|-
 
| major
 
| major
Line 146: Line 146:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 46
 
! style="background: #CECEF2;" | 46
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 60
 
|-
 
|-
 
| normal
 
| normal
Line 153: Line 153:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 203
 
! style="background: #CECEF2;" | 203
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 243
 
|-
 
|-
 
| minor
 
| minor
Line 160: Line 160:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 9
 
! style="background: #CECEF2;" | 9
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 13
 
|-
 
|-
 
| enhancement
 
| enhancement
Line 167: Line 167:
 
| 0
 
| 0
 
! style="background: #CECEF2;" | 44
 
! style="background: #CECEF2;" | 44
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 61
 
|-
 
|-
 
! style="background: #CEF2CE;" | TOTAL
 
! style="background: #CEF2CE;" | TOTAL
Line 174: Line 174:
 
! style="background: #CEF2CE;" | 0
 
! style="background: #CEF2CE;" | 0
 
! style="background: #CEF2CE;" | 334
 
! style="background: #CEF2CE;" | 334
! style="background: #CEF2CE;" | 0
+
! style="background: #CEF2CE;" | 412
 
|}
 
|}
  
 
Note : these figures are subject to change as the whole team is in the process of fixing bugs until the final release (this snapshot has been taken on Mai 30, 2012)‏
 
Note : these figures are subject to change as the whole team is in the process of fixing bugs until the final release (this snapshot has been taken on Mai 30, 2012)‏
 +
 +
== Tool usability ==
 +
Localization : integrated into Babel
 +
 +
== Standards ==
 +
No standard exists concerning the model comparison, though EMF Compare works nicely with any standard based metamodel.
 +
 +
Since the 1.2 release a specific support for the UML standard is included in EMF Compare.
 +
 +
The 1.3 release adds a  specific support for the SYSML standard included in EMF Compare.
 +
 +
== UI Usability ==
 +
EMF Compare is conforming to the user interface guidelines.
 +
 +
== Communities ==
 +
Talks have been given on the following events:
 +
Eclipse Con Europe 2011 :
 +
* What every Eclipse Developer should know about EMF
 +
* What the heck are logical models?
 +
* EMFCompare improvements: fulfilling requirements of the Modeling Platform Working Group
 +
 +
 +
Other medium:
 +
* Activity on the EMF newsgroup (eclipse.modeling.emf): 29 new threads on EMF Compare from June 2011 to May 2012
 +
* About one update every two months on Planet Eclipse.
 +
 +
== Committer Changes ==
 +
* Mikaël Barbero from Obeo is now a commiter on EMF Compare
 +
* Cédric Notot from Obeo is now a commiter on EMF Compare
 +
 +
* Jonathan Musset from Obeo is no longer a commiter
 +
* Moritz Eysholdt from Itemis is not longer a commiter
 +
 +
== Schedule ==
 +
EMF Compare 1.3 Release Plan
 +
RC1 05/22/2012
 +
RC2 05/29/2012
 +
RC3 06/05/2012
 +
Final  06/12/2012
 +
1.3    06/27/2012
 +
 +
== Project Plan ==
 +
The EMF Compare 1.3 project plan is available at http://www.eclipse.org/modeling/emf/compare/project-info/plan-juno.xml
 +
 +
== Legal Notices ==
 +
Java and all Java-based trademarks are trademarks of Oracle, Inc. in the United States, other countries, or both.
 +
 +
UML, SYSML, OMG, EMOF, OCL and XMI are trademarks of the Object Management Group.
 +
 +
Other company, product, or service names may be trademarks or service marks of others.
 +
 +
[[Category:EMF Compare]]

Revision as of 02:57, 18 October 2012

Juno Release Review - EMF Compare 1.3

Laurent Goubet (laurent.goubet@obeo.fr)

Release Review : May 30, 2012

Communication Channel : eclipse.modeling.emf newsgroup

Process Documentation : http://www.eclipse.org/projects/dev_process/development_process.php

Project Plan : http://www.eclipse.org/modeling/emf/compare/project-info/plan-juno.xml

1.3 Release Highlights

New and noteworthy

Performances

Slight improvement of the matching phase cost, improving the overall time of comparison. A number of memory leaks were tracked and hunted down for this release.

Ordering

Major improvement of the ordering handling throughout EMF Compare : merging differences on ordering, merging addition and removals that change the ordering, detecting and merging ordering differences on attribute values...

Merging

Huge improvements on the merging process of EMF Compare, adding thousands of unit tests and fixing the failing corner cases.

Filtering and Grouping

Adding the possibility to filter and group diffs together in the comparison UI, along with the corresponding extension points.

Diagram Comparison

Adding graphical comparison (match, diff and merge) capabilities as well as comparison editors for integration with GMF and EcoreTools.

SYSML Comparison

Adding a specific comparison engine for SYSML models.

Quality of APIs

The component lead certifies that the requirements for Eclipse Quality APIs have been met for this release. All non-API code is in "internal" packages.

End of Life Issues

EMF Compare 2.0 is in the work and is what will be released with Kepler next year. There might be more releases in the 1.x stream, but they will only be meant for maintenance. Version 2.0 is a major overhaul of EMF Compare which aims at fixing the architectural and technical limitations induced by the 1.x implementation.

As such, all APIs provided by 1.3 are to be considered obsolete and none will be maintained in its current state with 2.0, be it core or peripheral. The new APIs provided with 2.0 are developed in order to be simpler and more intuitive. We will provide all possible help in order to bridge the gap between the two streams' APIs and help users migrate to the new and improved Compare.

All functionalities and extensions provided by EMF Compare 1.3 will also be featured by EMF Compare 2.0. The re-architecturation only aims at fixing limitations without removing functionality.

As mentionned in the EMF Compare 1.2 release review, the EPatch (all plugins with namespace org.eclipse.emf.compare.epatch.*) have been removed from the code base. Adopters can use the MPatch plugins instead.

Committer Diversity

4 Committers from Obeo, and 1 inactive committer from Itemis.

IP Issues

The about files and use licenses are in place as per the Guidelines to Legal Documentation.

All other contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy. The other contributions of the IP log are not significant or are written 100% by employees of the same employer (Obeo) as the Submitting Committer (http://www.eclipse.org/legal/EclipseLegalProcessPoster.pdf).

All contribution Questionnaires have been completed.

The "provider" field of each plugin is set to "Eclipse Modeling Project".

The "copyright" field of each plugin is set to the copyright owner.

Any third-party logos or trademarks included in the distribution (icons, logos, etc) have been licensed under the EPL.

The EMF Compare IP log is located at http://www.eclipse.org/projects/ip_log.php?projectid=modeling.emf.compare

Non-Code Aspects

Unit tests

5107 unit tests launched on every build

Code coverage is about:

  • 75 % of the core
  • 63 % of the differencing plugin
  • 60 % of the matching plugin

Code quality

Checkstyle activated on each distinct plug-in.

Eclemma used on a regular basis to improve test coverage.

Yourkit used on a regular basis to improve performances.

Javadoc represents more than 50% of the Java source code.

An Ohloh page is available at http://www.ohloh.net/p/emf_compare/analyses/latest

APIs

Metamodel definitions and interfaces are considered APIs.

Commitment to provide stand-alone diff and match features (Jars that can be used without Eclipse with minimal to no dependencies towards eclipse Jars).

Non-API classes are separated from the exposed API through an "internal" namespace.

Non-API packages are exported with an internal visibility so that they remain visible but with a discouraged access warning.

API Tooling is activated on all plugins to mark exceptions within the exposed API.

Documentation

EMF Compare documentation and tutorials are available from both the Eclipse wiki http://wiki.eclipse.org/EMF_Compare and the integrated Eclipse help (Menu Help > Help Contents).

User tutorials

  • Setting up and using the EMF Compare framework
  • Comparing and merging XML files

Developer tutorials

  • Architecture overview
  • Adding new actions to the export menu
  • Adapting the comparison process
  • Using the compare services

Examples

Bugzilla

NEW RESOLVED VERIFIED CLOSED TOTAL
blocker 1 0 0 15 16
critical 1 1 0 17 19
major 8 6 0 46 60
normal 30 10 0 203 243
minor 4 0 0 9 13
enhancement 13 4 0 44 61
TOTAL 57 21 0 334 412

Note : these figures are subject to change as the whole team is in the process of fixing bugs until the final release (this snapshot has been taken on Mai 30, 2012)‏

Tool usability

Localization : integrated into Babel

Standards

No standard exists concerning the model comparison, though EMF Compare works nicely with any standard based metamodel.

Since the 1.2 release a specific support for the UML standard is included in EMF Compare.

The 1.3 release adds a specific support for the SYSML standard included in EMF Compare.

UI Usability

EMF Compare is conforming to the user interface guidelines.

Communities

Talks have been given on the following events: Eclipse Con Europe 2011 :

  • What every Eclipse Developer should know about EMF
  • What the heck are logical models?
  • EMFCompare improvements: fulfilling requirements of the Modeling Platform Working Group


Other medium:

  • Activity on the EMF newsgroup (eclipse.modeling.emf): 29 new threads on EMF Compare from June 2011 to May 2012
  • About one update every two months on Planet Eclipse.

Committer Changes

  • Mikaël Barbero from Obeo is now a commiter on EMF Compare
  • Cédric Notot from Obeo is now a commiter on EMF Compare
  • Jonathan Musset from Obeo is no longer a commiter
  • Moritz Eysholdt from Itemis is not longer a commiter

Schedule

EMF Compare 1.3 Release Plan

RC1	05/22/2012
RC2	05/29/2012
RC3	06/05/2012
Final  06/12/2012
1.3    06/27/2012

Project Plan

The EMF Compare 1.3 project plan is available at http://www.eclipse.org/modeling/emf/compare/project-info/plan-juno.xml

Legal Notices

Java and all Java-based trademarks are trademarks of Oracle, Inc. in the United States, other countries, or both.

UML, SYSML, OMG, EMOF, OCL and XMI are trademarks of the Object Management Group.

Other company, product, or service names may be trademarks or service marks of others.